diff --git a/core/taiko_genesis/internal_l2a.json b/core/taiko_genesis/internal_l2a.json index f9371f795957..0d6a9d4a65a2 100644 --- a/core/taiko_genesis/internal_l2a.json +++ b/core/taiko_genesis/internal_l2a.json @@ -270,7 +270,7 @@ "storage": { "0x0000000000000000000000000000000000000000000000000000000000000033": "0x000000000000000000000000ab707cb80e7de7c75d815b1a653433f3eec44c74" }, - "code": "0x6080604052600436106101fc575f3560e01c80638456cb5911610113578063da69d3db1161009d578063e902461a1161006d578063e902461a146105ca578063ee82ac5e146105e9578063f2fde38b14610608578063f940e38514610627578063fd85eb2d14610646575f5ffd5b8063da69d3db14610554578063dac5df7814610573578063e07baba614610588578063e30c3978146105ad575f5ffd5b8063a7137c0f116100e3578063a7137c0f1461047c578063a7e022d1146104a2578063a86f9d9e146104de578063b8c7b30c146104fd578063c3f909d41461051c575f5ffd5b80638456cb59146104125780638abf6077146104265780638da5cb5b1461043a5780639ee512f214610457575f5ffd5b80633eb6b8cf11610194578063539b8ade11610164578063539b8ade146103855780635950f9f1146103ab5780635c975abb146103ca578063715018a6146103ea57806379ba5097146103fe575f5ffd5b80633eb6b8cf1461031d5780633f4ba83a1461033c5780634f1ef2861461035057806352d1902d14610363575f5ffd5b806333d5ac9b116101cf57806333d5ac9b1461028d578063356aec04146102b35780633659cfe6146102c55780633ab76e9f146102e6575f5ffd5b806312622e5b14610200578063136dc4a81461023c5780632f9804731461025b5780633075db5614610279575b5f5ffd5b34801561020b575f5ffd5b5060fe5461021f906001600160401b031681565b6040516001600160401b0390911681526020015b60405180910390f35b348015610247575f5ffd5b5061021f6102563660046125c0565b610665565b348015610266575f5ffd5b505f5b6040519015158152602001610233565b348015610284575f5ffd5b5061026961067b565b348015610298575f5ffd5b5060fd5461021f90600160401b90046001600160401b031681565b3480156102be575f5ffd5b505f61021f565b3480156102d0575f5ffd5b506102e46102df366004612614565b610693565b005b3480156102f1575f5ffd5b50609754610305906001600160a01b031681565b6040516001600160a01b039091168152602001610233565b348015610328575f5ffd5b5061030561033736600461263c565b610763565b348015610347575f5ffd5b506102e461076f565b6102e461035e36600461268d565b610783565b34801561036e575f5ffd5b5061037761083c565b604051908152602001610233565b348015610390575f5ffd5b5060fd5461021f90600160801b90046001600160401b031681565b3480156103b6575f5ffd5b506102e46103c5366004612750565b6108ed565b3480156103d5575f5ffd5b5061026960c954610100900460ff1660021490565b3480156103f5575f5ffd5b506102e4610af6565b348015610409575f5ffd5b506102e4610b07565b34801561041d575f5ffd5b506102e4610b7e565b348015610431575f5ffd5b50610305610b91565b348015610445575f5ffd5b506033546001600160a01b0316610305565b348015610462575f5ffd5b5061030571777735367b36bc9b61c50022d9d0700db4ec81565b348015610487575f5ffd5b5060fd5461021f90600160c01b90046001600160401b031681565b3480156104ad575f5ffd5b506104c16104bc3660046127b8565b610b9f565b604080519283526001600160401b03909116602083015201610233565b3480156104e9575f5ffd5b506103056104f83660046127e9565b610c15565b348015610508575f5ffd5b5060fd5461021f906001600160401b031681565b348015610527575f5ffd5b50610530610c2a565b60408051825163ffffffff16815260209283015160ff169281019290925201610233565b34801561055f575f5ffd5b506102e461056e366004612817565b610c5b565b34801561057e575f5ffd5b5061037760fc5481565b348015610593575f5ffd5b5060c95461021f906201000090046001600160401b031681565b3480156105b8575f5ffd5b506065546001600160a01b0316610305565b3480156105d5575f5ffd5b506104c16105e436600461285f565b610d2b565b3480156105f4575f5ffd5b506103776106033660046128a7565b610e0d565b348015610613575f5ffd5b506102e4610622366004612614565b610e45565b348015610632575f5ffd5b506102e46106413660046128be565b610eb6565b348015610651575f5ffd5b506102e46106603660046128ea565b611075565b5f6106718484846114df565b90505b9392505050565b5f600261068a60c95460ff1690565b60ff1614905090565b6001600160a01b037f00000000000000000000000001670010000000000000000000000000000100011630036106e45760405162461bcd60e51b81526004016106db9061292b565b60405180910390fd5b7f00000000000000000000000001670010000000000000000000000000000100016001600160a01b031661071661159a565b6001600160a01b03161461073c5760405162461bcd60e51b81526004016106db90612977565b610745816115b5565b604080515f80825260208201909252610760918391906115bd565b50565b5f610671848484611727565b610777611779565b610781335f611809565b565b6001600160a01b037f00000000000000000000000001670010000000000000000000000000000100011630036107cb5760405162461bcd60e51b81526004016106db9061292b565b7f00000000000000000000000001670010000000000000000000000000000100016001600160a01b03166107fd61159a565b6001600160a01b0316146108235760405162461bcd60e51b81526004016106db90612977565b61082c826115b5565b610838828260016115bd565b5050565b5f306001600160a01b037f000000000000000000000000016700100000000000000000000000000001000116146108db5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c000000000000000060648201526084016106db565b505f516020612c045f395f51905f5290565b5f54610100900460ff161580801561090b57505f54600160ff909116105b806109245750303b15801561092457505f5460ff166001145b6109875760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016106db565b5f805460ff1916600117905580156109a8575f805461ff0019166101001790555b6109b28585611811565b6001600160401b03831615806109d0575046836001600160401b0316145b156109ee576040516308279a2560e31b815260040160405180910390fd5b600146111580610a0457506001600160401b0346115b15610a2257604051638f972ecb60e01b815260040160405180910390fd5b4315610a6c5743600103610a53575f610a3c6001436129d7565b5f81815260fb602052604090209040905550610a6c565b604051635a0f9e4160e11b815260040160405180910390fd5b60fe80546001600160401b0380861667ffffffffffffffff199283161790925560fd805492851692909116919091179055610aa64361184b565b5060fc558015610aef575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b610afe6118db565b6107815f611935565b60655433906001600160a01b03168114610b755760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b60648201526084016106db565b61076081611935565b610b8661194e565b610781336001611809565b5f610b9a61159a565b905090565b5f5f5f610baa610c2a565b9050610c09816020015160ff16825f015163ffffffff16610bcb91906129ea565b60fd5483516001600160401b038083169263ffffffff90921691610bf891600160401b909104168a612a01565b610c029190612a20565b875f6119bf565b90969095509350505050565b5f610c21468484611727565b90505b92915050565b604080518082019091525f8082526020820152610b9a60408051808201909152630393870081526008602082015290565b825f819003610c7d5760405163ec73295960e01b815260040160405180910390fd5b826001600160401b0316805f03610ca75760405163ec73295960e01b815260040160405180910390fd5b3371777735367b36bc9b61c50022d9d0700db4ec14610cd957604051636494e9f760e01b815260040160405180910390fd5b6002610ce760c95460ff1690565b60ff1603610d085760405163dfc60d8560e01b815260040160405180910390fd5b610d126002611a48565b604051631799c89b60e01b815260040160405180910390fd5b5f8080610d3e6060880160408901612a60565b610d4e9063ffffffff1687612a20565b9050610d6060a0880160808901612a60565b63ffffffff1615801590610d915750610d7f60a0880160808901612a60565b63ffffffff16816001600160401b0316115b15610daf57610da660a0880160808901612a60565b63ffffffff1690505b5f610dbd6020890189612a79565b60ff16610dd060608a0160408b01612a60565b63ffffffff16610de091906129ea565b9050610dfe81878488610df960808e0160608f01612a99565b6119bf565b93509350505094509492505050565b5f438210610e1c57505f919050565b43610e2983610100612ab2565b10610e3357504090565b505f90815260fb602052604090205490565b610e4d6118db565b606580546001600160a01b0383166001600160a01b03199091168117909155610e7e6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b610eca60c954610100900460ff1660021490565b15610ee85760405163bae6e2a960e01b815260040160405180910390fd5b693bb4ba34323930bbb2b960b11b610f086033546001600160a01b031690565b6001600160a01b0316336001600160a01b031614158015610f455750610f2f816001610c15565b6001600160a01b0316336001600160a01b031614155b15610f6357604051630d85cccf60e11b815260040160405180910390fd5b6002610f7160c95460ff1690565b60ff1603610f925760405163dfc60d8560e01b815260040160405180910390fd5b610f9c6002611a48565b6001600160a01b038216610fc35760405163053fd54760e01b815260040160405180910390fd5b6001600160a01b038316610fe957610fe46001600160a01b03831647611a5e565b611066565b6040516370a0823160e01b81523060048201526110669083906001600160a01b038616906370a0823190602401602060405180830381865afa158015611031573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110559190612a49565b6001600160a01b0386169190611a69565b6110706001611a48565b505050565b825f8190036110975760405163ec73295960e01b815260040160405180910390fd5b846001600160401b0316805f036110c15760405163ec73295960e01b815260040160405180910390fd5b6110d16060840160408501612a60565b63ffffffff16805f036110f75760405163ec73295960e01b815260040160405180910390fd5b6111046020850185612a79565b60ff16805f036111275760405163ec73295960e01b815260040160405180910390fd5b3371777735367b36bc9b61c50022d9d0700db4ec1461115957604051636494e9f760e01b815260040160405180910390fd5b600261116760c95460ff1690565b60ff16036111885760405163dfc60d8560e01b815260040160405180910390fd5b6111926002611a48565b5f61119e6001436129d7565b90505f5f6111ab8361184b565b915091508160fc54146111d15760405163d719258d60e01b815260040160405180910390fd5b60fc55505f6111e36020880188612a79565b60ff166111f66060890160408a01612a60565b63ffffffff166112069190612a20565b60fd549091506001600160401b03808316600160c01b90920416146112a15760fd54600160c01b90046001600160401b0316156112805760fd5461125e906001600160401b0380821691600160c01b90041683610665565b60fd805467ffffffffffffffff19166001600160401b03929092169190911790555b60fd80546001600160c01b0316600160c01b6001600160401b038416021790555b5060fd545f9081906112db9089906112c990600160801b90046001600160401b0316426129d7565b60fd546001600160401b03168c610d2b565b915091506112e65f90565b1580156112f35750814814155b15611311576040516336d54d4f60e11b815260040160405180910390fd5b60fd805467ffffffffffffffff19166001600160401b039283161790819055600160401b90048116908b16111590506114365761135f6d7369676e616c5f7365727669636560901b5f610c15565b60fe546040516313e4299d60e21b81526001600160401b0391821660048201527f73e6d340850343cc6f001515dc593377337c95a6ffe034fe1e844d4dab5da1696024820152908b166044820152606481018a90526001600160a01b039190911690634f90a674906084016020604051808303815f875af11580156113e6573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061140a9190612a49565b5060fd80546fffffffffffffffff00000000000000001916600160401b6001600160401b038c16021790555b5f81815260fb60205260409081902082409081905560fd80546001600160401b03428116600160801b0267ffffffffffffffff60801b1983168117909355935192937f41c3f410f5c8ac36bb46b1dccef0de0f964087c9e688795fa02ecfa2c20b3fe4936114c1938693908316921691909117909182526001600160401b0316602082015260400190565b60405180910390a150506114d56001611a48565b5050505050505050565b5f826001600160401b03165f036114f7575080610674565b670de0b6b3a76400005f6001600160401b0380861690611519908616846129ea565b6115239190612ad9565b90506001600160ff1b0381111561154d57604051636296f1b960e11b815260040160405180910390fd5b5f61155782611abb565b90505f828802828702015f81126001811461157657858204925061157a565b5f92505b5061158e9050816001600160401b03611cd8565b98975050505050505050565b5f516020612c045f395f51905f52546001600160a01b031690565b6107606118db565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156115f05761107083611cec565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561164a575060408051601f3d908101601f1916820190925261164791810190612a49565b60015b6116ad5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016106db565b5f516020612c045f395f51905f52811461171b5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016106db565b50611070838383611d87565b5f6117328484611db1565b90508115801561174957506001600160a01b038116155b1561067457604051632b0d65db60e01b81526001600160401b0385166004820152602481018490526044016106db565b61178d60c954610100900460ff1660021490565b6117aa5760405163bae6e2a960e01b815260040160405180910390fd5b60c9805461010069ffffffffffffffffff001990911662010000426001600160401b031602171790556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa906020015b60405180910390a1565b6108386118db565b806001600160a01b0381166118395760405163538ba4f960e01b815260040160405180910390fd5b61184283611e5b565b61107082611eb9565b5f5f611855612585565b5f5b60ff8110801561186a5750806001018510155b1561189b575f198186030180408360ff8306610100811061188d5761188d612aec565b602002015250600101611857565b5046611fe0820152612000812092508340816118b860ff87612b00565b61010081106118c9576118c9612aec565b60200201526120009020919391925050565b6033546001600160a01b031633146107815760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106db565b606580546001600160a01b031916905561076081611f29565b61196260c954610100900460ff1660021490565b156119805760405163bae6e2a960e01b815260040160405180910390fd5b60c9805461ff0019166102001790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258906020016117ff565b5f80806119db63ffffffff86166001600160401b038916612ab2565b9050856001600160401b031681116119f4576001611a07565b611a076001600160401b038716826129d7565b9050611a266001600160401b03611a2083878316611f7a565b90611cd8565b9150611a3b826001600160401b031689611f8f565b9250509550959350505050565b60c9805460ff191660ff92909216919091179055565b61083882825a611fbe565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611070908490612001565b6fffffffffffffffffffffffffffffffff811160071b81811c6001600160401b031060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c60ff1060031b175f8213611b1757631615e6385f526004601cfd5b7ff8f9f9faf9fdfafbf9fdfcfdfafbfcfef9fafdfafcfcfbfefafafcfbffffffff6f8421084210842108cc6318c6db6d54be83831c1c601f161a1890811b609f90811c6c465772b2bbbb5f824b15207a3081018102606090811d6d0388eaa27412d5aca026815d636e018202811d6d0df99ac502031bf953eff472fdcc018202811d6d13cdffb29d51d99322bdff5f2211018202811d6d0a0f742023def783a307a986912e018202811d6d01920d8043ca89b5239253284e42018202811d6c0b7a86d7375468fac667a0a527016c29508e458543d8aa4df2abee7883018302821d6d0139601a2efabe717e604cbb4894018302821d6d02247f7a7b6594320649aa03aba1018302821d6c8c3f38e95a6b1ff2ab1c3b343619018302821d6d02384773bdf1ac5676facced60901901830290911d6cb9a025d814b29c212b8b1a07cd1901909102780a09507084cc699bb0e71ea869ffffffffffffffffffffffff190105711340daa0d5f769dba1915cef59f0815a5506029190037d0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b302017d57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b88642840160ae1d90565b5f818311611ce65782610c21565b50919050565b6001600160a01b0381163b611d595760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016106db565b5f516020612c045f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b611d90836120d4565b5f82511180611d9c5750805b1561107057611dab8383612113565b50505050565b6097545f906001600160a01b031680611ddd57604051638ed88b2560e01b815260040160405180910390fd5b604051630a3dc4f360e21b81526001600160401b0385166004820152602481018490526001600160a01b038216906328f713cc90604401602060405180830381865afa158015611e2f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e539190612b13565b949350505050565b5f54610100900460ff16611e815760405162461bcd60e51b81526004016106db90612b2e565b611e89612138565b611ea76001600160a01b03821615611ea15781611935565b33611935565b5060c9805461ff001916610100179055565b5f54610100900460ff16611edf5760405162461bcd60e51b81526004016106db90612b2e565b6001600160401b03461115611f075760405163a12e8fa960e01b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0392909216919091179055565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f818311611f885781610c21565b5090919050565b5f5f82611f9c858561215e565b611fa69190612ad9565b90508015611fb45780611e53565b5060019392505050565b815f03611fca57505050565b611fe483838360405180602001604052805f8152506121d8565b61107057604051634c67134d60e11b815260040160405180910390fd5b5f612055826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166122159092919063ffffffff16565b905080515f14806120755750808060200190518101906120759190612b79565b6110705760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016106db565b6120dd81611cec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b6060610c218383604051806060016040528060278152602001612c2460279139612223565b5f54610100900460ff166107815760405162461bcd60e51b81526004016106db90612b2e565b5f815f0361217f57604051636296f1b960e11b815260040160405180910390fd5b5f8261219385670de0b6b3a76400006129ea565b61219d9190612ad9565b9050680755bf798b4a1bf1e48111156121bc5750680755bf798b4a1bf1e45b670de0b6b3a76400006121ce82612297565b611e539190612ad9565b5f6001600160a01b03851661220057604051634c67134d60e11b815260040160405180910390fd5b5f5f835160208501878988f195945050505050565b606061067184845f85612411565b60605f5f856001600160a01b03168560405161223f9190612bb6565b5f60405180830381855af49150503d805f8114612277576040519150601f19603f3d011682016040523d82523d5f602084013e61227c565b606091505b509150915061228d868383876124e8565b9695505050505050565b5f68023f2fa8f6da5b9d281982136122ae57919050565b680755bf798b4a1bf1e582126122cb5763a37bfec95f526004601cfd5b6503782dace9d9604e83901b0591505f60606bb17217f7d1cf79abc9e3b39884821b056001605f1b01901d6bb17217f7d1cf79abc9e3b39881029093036c240c330e9fb2d9cbaf0fd5aafb1981018102606090811d6d0277594991cfc85f6e2461837cd9018202811d6d1a521255e34f6a5061b25ef1c9c319018202811d6db1bbb201f443cf962f1a1d3db4a5018202811d6e02c72388d9f74f51a9331fed693f1419018202811d6e05180bb14799ab47a8a8cb2a527d57016d02d16720577bd19bf614176fe9ea6c10fe68e7fd37d0007b713f765084018402831d9081019084016d01d3967ed30fc4f89c02bab5708119010290911d6e0587f503bb6ea29d25fcb740196450019091026d360d7aeea093263ecc6e0ecb291760621b010574029d9dc38563c32e5c2f6dc192ee70ef65f9978af30260c3939093039290921c92915050565b6060824710156124725760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016106db565b5f5f866001600160a01b0316858760405161248d9190612bb6565b5f6040518083038185875af1925050503d805f81146124c7576040519150601f19603f3d011682016040523d82523d5f602084013e6124cc565b606091505b50915091506124dd878383876124e8565b979650505050505050565b606083156125565782515f0361254f576001600160a01b0385163b61254f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106db565b5081611e53565b611e53838381511561256b5781518083602001fd5b8060405162461bcd60e51b81526004016106db9190612bd1565b604051806120000160405280610100906020820280368337509192915050565b80356001600160401b03811681146125bb575f5ffd5b919050565b5f5f5f606084860312156125d2575f5ffd5b6125db846125a5565b92506125e9602085016125a5565b91506125f7604085016125a5565b90509250925092565b6001600160a01b0381168114610760575f5ffd5b5f60208284031215612624575f5ffd5b813561067481612600565b8015158114610760575f5ffd5b5f5f5f6060848603121561264e575f5ffd5b612657846125a5565b925060208401359150604084013561266e8161262f565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f5f6040838503121561269e575f5ffd5b82356126a981612600565b915060208301356001600160401b038111156126c3575f5ffd5b8301601f810185136126d3575f5ffd5b80356001600160401b038111156126ec576126ec612679565b604051601f8201601f19908116603f011681016001600160401b038111828210171561271a5761271a612679565b604052818152828201602001871015612731575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f5f5f5f60808587031215612763575f5ffd5b843561276e81612600565b9350602085013561277e81612600565b925061278c604086016125a5565b915061279a606086016125a5565b905092959194509250565b803563ffffffff811681146125bb575f5ffd5b5f5f604083850312156127c9575f5ffd5b6127d2836125a5565b91506127e0602084016127a5565b90509250929050565b5f5f604083850312156127fa575f5ffd5b82359150602083013561280c8161262f565b809150509250929050565b5f5f5f5f6080858703121561282a575f5ffd5b8435935060208501359250612841604086016125a5565b915061279a606086016127a5565b5f60a08284031215611ce6575f5ffd5b5f5f5f5f6101008587031215612873575f5ffd5b61287d868661284f565b935061288b60a086016125a5565b925061289960c086016125a5565b915061279a60e086016127a5565b5f602082840312156128b7575f5ffd5b5035919050565b5f5f604083850312156128cf575f5ffd5b82356128da81612600565b9150602083013561280c81612600565b5f5f5f5f61010085870312156128fe575f5ffd5b612907856125a5565b93506020850135925061291c604086016127a5565b915061279a866060870161284f565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c2457610c246129c3565b8082028115828204841417610c2457610c246129c3565b6001600160401b038281168282160390811115610c2457610c246129c3565b6001600160401b038181168382160290811690818114612a4257612a426129c3565b5092915050565b5f60208284031215612a59575f5ffd5b5051919050565b5f60208284031215612a70575f5ffd5b610c21826127a5565b5f60208284031215612a89575f5ffd5b813560ff81168114610674575f5ffd5b5f60208284031215612aa9575f5ffd5b610c21826125a5565b80820180821115610c2457610c246129c3565b634e487b7160e01b5f52601260045260245ffd5b5f82612ae757612ae7612ac5565b500490565b634e487b7160e01b5f52603260045260245ffd5b5f82612b0e57612b0e612ac5565b500690565b5f60208284031215612b23575f5ffd5b815161067481612600565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f60208284031215612b89575f5ffd5b81516106748161262f565b5f5b83811015612bae578181015183820152602001612b96565b50505f910152565b5f8251612bc7818460208701612b94565b9190910192915050565b602081525f8251806020840152612bef816040850160208701612b94565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220fe92703ec9e4c0af08b82c2f722ba5817c2918812148f8bba50b314abc16455664736f6c634300081b0033", + "code": "0x6080604052600436106101fc575f3560e01c80638456cb5911610113578063da69d3db1161009d578063e902461a1161006d578063e902461a146105cb578063ee82ac5e146105ea578063f2fde38b14610609578063f940e38514610628578063fd85eb2d14610647575f5ffd5b8063da69d3db14610555578063dac5df7814610574578063e07baba614610589578063e30c3978146105ae575f5ffd5b8063a7137c0f116100e3578063a7137c0f1461047d578063a7e022d1146104a3578063a86f9d9e146104df578063b8c7b30c146104fe578063c3f909d41461051d575f5ffd5b80638456cb59146104135780638abf6077146104275780638da5cb5b1461043b5780639ee512f214610458575f5ffd5b80633eb6b8cf11610194578063539b8ade11610164578063539b8ade146103865780635950f9f1146103ac5780635c975abb146103cb578063715018a6146103eb57806379ba5097146103ff575f5ffd5b80633eb6b8cf1461031e5780633f4ba83a1461033d5780634f1ef2861461035157806352d1902d14610364575f5ffd5b806333d5ac9b116101cf57806333d5ac9b1461028d578063356aec04146102b35780633659cfe6146102c65780633ab76e9f146102e7575f5ffd5b806312622e5b14610200578063136dc4a81461023c5780632f9804731461025b5780633075db5614610279575b5f5ffd5b34801561020b575f5ffd5b5060fe5461021f906001600160401b031681565b6040516001600160401b0390911681526020015b60405180910390f35b348015610247575f5ffd5b5061021f610256366004612829565b610666565b348015610266575f5ffd5b505f5b6040519015158152602001610233565b348015610284575f5ffd5b5061026961067c565b348015610298575f5ffd5b5060fd5461021f90600160401b90046001600160401b031681565b3480156102be575f5ffd5b50600261021f565b3480156102d1575f5ffd5b506102e56102e036600461287d565b610694565b005b3480156102f2575f5ffd5b50609754610306906001600160a01b031681565b6040516001600160a01b039091168152602001610233565b348015610329575f5ffd5b506103066103383660046128a5565b610764565b348015610348575f5ffd5b506102e5610770565b6102e561035f3660046128f6565b610784565b34801561036f575f5ffd5b5061037861083d565b604051908152602001610233565b348015610391575f5ffd5b5060fd5461021f90600160801b90046001600160401b031681565b3480156103b7575f5ffd5b506102e56103c63660046129b9565b6108ee565b3480156103d6575f5ffd5b5061026960c954610100900460ff1660021490565b3480156103f6575f5ffd5b506102e5610af7565b34801561040a575f5ffd5b506102e5610b08565b34801561041e575f5ffd5b506102e5610b7f565b348015610432575f5ffd5b50610306610b92565b348015610446575f5ffd5b506033546001600160a01b0316610306565b348015610463575f5ffd5b5061030671777735367b36bc9b61c50022d9d0700db4ec81565b348015610488575f5ffd5b5060fd5461021f90600160c01b90046001600160401b031681565b3480156104ae575f5ffd5b506104c26104bd366004612a21565b610ba0565b604080519283526001600160401b03909116602083015201610233565b3480156104ea575f5ffd5b506103066104f9366004612a52565b610c16565b348015610509575f5ffd5b5060fd5461021f906001600160401b031681565b348015610528575f5ffd5b50610531610c2b565b60408051825163ffffffff16815260209283015160ff169281019290925201610233565b348015610560575f5ffd5b506102e561056f366004612a80565b610c5c565b34801561057f575f5ffd5b5061037860fc5481565b348015610594575f5ffd5b5060c95461021f906201000090046001600160401b031681565b3480156105b9575f5ffd5b506065546001600160a01b0316610306565b3480156105d6575f5ffd5b506104c26105e5366004612ac8565b610f77565b3480156105f5575f5ffd5b50610378610604366004612b10565b611059565b348015610614575f5ffd5b506102e561062336600461287d565b611091565b348015610633575f5ffd5b506102e5610642366004612b27565b611102565b348015610652575f5ffd5b506102e5610661366004612b53565b6112c1565b5f610672848484611748565b90505b9392505050565b5f600261068b60c95460ff1690565b60ff1614905090565b6001600160a01b037f00000000000000000000000001670010000000000000000000000000000100011630036106e55760405162461bcd60e51b81526004016106dc90612b94565b60405180910390fd5b7f00000000000000000000000001670010000000000000000000000000000100016001600160a01b0316610717611803565b6001600160a01b03161461073d5760405162461bcd60e51b81526004016106dc90612be0565b6107468161181e565b604080515f8082526020820190925261076191839190611826565b50565b5f610672848484611990565b6107786119e2565b610782335f611a72565b565b6001600160a01b037f00000000000000000000000001670010000000000000000000000000000100011630036107cc5760405162461bcd60e51b81526004016106dc90612b94565b7f00000000000000000000000001670010000000000000000000000000000100016001600160a01b03166107fe611803565b6001600160a01b0316146108245760405162461bcd60e51b81526004016106dc90612be0565b61082d8261181e565b61083982826001611826565b5050565b5f306001600160a01b037f000000000000000000000000016700100000000000000000000000000001000116146108dc5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c000000000000000060648201526084016106dc565b505f516020612e6d5f395f51905f5290565b5f54610100900460ff161580801561090c57505f54600160ff909116105b806109255750303b15801561092557505f5460ff166001145b6109885760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016106dc565b5f805460ff1916600117905580156109a9575f805461ff0019166101001790555b6109b38585611a7a565b6001600160401b03831615806109d1575046836001600160401b0316145b156109ef576040516308279a2560e31b815260040160405180910390fd5b600146111580610a0557506001600160401b0346115b15610a2357604051638f972ecb60e01b815260040160405180910390fd5b4315610a6d5743600103610a54575f610a3d600143612c40565b5f81815260fb602052604090209040905550610a6d565b604051635a0f9e4160e11b815260040160405180910390fd5b60fe80546001600160401b0380861667ffffffffffffffff199283161790925560fd805492851692909116919091179055610aa743611ab4565b5060fc558015610af0575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b610aff611b44565b6107825f611b9e565b60655433906001600160a01b03168114610b765760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b60648201526084016106dc565b61076181611b9e565b610b87611bb7565b610782336001611a72565b5f610b9b611803565b905090565b5f5f5f610bab610c2b565b9050610c0a816020015160ff16825f015163ffffffff16610bcc9190612c53565b60fd5483516001600160401b038083169263ffffffff90921691610bf991600160401b909104168a612c6a565b610c039190612c89565b875f611c28565b90969095509350505050565b5f610c22468484611990565b90505b92915050565b604080518082019091525f8082526020820152610b9b60408051808201909152630393870081526008602082015290565b825f819003610c7e5760405163ec73295960e01b815260040160405180910390fd5b826001600160401b0316805f03610ca85760405163ec73295960e01b815260040160405180910390fd5b3371777735367b36bc9b61c50022d9d0700db4ec14610cda57604051636494e9f760e01b815260040160405180910390fd5b6002610ce860c95460ff1690565b60ff1603610d095760405163dfc60d8560e01b815260040160405180910390fd5b610d136002611cb1565b60024310610d3457604051631799c89b60e01b815260040160405180910390fd5b5f610d40600143612c40565b90505f5f610d4d83611ab4565b915091508160fc5414610d735760405163d719258d60e01b815260040160405180910390fd5b5f5f610d7f8989610ba0565b91509150610d8a5f90565b158015610d975750814814155b15610db5576040516336d54d4f60e11b815260040160405180910390fd5b60fd546001600160401b03600160401b9091048116908a161115610ec057610dee6d7369676e616c5f7365727669636560901b5f610c16565b60fe546040516313e4299d60e21b81526001600160401b0391821660048201527f73e6d340850343cc6f001515dc593377337c95a6ffe034fe1e844d4dab5da1696024820152908b166044820152606481018c90526001600160a01b039190911690634f90a674906084016020604051808303815f875af1158015610e75573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e999190612cb2565b5060fd805467ffffffffffffffff60401b1916600160401b6001600160401b038c16021790555b5f85815260fb60205260409081902086409081905560fc85905560fd8054426001600160401b03908116600160801b0277ffffffffffffffff0000000000000000ffffffffffffffff199092169086161717905590517f41c3f410f5c8ac36bb46b1dccef0de0f964087c9e688795fa02ecfa2c20b3fe490610f5790839085909182526001600160401b0316602082015260400190565b60405180910390a1505050505050610f6f6001611cb1565b505050505050565b5f8080610f8a6060880160408901612cc9565b610f9a9063ffffffff1687612c89565b9050610fac60a0880160808901612cc9565b63ffffffff1615801590610fdd5750610fcb60a0880160808901612cc9565b63ffffffff16816001600160401b0316115b15610ffb57610ff260a0880160808901612cc9565b63ffffffff1690505b5f6110096020890189612ce2565b60ff1661101c60608a0160408b01612cc9565b63ffffffff1661102c9190612c53565b905061104a8187848861104560808e0160608f01612d02565b611c28565b93509350505094509492505050565b5f43821061106857505f919050565b4361107583610100612d1b565b1061107f57504090565b505f90815260fb602052604090205490565b611099611b44565b606580546001600160a01b0383166001600160a01b031990911681179091556110ca6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b61111660c954610100900460ff1660021490565b156111345760405163bae6e2a960e01b815260040160405180910390fd5b693bb4ba34323930bbb2b960b11b6111546033546001600160a01b031690565b6001600160a01b0316336001600160a01b031614158015611191575061117b816001610c16565b6001600160a01b0316336001600160a01b031614155b156111af57604051630d85cccf60e11b815260040160405180910390fd5b60026111bd60c95460ff1690565b60ff16036111de5760405163dfc60d8560e01b815260040160405180910390fd5b6111e86002611cb1565b6001600160a01b03821661120f5760405163053fd54760e01b815260040160405180910390fd5b6001600160a01b038316611235576112306001600160a01b03831647611cc7565b6112b2565b6040516370a0823160e01b81523060048201526112b29083906001600160a01b038616906370a0823190602401602060405180830381865afa15801561127d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112a19190612cb2565b6001600160a01b0386169190611cd2565b6112bc6001611cb1565b505050565b825f8190036112e35760405163ec73295960e01b815260040160405180910390fd5b846001600160401b0316805f0361130d5760405163ec73295960e01b815260040160405180910390fd5b61131d6060840160408501612cc9565b63ffffffff16805f036113435760405163ec73295960e01b815260040160405180910390fd5b6113506020850185612ce2565b60ff16805f036113735760405163ec73295960e01b815260040160405180910390fd5b3371777735367b36bc9b61c50022d9d0700db4ec146113a557604051636494e9f760e01b815260040160405180910390fd5b60026113b360c95460ff1690565b60ff16036113d45760405163dfc60d8560e01b815260040160405180910390fd5b6113de6002611cb1565b600243101561140057604051631799c89b60e01b815260040160405180910390fd5b5f61140c600143612c40565b90505f5f61141983611ab4565b915091508160fc541461143f5760405163d719258d60e01b815260040160405180910390fd5b60fc55505f6114516020880188612ce2565b60ff166114646060890160408a01612cc9565b63ffffffff166114749190612c89565b60fd549091506001600160401b03808316600160c01b909204161461150f5760fd54600160c01b90046001600160401b0316156114ee5760fd546114cc906001600160401b0380821691600160c01b90041683610666565b60fd805467ffffffffffffffff19166001600160401b03929092169190911790555b60fd80546001600160c01b0316600160c01b6001600160401b038416021790555b5060fd545f90819061154990899061153790600160801b90046001600160401b031642612c40565b60fd546001600160401b03168c610f77565b915091506115545f90565b1580156115615750814814155b1561157f576040516336d54d4f60e11b815260040160405180910390fd5b60fd805467ffffffffffffffff19166001600160401b039283161790819055600160401b90048116908b161115905061169f576115cd6d7369676e616c5f7365727669636560901b5f610c16565b60fe546040516313e4299d60e21b81526001600160401b0391821660048201527f73e6d340850343cc6f001515dc593377337c95a6ffe034fe1e844d4dab5da1696024820152908b166044820152606481018a90526001600160a01b039190911690634f90a674906084016020604051808303815f875af1158015611654573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116789190612cb2565b5060fd805467ffffffffffffffff60401b1916600160401b6001600160401b038c16021790555b5f81815260fb60205260409081902082409081905560fd80546001600160401b03428116600160801b0267ffffffffffffffff60801b1983168117909355935192937f41c3f410f5c8ac36bb46b1dccef0de0f964087c9e688795fa02ecfa2c20b3fe49361172a938693908316921691909117909182526001600160401b0316602082015260400190565b60405180910390a1505061173e6001611cb1565b5050505050505050565b5f826001600160401b03165f03611760575080610675565b670de0b6b3a76400005f6001600160401b038086169061178290861684612c53565b61178c9190612d42565b90506001600160ff1b038111156117b657604051636296f1b960e11b815260040160405180910390fd5b5f6117c082611d24565b90505f828802828702015f8112600181146117df5785820492506117e3565b5f92505b506117f79050816001600160401b03611f41565b98975050505050505050565b5f516020612e6d5f395f51905f52546001600160a01b031690565b610761611b44565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611859576112bc83611f55565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156118b3575060408051601f3d908101601f191682019092526118b091810190612cb2565b60015b6119165760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016106dc565b5f516020612e6d5f395f51905f5281146119845760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016106dc565b506112bc838383611ff0565b5f61199b848461201a565b9050811580156119b257506001600160a01b038116155b1561067557604051632b0d65db60e01b81526001600160401b0385166004820152602481018490526044016106dc565b6119f660c954610100900460ff1660021490565b611a135760405163bae6e2a960e01b815260040160405180910390fd5b60c9805461010069ffffffffffffffffff001990911662010000426001600160401b031602171790556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa906020015b60405180910390a1565b610839611b44565b806001600160a01b038116611aa25760405163538ba4f960e01b815260040160405180910390fd5b611aab836120c4565b6112bc82612122565b5f5f611abe6127ee565b5f5b60ff81108015611ad35750806001018510155b15611b04575f198186030180408360ff83066101008110611af657611af6612d55565b602002015250600101611ac0565b5046611fe082015261200081209250834081611b2160ff87612d69565b6101008110611b3257611b32612d55565b60200201526120009020919391925050565b6033546001600160a01b031633146107825760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106dc565b606580546001600160a01b031916905561076181612192565b611bcb60c954610100900460ff1660021490565b15611be95760405163bae6e2a960e01b815260040160405180910390fd5b60c9805461ff0019166102001790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602001611a68565b5f8080611c4463ffffffff86166001600160401b038916612d1b565b9050856001600160401b03168111611c5d576001611c70565b611c706001600160401b03871682612c40565b9050611c8f6001600160401b03611c89838783166121e3565b90611f41565b9150611ca4826001600160401b0316896121f8565b9250509550959350505050565b60c9805460ff191660ff92909216919091179055565b61083982825a612227565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526112bc90849061226a565b6fffffffffffffffffffffffffffffffff811160071b81811c6001600160401b031060061b1781811c63ffffffff1060051b1781811c61ffff1060041b1781811c60ff1060031b175f8213611d8057631615e6385f526004601cfd5b7ff8f9f9faf9fdfafbf9fdfcfdfafbfcfef9fafdfafcfcfbfefafafcfbffffffff6f8421084210842108cc6318c6db6d54be83831c1c601f161a1890811b609f90811c6c465772b2bbbb5f824b15207a3081018102606090811d6d0388eaa27412d5aca026815d636e018202811d6d0df99ac502031bf953eff472fdcc018202811d6d13cdffb29d51d99322bdff5f2211018202811d6d0a0f742023def783a307a986912e018202811d6d01920d8043ca89b5239253284e42018202811d6c0b7a86d7375468fac667a0a527016c29508e458543d8aa4df2abee7883018302821d6d0139601a2efabe717e604cbb4894018302821d6d02247f7a7b6594320649aa03aba1018302821d6c8c3f38e95a6b1ff2ab1c3b343619018302821d6d02384773bdf1ac5676facced60901901830290911d6cb9a025d814b29c212b8b1a07cd1901909102780a09507084cc699bb0e71ea869ffffffffffffffffffffffff190105711340daa0d5f769dba1915cef59f0815a5506029190037d0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b302017d57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b88642840160ae1d90565b5f818311611f4f5782610c22565b50919050565b6001600160a01b0381163b611fc25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016106dc565b5f516020612e6d5f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b611ff98361233d565b5f825111806120055750805b156112bc57612014838361237c565b50505050565b6097545f906001600160a01b03168061204657604051638ed88b2560e01b815260040160405180910390fd5b604051630a3dc4f360e21b81526001600160401b0385166004820152602481018490526001600160a01b038216906328f713cc90604401602060405180830381865afa158015612098573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120bc9190612d7c565b949350505050565b5f54610100900460ff166120ea5760405162461bcd60e51b81526004016106dc90612d97565b6120f26123a1565b6121106001600160a01b0382161561210a5781611b9e565b33611b9e565b5060c9805461ff001916610100179055565b5f54610100900460ff166121485760405162461bcd60e51b81526004016106dc90612d97565b6001600160401b034611156121705760405163a12e8fa960e01b815260040160405180910390fd5b609780546001600160a01b0319166001600160a01b0392909216919091179055565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f8183116121f15781610c22565b5090919050565b5f5f8261220585856123c7565b61220f9190612d42565b9050801561221d57806120bc565b5060019392505050565b815f0361223357505050565b61224d83838360405180602001604052805f815250612441565b6112bc57604051634c67134d60e11b815260040160405180910390fd5b5f6122be826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661247e9092919063ffffffff16565b905080515f14806122de5750808060200190518101906122de9190612de2565b6112bc5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016106dc565b61234681611f55565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b6060610c228383604051806060016040528060278152602001612e8d6027913961248c565b5f54610100900460ff166107825760405162461bcd60e51b81526004016106dc90612d97565b5f815f036123e857604051636296f1b960e11b815260040160405180910390fd5b5f826123fc85670de0b6b3a7640000612c53565b6124069190612d42565b9050680755bf798b4a1bf1e48111156124255750680755bf798b4a1bf1e45b670de0b6b3a764000061243782612500565b6120bc9190612d42565b5f6001600160a01b03851661246957604051634c67134d60e11b815260040160405180910390fd5b5f5f835160208501878988f195945050505050565b606061067284845f8561267a565b60605f5f856001600160a01b0316856040516124a89190612e1f565b5f60405180830381855af49150503d805f81146124e0576040519150601f19603f3d011682016040523d82523d5f602084013e6124e5565b606091505b50915091506124f686838387612751565b9695505050505050565b5f68023f2fa8f6da5b9d2819821361251757919050565b680755bf798b4a1bf1e582126125345763a37bfec95f526004601cfd5b6503782dace9d9604e83901b0591505f60606bb17217f7d1cf79abc9e3b39884821b056001605f1b01901d6bb17217f7d1cf79abc9e3b39881029093036c240c330e9fb2d9cbaf0fd5aafb1981018102606090811d6d0277594991cfc85f6e2461837cd9018202811d6d1a521255e34f6a5061b25ef1c9c319018202811d6db1bbb201f443cf962f1a1d3db4a5018202811d6e02c72388d9f74f51a9331fed693f1419018202811d6e05180bb14799ab47a8a8cb2a527d57016d02d16720577bd19bf614176fe9ea6c10fe68e7fd37d0007b713f765084018402831d9081019084016d01d3967ed30fc4f89c02bab5708119010290911d6e0587f503bb6ea29d25fcb740196450019091026d360d7aeea093263ecc6e0ecb291760621b010574029d9dc38563c32e5c2f6dc192ee70ef65f9978af30260c3939093039290921c92915050565b6060824710156126db5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016106dc565b5f5f866001600160a01b031685876040516126f69190612e1f565b5f6040518083038185875af1925050503d805f8114612730576040519150601f19603f3d011682016040523d82523d5f602084013e612735565b606091505b509150915061274687838387612751565b979650505050505050565b606083156127bf5782515f036127b8576001600160a01b0385163b6127b85760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106dc565b50816120bc565b6120bc83838151156127d45781518083602001fd5b8060405162461bcd60e51b81526004016106dc9190612e3a565b604051806120000160405280610100906020820280368337509192915050565b80356001600160401b0381168114612824575f5ffd5b919050565b5f5f5f6060848603121561283b575f5ffd5b6128448461280e565b92506128526020850161280e565b91506128606040850161280e565b90509250925092565b6001600160a01b0381168114610761575f5ffd5b5f6020828403121561288d575f5ffd5b813561067581612869565b8015158114610761575f5ffd5b5f5f5f606084860312156128b7575f5ffd5b6128c08461280e565b92506020840135915060408401356128d781612898565b809150509250925092565b634e487b7160e01b5f52604160045260245ffd5b5f5f60408385031215612907575f5ffd5b823561291281612869565b915060208301356001600160401b0381111561292c575f5ffd5b8301601f8101851361293c575f5ffd5b80356001600160401b03811115612955576129556128e2565b604051601f8201601f19908116603f011681016001600160401b0381118282101715612983576129836128e2565b60405281815282820160200187101561299a575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f5f5f5f608085870312156129cc575f5ffd5b84356129d781612869565b935060208501356129e781612869565b92506129f56040860161280e565b9150612a036060860161280e565b905092959194509250565b803563ffffffff81168114612824575f5ffd5b5f5f60408385031215612a32575f5ffd5b612a3b8361280e565b9150612a4960208401612a0e565b90509250929050565b5f5f60408385031215612a63575f5ffd5b823591506020830135612a7581612898565b809150509250929050565b5f5f5f5f60808587031215612a93575f5ffd5b8435935060208501359250612aaa6040860161280e565b9150612a0360608601612a0e565b5f60a08284031215611f4f575f5ffd5b5f5f5f5f6101008587031215612adc575f5ffd5b612ae68686612ab8565b9350612af460a0860161280e565b9250612b0260c0860161280e565b9150612a0360e08601612a0e565b5f60208284031215612b20575f5ffd5b5035919050565b5f5f60408385031215612b38575f5ffd5b8235612b4381612869565b91506020830135612a7581612869565b5f5f5f5f6101008587031215612b67575f5ffd5b612b708561280e565b935060208501359250612b8560408601612a0e565b9150612a038660608701612ab8565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610c2557610c25612c2c565b8082028115828204841417610c2557610c25612c2c565b6001600160401b038281168282160390811115610c2557610c25612c2c565b6001600160401b038181168382160290811690818114612cab57612cab612c2c565b5092915050565b5f60208284031215612cc2575f5ffd5b5051919050565b5f60208284031215612cd9575f5ffd5b610c2282612a0e565b5f60208284031215612cf2575f5ffd5b813560ff81168114610675575f5ffd5b5f60208284031215612d12575f5ffd5b610c228261280e565b80820180821115610c2557610c25612c2c565b634e487b7160e01b5f52601260045260245ffd5b5f82612d5057612d50612d2e565b500490565b634e487b7160e01b5f52603260045260245ffd5b5f82612d7757612d77612d2e565b500690565b5f60208284031215612d8c575f5ffd5b815161067581612869565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f60208284031215612df2575f5ffd5b815161067581612898565b5f5b83811015612e17578181015183820152602001612dff565b50505f910152565b5f8251612e30818460208701612dfd565b9190910192915050565b602081525f8251806020840152612e58816040850160208701612dfd565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122097c371566085ca0815d54688c02ffbd5f87528c4a61cfe4cdec3cbc3ac01c0c764736f6c634300081b0033", "balance": "0x0" }, "0x1670010000000000000000000000000000010001": {