0 txs
0 calls
constructor
constructor(address _mainnetVeOracle)
functions
balanceOf
viewfunction balanceOf(address _user, uint256 _timestamp) view returns (uint256)
balanceOf
viewfunction balanceOf(address _user) view returns (uint256)
epoch
viewfunction epoch() view returns (uint256)
locked
viewfunction locked(address) view returns (int128 amount, uint256 end)
mainnetVeOracle
viewfunction mainnetVeOracle() view returns (address)
ovmL2CrossDomainMessenger
viewfunction ovmL2CrossDomainMessenger() view returns (address)
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
point_history
viewfunction point_history(uint256) view returns (int128 bias, int128 slope, uint256 ts, uint256 blk)
slope_changes
viewfunction slope_changes(uint256) view returns (int128)
totalSupply
viewfunction totalSupply() view returns (uint256)
totalSupply
viewfunction totalSupply(uint256 _timestamp) view returns (uint256)
user_point_epoch
viewfunction user_point_epoch(address) view returns (uint256)
user_point_history
viewfunction user_point_history(address, uint256) view returns (int128 bias, int128 slope, uint256 ts, uint256 blk)
acceptOwnership
nonpayablefunction acceptOwnership()
renounceOwnership
nonpayablefunction renounceOwnership()
setMainnetVeOracle
nonpayablefunction setMainnetVeOracle(address _oracleAddress)
submit_state
nonpayablefunction submit_state(uint256 _epoch, tuple _globalPointStruct, int128[8] _slopeChangeArray, address _user, tuple _userLockedStruct, uint256 _userEpoch, tuple _userPointStruct)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
SubmittedState
event SubmittedState(address _user, uint256 _userEpoch)
errors
No errors.
creation bytecode
0x60806040523480156200001157600080fd5b5060405162001f6d38038062001f6d83398181016040528101906200003791906200020e565b620000576200004b6200009f60201b60201c565b620000a760201b60201c565b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505062000240565b600033905090565b600160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055620000dd81620000e060201b60201c565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620001d682620001a9565b9050919050565b620001e881620001c9565b8114620001f457600080fd5b50565b6000815190506200020881620001dd565b92915050565b600060208284031215620002275762000226620001a4565b5b60006200023784828501620001f7565b91505092915050565b611d1d80620002506000396000f3fe608060405234801561001057600080fd5b50600436106101205760003560e01c806379ba5097116100ad578063c9a5fe6711610071578063c9a5fe671461030e578063cbf9fe5f1461032a578063d1febfb91461035b578063e30c39781461038e578063f2fde38b146103ac57610120565b806379ba50971461027a5780638da5cb5b14610284578063900cf0cf146102a2578063bd85b039146102c0578063c2357818146102f057610120565b806328d09d47116100f457806328d09d47146101bf57806344139778146101f257806370a08231146102105780637119748414610240578063715018a61461027057610120565b8062fdd58e14610125578063010ae75714610155578063060286011461018557806318160ddd146101a1575b600080fd5b61013f600480360381019061013a9190611338565b6103c8565b60405161014c9190611387565b60405180910390f35b61016f600480360381019061016a91906113a2565b6105ba565b60405161017c9190611387565b60405180910390f35b61019f600480360381019061019a919061161c565b6105de565b005b6101a9610b65565b6040516101b69190611387565b60405180910390f35b6101d960048036038101906101d49190611338565b610b75565b6040516101e994939291906116d2565b60405180910390f35b6101fa610be1565b6040516102079190611776565b60405180910390f35b61022a600480360381019061022591906113a2565b610bf9565b6040516102379190611387565b60405180910390f35b61025a60048036038101906102559190611791565b610c0c565b60405161026791906117be565b60405180910390f35b610278610c38565b005b610282610c4c565b005b61028c610cd9565b60405161029991906117e8565b60405180910390f35b6102aa610d02565b6040516102b79190611387565b60405180910390f35b6102da60048036038101906102d59190611791565b610d08565b6040516102e79190611387565b60405180910390f35b6102f8610f38565b60405161030591906117e8565b60405180910390f35b610328600480360381019061032391906113a2565b610f5e565b005b610344600480360381019061033f91906113a2565b610faa565b604051610352929190611803565b60405180910390f35b61037560048036038101906103709190611791565b610fe7565b60405161038594939291906116d2565b60405180910390f35b610396611043565b6040516103a391906117e8565b60405180910390f35b6103c660048036038101906103c191906113a2565b61106d565b005b6000806c03c95a2f0b4856475fe000000460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000810361042b5760009150506105b4565b60006c03c95a2f0b4856475fe000000560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082633b9aca00811061048d5761048c61182c565b5b600302016040518060800160405290816000820160009054906101000a9004600f0b600f0b600f0b81526020016000820160109054906101000a9004600f0b600f0b600f0b81526020016001820154815260200160028201548152505090508060400151846104fc919061188a565b60405160200161050c9190611387565b60405160208183030381529060405280602001905181019061052e91906118d3565b816020015161053d9190611900565b8160000181815161054e919061193d565b915090600f0b9081600f0b8152505060008160000151600f0b1215610578576000925050506105b4565b806000015160405160200161058d91906117be565b6040516020818303038152906040528060200190518101906105af91906119ba565b925050505b92915050565b6c03c95a2f0b4856475fe00000046020528060005260406000206000915090505481565b73420000000000000000000000000000000000000773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480156106fe5750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673420000000000000000000000000000000000000773ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b81526004016020604051808303816000875af11580156106c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e691906119fc565b73ffffffffffffffffffffffffffffffffffffffff16145b61070757600080fd5b856004886c01431e0fae6d7217caa000000081106107285761072761182c565b5b6003020160008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff1602179055506040820151816001015560608201518160020155905050806c03c95a2f0b4856475fe000000560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083633b9aca0081106108285761082761182c565b5b6003020160008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff16021790555060208201518160000160106101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff16021790555060408201518160010155606082015181600201559050506003548711156109e55786600381905550600062093a808062093a8089604001516108f29190611a58565b6108fc9190611a89565b6109069190611acb565b905060005b60088110156109e2578681600881106109275761092661182c565b5b602002015160405160200161093c91906117be565b60405160208183030381529060405280602001905181019061095e91906118d3565b6c03c95a2f0b4856475fe000000660008362093a8061097d9190611a89565b856109889190611acb565b815260200190815260200160002060006101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff16021790555080806109da90611aff565b91505061090b565b50505b6c03c95a2f0b4856475fe000000460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610b2457816c03c95a2f0b4856475fe000000460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550826c03c95a2f0b4856475fe000000760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff160217905550602082015181600101559050505b7edd5b113784d2af0787f051c0e46d5ed05c523ed004994e1eb7eb68626095c38483604051610b54929190611b47565b60405180910390a150505050505050565b6000610b7042610d08565b905090565b6c03c95a2f0b4856475fe000000560205281600052604060002081633b9aca008110610ba057600080fd5b60030201600091509150508060000160009054906101000a9004600f0b908060000160109054906101000a9004600f0b908060010154908060020154905084565b73420000000000000000000000000000000000000781565b6000610c0582426103c8565b9050919050565b6c03c95a2f0b4856475fe00000066020528060005260406000206000915054906101000a9004600f0b81565b610c4061111a565b610c4a6000611198565b565b6000610c566111c9565b90508073ffffffffffffffffffffffffffffffffffffffff16610c77611043565b73ffffffffffffffffffffffffffffffffffffffff1614610ccd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc490611bf3565b60405180910390fd5b610cd681611198565b50565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60035481565b60008060046003546c01431e0fae6d7217caa00000008110610d2d57610d2c61182c565b5b600302016040518060800160405290816000820160009054906101000a9004600f0b600f0b600f0b81526020016000820160109054906101000a9004600f0b600f0b600f0b8152602001600182015481526020016002820154815250509050600062093a80808360400151610da29190611a58565b610dac9190611a89565b905060005b60ff811015610edb5762093a8082610dc99190611acb565b9150600085831115610ddd57859250610e1e565b6c03c95a2f0b4856475fe0000006600084815260200190815260200160002060009054906101000a9004600f0b9050600081600f0b03610e1d5750610edb565b5b836040015183610e2e919061188a565b604051602001610e3e9190611387565b604051602081830303815290604052806020019051810190610e6091906118d3565b8460200151610e6f9190611900565b84600001818151610e80919061193d565b915090600f0b9081600f0b81525050858303610e9c5750610edb565b8084602001818151610eae9190611c13565b915090600f0b9081600f0b8152505082846040018181525050508080610ed390611aff565b915050610db1565b5060008260000151600f0b1215610ef757600092505050610f33565b8160000151604051602001610f0c91906117be565b604051602081830303815290604052806020019051810190610f2e91906119ba565b925050505b919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610f6661111a565b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6c03c95a2f0b4856475fe00000076020528060005260406000206000915090508060000160009054906101000a9004600f0b908060010154905082565b6004816c01431e0fae6d7217caa0000000811061100357600080fd5b600302016000915090508060000160009054906101000a9004600f0b908060000160109054906101000a9004600f0b908060010154908060020154905084565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61107561111a565b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff166110d5610cd9565b73ffffffffffffffffffffffffffffffffffffffff167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6111226111c9565b73ffffffffffffffffffffffffffffffffffffffff16611140610cd9565b73ffffffffffffffffffffffffffffffffffffffff1614611196576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118d90611cc7565b60405180910390fd5b565b600160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556111c6816111d1565b50565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000604051905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006112cf826112a4565b9050919050565b6112df816112c4565b81146112ea57600080fd5b50565b6000813590506112fc816112d6565b92915050565b6000819050919050565b61131581611302565b811461132057600080fd5b50565b6000813590506113328161130c565b92915050565b6000806040838503121561134f5761134e61129f565b5b600061135d858286016112ed565b925050602061136e85828601611323565b9150509250929050565b61138181611302565b82525050565b600060208201905061139c6000830184611378565b92915050565b6000602082840312156113b8576113b761129f565b5b60006113c6848285016112ed565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61141d826113d4565b810181811067ffffffffffffffff8211171561143c5761143b6113e5565b5b80604052505050565b600061144f611295565b905061145b8282611414565b919050565b600081600f0b9050919050565b61147681611460565b811461148157600080fd5b50565b6000813590506114938161146d565b92915050565b6000608082840312156114af576114ae6113cf565b5b6114b96080611445565b905060006114c984828501611484565b60008301525060206114dd84828501611484565b60208301525060406114f184828501611323565b604083015250606061150584828501611323565b60608301525092915050565b600080fd5b600067ffffffffffffffff821115611531576115306113e5565b5b602082029050919050565b600080fd5b600061155461154f84611516565b611445565b9050806020840283018581111561156e5761156d61153c565b5b835b8181101561159757806115838882611484565b845260208401935050602081019050611570565b5050509392505050565b600082601f8301126115b6576115b5611511565b5b60086115c3848285611541565b91505092915050565b6000604082840312156115e2576115e16113cf565b5b6115ec6040611445565b905060006115fc84828501611484565b600083015250602061161084828501611323565b60208301525092915050565b60008060008060008060006102a0888a03121561163c5761163b61129f565b5b600061164a8a828b01611323565b975050602061165b8a828b01611499565b96505060a061166c8a828b016115a1565b9550506101a061167e8a828b016112ed565b9450506101c06116908a828b016115cc565b9350506102006116a28a828b01611323565b9250506102206116b48a828b01611499565b91505092959891949750929550565b6116cc81611460565b82525050565b60006080820190506116e760008301876116c3565b6116f460208301866116c3565b6117016040830185611378565b61170e6060830184611378565b95945050505050565b6000819050919050565b600061173c611737611732846112a4565b611717565b6112a4565b9050919050565b600061174e82611721565b9050919050565b600061176082611743565b9050919050565b61177081611755565b82525050565b600060208201905061178b6000830184611767565b92915050565b6000602082840312156117a7576117a661129f565b5b60006117b584828501611323565b91505092915050565b60006020820190506117d360008301846116c3565b92915050565b6117e2816112c4565b82525050565b60006020820190506117fd60008301846117d9565b92915050565b600060408201905061181860008301856116c3565b6118256020830184611378565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061189582611302565b91506118a083611302565b92508282039050818111156118b8576118b761185b565b5b92915050565b6000815190506118cd8161146d565b92915050565b6000602082840312156118e9576118e861129f565b5b60006118f7848285016118be565b91505092915050565b600061190b82611460565b915061191683611460565b925082820261192481611460565b91508082146119365761193561185b565b5b5092915050565b600061194882611460565b915061195383611460565b925082820390506f7fffffffffffffffffffffffffffffff81137fffffffffffffffffffffffffffffffff800000000000000000000000000000008212171561199f5761199e61185b565b5b92915050565b6000815190506119b48161130c565b92915050565b6000602082840312156119d0576119cf61129f565b5b60006119de848285016119a5565b91505092915050565b6000815190506119f6816112d6565b92915050565b600060208284031215611a1257611a1161129f565b5b6000611a20848285016119e7565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611a6382611302565b9150611a6e83611302565b925082611a7e57611a7d611a29565b5b828204905092915050565b6000611a9482611302565b9150611a9f83611302565b9250828202611aad81611302565b91508282048414831517611ac457611ac361185b565b5b5092915050565b6000611ad682611302565b9150611ae183611302565b9250828201905080821115611af957611af861185b565b5b92915050565b6000611b0a82611302565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b3c57611b3b61185b565b5b600182019050919050565b6000604082019050611b5c60008301856117d9565b611b696020830184611378565b9392505050565b600082825260208201905092915050565b7f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060008201527f6e6577206f776e65720000000000000000000000000000000000000000000000602082015250565b6000611bdd602983611b70565b9150611be882611b81565b604082019050919050565b60006020820190508181036000830152611c0c81611bd0565b9050919050565b6000611c1e82611460565b9150611c2983611460565b925082820190507fffffffffffffffffffffffffffffffff8000000000000000000000000000000081126f7fffffffffffffffffffffffffffffff82131715611c7557611c7461185b565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611cb1602083611b70565b9150611cbc82611c7b565b602082019050919050565b60006020820190508181036000830152611ce081611ca4565b905091905056fea2646970667358221220199f8b722abdeb667c526317f3ce18726b31089235005f6ef02d2143ef1d8ff564736f6c63430008130033000000000000000000000000751a728d74eb37c7a7f4e35f9853f37e76d437fc