0 txs
0 calls
constructor
constructor(bytes[] recentOperators)
functions
currentEpoch
viewfunction currentEpoch() view returns (uint256)
epochForHash
viewfunction epochForHash(bytes32) view returns (uint256)
hashForEpoch
viewfunction hashForEpoch(uint256) view returns (bytes32)
owner
viewfunction owner() view returns (address)
validateProof
viewfunction validateProof(bytes32 messageHash, bytes proof) view returns (bool)
transferOperatorship
nonpayablefunction transferOperatorship(bytes params)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
OperatorshipTransferred
event OperatorshipTransferred(address[] newOperators, uint256[] newWeights, uint256 newThreshold)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
DuplicateOperators
error DuplicateOperators()
InvalidOperators
error InvalidOperators()
InvalidOwner
error InvalidOwner()
InvalidS
error InvalidS()
InvalidSignature
error InvalidSignature()
InvalidSignatureLength
error InvalidSignatureLength()
InvalidThreshold
error InvalidThreshold()
InvalidV
error InvalidV()
InvalidWeights
error InvalidWeights()
LowSignaturesWeight
error LowSignaturesWeight()
MalformedSigners
error MalformedSigners()
NotOwner
error NotOwner()
creation bytecode
0x60806040523480156200001157600080fd5b5060405162001693380380620016938339810160408190526200003491620003bf565b600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360005b8151811015620000c057620000ad828281518110620000995762000099620004fd565b6020026020010151620000c860201b60201c565b620000b88162000529565b905062000076565b505062000761565b600080600083806020019051810190620000e39190620005b4565b8251825193965091945092509081158062000106575062000104856200027e565b155b156200012557604051630849699d60e11b815260040160405180910390fd5b818114620001465760405163108cef9d60e31b815260040160405180910390fd5b6000805b828110156200019257858181518110620001685762000168620004fd565b6020026020010151826200017d91906200069b565b91506200018a8162000529565b90506200014a565b50831580620001a057508381105b15620001bf5760405163aabd5a0960e01b815260040160405180910390fd5b86516020808901919091206000818152600390925260409091205415620001f95760405163adda47f760e01b815260040160405180910390fd5b600060015460016200020c91906200069b565b60018190556000818152600260209081526040808320869055858352600390915290819020829055519091507f05b53362d4afea7533e835bd99f6c0f2c251e2f08b5c461734829516519dd5ac906200026b908a908a908a90620006b6565b60405180910390a1505050505050505050565b6000805b6001835162000292919062000747565b811015620003145782620002a88260016200069b565b81518110620002bb57620002bb620004fd565b60200260200101516001600160a01b0316838281518110620002e157620002e1620004fd565b60200260200101516001600160a01b031610620003015750600092915050565b6200030c8162000529565b905062000282565b5060006001600160a01b031682600081518110620003365762000336620004fd565b60200260200101516001600160a01b031614159050919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562000391576200039162000350565b604052919050565b60006001600160401b03821115620003b557620003b562000350565b5060051b60200190565b60006020808385031215620003d357600080fd5b82516001600160401b0380821115620003eb57600080fd5b8185019150601f86818401126200040157600080fd5b825162000418620004128262000399565b62000366565b81815260059190911b840185019085810190898311156200043857600080fd5b8686015b83811015620004ef57805186811115620004565760008081fd5b8701603f81018c13620004695760008081fd5b888101518781111562000480576200048062000350565b62000493818801601f19168b0162000366565b81815260408e81848601011115620004ab5760008081fd5b60005b83811015620004cb578481018201518382018e01528c01620004ae565b83811115620004dd5760008d85850101525b5050855250509187019187016200043c565b509998505050505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060001982141562000540576200054062000513565b5060010190565b600082601f8301126200055957600080fd5b815160206200056c620004128362000399565b82815260059290921b840181019181810190868411156200058c57600080fd5b8286015b84811015620005a9578051835291830191830162000590565b509695505050505050565b600080600060608486031215620005ca57600080fd5b83516001600160401b0380821115620005e257600080fd5b818601915086601f830112620005f757600080fd5b815160206200060a620004128362000399565b82815260059290921b8401810191818101908a8411156200062a57600080fd5b948201945b83861015620006615785516001600160a01b0381168114620006515760008081fd5b825294820194908201906200062f565b918901519197509093505050808211156200067b57600080fd5b506200068a8682870162000547565b925050604084015190509250925092565b60008219821115620006b157620006b162000513565b500190565b606080825284519082018190526000906020906080840190828801845b82811015620006fa5781516001600160a01b031684529284019290840190600101620006d3565b5050508381038285015285518082528683019183019060005b81811015620007315783518352928401929184019160010162000713565b5050809350505050826040830152949350505050565b6000828210156200075c576200075c62000513565b500390565b610f2280620007716000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c8063ba6742e51161005b578063ba6742e5146100ec578063d289d1cb1461010c578063f1501c8914610121578063f2fde38b1461014157600080fd5b806373e3d66a1461008257806376671808146100aa5780638da5cb5b146100c1575b600080fd5b610095610090366004610933565b610154565b60405190151581526020015b60405180910390f35b6100b360015481565b6040519081526020016100a1565b6000546100d4906001600160a01b031681565b6040516001600160a01b0390911681526020016100a1565b6100b36100fa36600461097f565b60026020526000908152604090205481565b61011f61011a366004610998565b610201565b005b6100b361012f36600461097f565b60036020526000908152604090205481565b61011f61014f3660046109f2565b61026f565b60008080808061016686880188610bd0565b9350935093509350600084848460405160200161018593929190610cc0565b60408051601f19818403018152918152815160209283012060008181526003909352912054600154919250908115806101c8575060106101c58383610d63565b10155b156101e657604051630849699d60e11b815260040160405180910390fd5b6101f38b8888888861034d565b149998505050505050505050565b6000546001600160a01b0316331461022c576040516330cd747160e01b815260040160405180910390fd5b61026b82828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049d92505050565b5050565b6000546001600160a01b0316331461029a576040516330cd747160e01b815260040160405180910390fd5b6001600160a01b0381166102da576040517f49e27cff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b8351600080805b84518110156104635760006103828a87848151811061037557610375610d7a565b6020026020010151610687565b90505b84841080156103bf57508884815181106103a1576103a1610d7a565b60200260200101516001600160a01b0316816001600160a01b031614155b156103d4576103cd84610d90565b9350610385565b8484141561040e576040517fc6fb539300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b87848151811061042057610420610d7a565b6020026020010151836104339190610dab565b9250868310610446575050505050610496565b61044f84610d90565b9350508061045c90610d90565b9050610354565b506040517f203b225800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b6000806000838060200190518101906104b69190610e1e565b825182519396509194509250908115806104d657506104d48561082a565b155b156104f457604051630849699d60e11b815260040160405180910390fd5b81811461052d576040517f84677ce800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805b828110156105705785818151811061054b5761054b610d7a565b60200260200101518261055e9190610dab565b915061056981610d90565b9050610531565b5083158061057d57508381105b156105b4576040517faabd5a0900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b86516020808901919091206000818152600390925260409091205415610606576040517fadda47f700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600060015460016106179190610dab565b60018190556000818152600260209081526040808320869055858352600390915290819020829055519091507f05b53362d4afea7533e835bd99f6c0f2c251e2f08b5c461734829516519dd5ac90610674908a908a908a90610cc0565b60405180910390a1505050505050505050565b600081516041146106c4576040517f4be6321b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115610730576040517f40c1e74800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060ff16601b1415801561074857508060ff16601c14155b1561077f576040517f119bce3900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040805160008082526020820180845289905260ff841692820192909252606081018590526080810184905260019060a0016020604051602081039080840390855afa1580156107d3573d6000803e3d6000fd5b505050602060405103519450846001600160a01b03161415610821576040517f8baa579f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505092915050565b6000805b6001835161083c9190610d63565b8110156108b1578261084f826001610dab565b8151811061085f5761085f610d7a565b60200260200101516001600160a01b031683828151811061088257610882610d7a565b60200260200101516001600160a01b0316106108a15750600092915050565b6108aa81610d90565b905061082e565b5060006001600160a01b0316826000815181106108d0576108d0610d7a565b60200260200101516001600160a01b031614159050919050565b60008083601f8401126108fc57600080fd5b50813567ffffffffffffffff81111561091457600080fd5b60208301915083602082850101111561092c57600080fd5b9250929050565b60008060006040848603121561094857600080fd5b83359250602084013567ffffffffffffffff81111561096657600080fd5b610972868287016108ea565b9497909650939450505050565b60006020828403121561099157600080fd5b5035919050565b600080602083850312156109ab57600080fd5b823567ffffffffffffffff8111156109c257600080fd5b6109ce858286016108ea565b90969095509350505050565b6001600160a01b03811681146109ef57600080fd5b50565b600060208284031215610a0457600080fd5b8135610a0f816109da565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610a5557610a55610a16565b604052919050565b600067ffffffffffffffff821115610a7757610a77610a16565b5060051b60200190565b600082601f830112610a9257600080fd5b81356020610aa7610aa283610a5d565b610a2c565b82815260059290921b84018101918181019086841115610ac657600080fd5b8286015b84811015610ae15780358352918301918301610aca565b509695505050505050565b6000601f8381840112610afe57600080fd5b82356020610b0e610aa283610a5d565b82815260059290921b85018101918181019087841115610b2d57600080fd5b8287015b84811015610bc457803567ffffffffffffffff80821115610b525760008081fd5b818a0191508a603f830112610b675760008081fd5b85820135604082821115610b7d57610b7d610a16565b610b8e828b01601f19168901610a2c565b92508183528c81838601011115610ba55760008081fd5b8181850189850137506000908201870152845250918301918301610b31565b50979650505050505050565b60008060008060808587031215610be657600080fd5b843567ffffffffffffffff80821115610bfe57600080fd5b818701915087601f830112610c1257600080fd5b81356020610c22610aa283610a5d565b82815260059290921b8401810191818101908b841115610c4157600080fd5b948201945b83861015610c68578535610c59816109da565b82529482019490820190610c46565b98505088013592505080821115610c7e57600080fd5b610c8a88838901610a81565b9450604087013593506060870135915080821115610ca757600080fd5b50610cb487828801610aec565b91505092959194509250565b606080825284519082018190526000906020906080840190828801845b82811015610d025781516001600160a01b031684529284019290840190600101610cdd565b5050508381038285015285518082528683019183019060005b81811015610d3757835183529284019291840191600101610d1b565b5050809350505050826040830152949350505050565b634e487b7160e01b600052601160045260246000fd5b600082821015610d7557610d75610d4d565b500390565b634e487b7160e01b600052603260045260246000fd5b6000600019821415610da457610da4610d4d565b5060010190565b60008219821115610dbe57610dbe610d4d565b500190565b600082601f830112610dd457600080fd5b81516020610de4610aa283610a5d565b82815260059290921b84018101918181019086841115610e0357600080fd5b8286015b84811015610ae15780518352918301918301610e07565b600080600060608486031215610e3357600080fd5b835167ffffffffffffffff80821115610e4b57600080fd5b818601915086601f830112610e5f57600080fd5b81516020610e6f610aa283610a5d565b82815260059290921b8401810191818101908a841115610e8e57600080fd5b948201945b83861015610eb5578551610ea6816109da565b82529482019490820190610e93565b91890151919750909350505080821115610ece57600080fd5b50610edb86828701610dc3565b92505060408401519050925092509256fea26469706673582212200ddc1b1cc323f5787654ff6b953672c656a5ae6baaac3108e31ea3b7daad1dfd64736f6c6343000809003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000012e0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000009a0000000000000000000000000000000000000000000000000000000000002096a000000000000000000000000000000000000000000000000000000000000004900000000000000000000000005f1dc9e00bf7df2550371de824ed664e549e8d200000000000000000000000006784f6943e94da422210f3bcffa07305253c0b9000000000000000000000000087deb3bcd52d347cae47f1039100049915e39a700000000000000000000000009cf0ee78cec1903873f3d937337eff81262da2500000000000000000000000009d154798b0ff47bd9fc34fe7debb3914bf9b1dd0000000000000000000000000f1b4266d77a73d9382d507ea706cc7c41730b130000000000000000000000000fe6ea6d5c8dca44c44fe7756cef383906b9f8840000000000000000000000002409204fa64834ea381e933521f84c1086f5fdd3000000000000000000000000275e0c7636eb3ebe507093c77e8abc799a6dc1d00000000000000000000000002d52669aa672c6e5b2201cf7799ec19b34a7c0ff0000000000000000000000003716dd2b5fb024967ba0abb7fa9ccb6e8a8ee1e40000000000000000000000003d78580380a3c5f129dc6f55c0e8b35037af6a800000000000000000000000003fe44e587c71d755fc966315ca81ab56631a654b00000000000000000000000041b59a27569b987895e02c48abf0bfc403d85b77000000000000000000000000430fa1103793ef5450b6fc41b29f0de703776bdc00000000000000000000000049312a432ffcd416ba51d5c4e0c82eaf42432a770000000000000000000000004b151e2975c2c5ce24becb586c1be64c8f0138340000000000000000000000004c53c6c2d31e51639cc8fa91b1f31f0dc167899c0000000000000000000000004cb593975594c47f0ba6c8d5eb46d6e242f59e240000000000000000000000004dd8e297588f6e07fb845ee666aee174470afc5900000000000000000000000050778259fbc6beb3fa4d1238512a21b98d8b249a00000000000000000000000052a8221e31de82f52b77d0c1e88edb93964a70f80000000000000000000000005aa3661eeea7c7b5f944761a6f9dbaffc3e11cb90000000000000000000000005b2f33981cd3971e03cea1e287d3a14a6e5407710000000000000000000000005e2abda514f2a1ede896a3d4b262a54d6322a61e0000000000000000000000005e729b06a476968eea496a650da06eefbffd8bce00000000000000000000000061ab7bc49f584f0b1ba6ec89df3c2098072a51df000000000000000000000000631a2de5aa9488083e38e109dbe088da1ea73f88000000000000000000000000680f40a1d62d75978e58f5f503f11f2115870dc40000000000000000000000006d341e72cc9aedb7a7e972e31778ca8dc865d1d50000000000000000000000006e1e62594807f2df0b62fa37e2662b9b95549d3f0000000000000000000000006e2f0cf6e9950f0018b8a27deb3593768629cb4c0000000000000000000000006f0164dc27a9121550c4f2898962262d4583252d000000000000000000000000703472c84c9cdaab508813c0bbfe9e1dc180bc02000000000000000000000000795e32d051d3453c62a469424965af80e6687bc70000000000000000000000007ee315234304e90e85c212dba2f70e95982df2ef00000000000000000000000085eeb499cd770db9ede0b9f34f96059687ff195000000000000000000000000088631c1b9c50242482471d91ae9c37f4dd5767160000000000000000000000008e1cbc84705e11de8d4a795e4c05a826467f9c0e0000000000000000000000008fd8713d4aed23c30cd3018d5ba5b14e046c5493000000000000000000000000943e8534a49175582ffe9119367d0a5b3c2f633400000000000000000000000094bf59d70aa0eedc28616e493ba2338766de9051000000000000000000000000999e84abccd8c96d3d3b0a5f130af0b1f26113150000000000000000000000009c0e7f996deca05c6fda1a89d7ae7817f1fb6e620000000000000000000000009c887ade026296ed00993e170ee38407b61883040000000000000000000000009d1dd5d57013fc25e5e126688dfaf1ad337e45f5000000000000000000000000a163e09468519aeac73c8d9015391214b9a090b4000000000000000000000000a1d95e1e36244ec6322a82c73c2e340dcbb7eccd000000000000000000000000a449e59c16b06363a28ba5e0ff550ecd5a3deabf000000000000000000000000a6cac9bf54a8eb7859cc544b5e61bc459d5ba7cb000000000000000000000000a903f779bf8b5769bf4fdadbcbc9f34d4e938783000000000000000000000000ac7613df0173aea989de837e49112d72425a2252000000000000000000000000adfaf8a66a0fb86a5ca7fa6ac5d2f139eabebb04000000000000000000000000aef72e2dffb4839f8cde1d1d121759df7990eb4c000000000000000000000000b1a9a3d929f37f1c0fe714880b29979c4125a5ac000000000000000000000000b50ed8e99e124533186700b24561e66fd916c0f9000000000000000000000000bf274a2ddac24a1e3b8df2aef80acbb3eb3a39ee000000000000000000000000c10bc374b986eb88fd95f20877a9d0eb06e7f38c000000000000000000000000c2222e487a2365da6b83d3e7e18ddc5355bffd0d000000000000000000000000c72619542c87eaae471c5402f513ca4da1a9d774000000000000000000000000c7446a55e67cf9ffc26b01a947be897d1ba5e105000000000000000000000000c76d4328d08ed436d4597bb902e538d0a142a352000000000000000000000000c7970818cc570961f83b5db173fc41ab5e288bdb000000000000000000000000ca953bd9ab528d11f2ba2b3665612b65b9a10b95000000000000000000000000ce3e94684f29a293d06f5048fc2da4b0e7a91fc2000000000000000000000000cec471e64ea6048fe2dcba486252661b7db5477f000000000000000000000000d40e35f9b5f7518e76ee38b44c841d915365d5f9000000000000000000000000db4e0ac78ee8707cfa45ee264a39f330e37121dc000000000000000000000000dc96a4f88fcaf0c6b90abf239a8b7d85e6a65d23000000000000000000000000e58b306e3ba567a32406fe2b429c530edca181a7000000000000000000000000fccd1e7c5f5d2f73dbaebca4ca32ab9e9d6789db000000000000000000000000ff0475ac2cd0b927b01fc634a97e4286a3b3276e000000000000000000000000ffa56e8b72928e43208d1f325dde511654da1b1c00000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000f09000000000000000000000000000000000000000000000000000000000000086b000000000000000000000000000000000000000000000000000000000000076c00000000000000000000000000000000000000000000000000000000000009e0000000000000000000000000000000000000000000000000000000000000084e000000000000000000000000000000000000000000000000000000000000082e00000000000000000000000000000000000000000000000000000000000007e70000000000000000000000000000000000000000000000000000000000000da50000000000000000000000000000000000000000000000000000000000000c020000000000000000000000000000000000000000000000000000000000000a820000000000000000000000000000000000000000000000000000000000000abb0000000000000000000000000000000000000000000000000000000000000ec80000000000000000000000000000000000000000000000000000000000000b430000000000000000000000000000000000000000000000000000000000000fc40000000000000000000000000000000000000000000000000000000000000d740000000000000000000000000000000000000000000000000000000000000f8b0000000000000000000000000000000000000000000000000000000000000e7100000000000000000000000000000000000000000000000000000000000009bc0000000000000000000000000000000000000000000000000000000000000da00000000000000000000000000000000000000000000000000000000000000cf000000000000000000000000000000000000000000000000000000000000008ff00000000000000000000000000000000000000000000000000000000000005cf0000000000000000000000000000000000000000000000000000000000000921000000000000000000000000000000000000000000000000000000000000091c00000000000000000000000000000000000000000000000000000000000012f800000000000000000000000000000000000000000000000000000000000007aa0000000000000000000000000000000000000000000000000000000000000bc9000000000000000000000000000000000000000000000000000000000000090d00000000000000000000000000000000000000000000000000000000000000a900000000000000000000000000000000000000000000000000000000000009f50000000000000000000000000000000000000000000000000000000000000ffa0000000000000000000000000000000000000000000000000000000000000cf30000000000000000000000000000000000000000000000000000000000000bd50000000000000000000000000000000000000000000000000000000000000c460000000000000000000000000000000000000000000000000000000000000f7000000000000000000000000000000000000000000000000000000000000008550000000000000000000000000000000000000000000000000000000000000e7b00000000000000000000000000000000000000000000000000000000000009560000000000000000000000000000000000000000000000000000000000000faf000000000000000000000000000000000000000000000000000000000000104500000000000000000000000000000000000000000000000000000000000009f90000000000000000000000000000000000000000000000000000000000000a3d0000000000000000000000000000000000000000000000000000000000000657000000000000000000000000000000000000000000000000000000000000003900000000000000000000000000000000000000000000000000000000000010a10000000000000000000000000000000000000000000000000000000000000c5a0000000000000000000000000000000000000000000000000000000000000dfb00000000000000000000000000000000000000000000000000000000000007d0000000000000000000000000000000000000000000000000000000000000107e0000000000000000000000000000000000000000000000000000000000000e6200000000000000000000000000000000000000000000000000000000000006cb000000000000000000000000000000000000000000000000000000000000110500000000000000000000000000000000000000000000000000000000000001070000000000000000000000000000000000000000000000000000000000000cc40000000000000000000000000000000000000000000000000000000000000ebb0000000000000000000000000000000000000000000000000000000000000dc200000000000000000000000000000000000000000000000000000000000014b40000000000000000000000000000000000000000000000000000000000000e4c00000000000000000000000000000000000000000000000000000000000018230000000000000000000000000000000000000000000000000000000000000b3d0000000000000000000000000000000000000000000000000000000000000a8a00000000000000000000000000000000000000000000000000000000000008c50000000000000000000000000000000000000000000000000000000000000f210000000000000000000000000000000000000000000000000000000000000b520000000000000000000000000000000000000000000000000000000000000c250000000000000000000000000000000000000000000000000000000000001c2000000000000000000000000000000000000000000000000000000000000011aa000000000000000000000000000000000000000000000000000000000000089c0000000000000000000000000000000000000000000000000000000000000be70000000000000000000000000000000000000000000000000000000000000ba10000000000000000000000000000000000000000000000000000000000000af000000000000000000000000000000000000000000000000000000000000005ae0000000000000000000000000000000000000000000000000000000000000d9a