1.4k txs
1.4k calls
constructor
constructor(address _JOJO, address _USDC)
functions
accRewardPerShare
viewfunction accRewardPerShare() view returns (uint256)
balanceOf
viewfunction balanceOf(address _user) view returns (uint256)
calculateVeJOJO
purefunction calculateVeJOJO(uint256 _amount, uint256 _lockTime) pure returns (uint256)
decimals
viewfunction decimals() view returns (uint8)
delegatedVotes
viewfunction delegatedVotes(address) view returns (uint256)
getVotes
viewfunction getVotes(address _account) view returns (uint256)
JOJO
viewfunction JOJO() view returns (address)
owner
viewfunction owner() view returns (address)
pendingReward
viewfunction pendingReward(address _user) view returns (uint256)
REWARD_PERIOD
viewfunction REWARD_PERIOD() view returns (uint256)
totalSupply
viewfunction totalSupply() view returns (uint256)
USDC
viewfunction USDC() view returns (address)
userLockCount
viewfunction userLockCount(address) view returns (uint256)
userLocks
viewfunction userLocks(address, uint256) view returns (uint256 amount, uint256 end, uint256 veJOJOAmount, uint256 rewardDebt, address delegate)
addReward
nonpayablefunction addReward(uint256 _amount)
claimReward
nonpayablefunction claimReward()
delegate
nonpayablefunction delegate(uint256 _lockId, address _delegatee)
deposit
nonpayablefunction deposit(uint256 _amount, uint256 _lockTime)
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw(uint256 _lockId)
events
DelegateChanged
event DelegateChanged(address indexed delegator, uint256 indexed lockId, address indexed fromDelegate, address toDelegate)
DelegateVotesChanged
event DelegateVotesChanged(address indexed delegate, uint256 previousBalance, uint256 newBalance)
Deposit
event Deposit(address indexed user, uint256 lockId, uint256 amount, uint256 lockTime, uint256 veJOJOAmount)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
RewardAdded
event RewardAdded(uint256 amount)
RewardClaimed
event RewardClaimed(address indexed user, uint256 amount)
Withdraw
event Withdraw(address indexed user, uint256 lockId, uint256 amount)
errors
No errors.
creation bytecode
0x60c06040523480156200001157600080fd5b50604051620018ef380380620018ef8339810160408190526200003491620000cb565b600160005562000044336200005c565b6001600160a01b039182166080521660a05262000103565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b80516001600160a01b0381168114620000c657600080fd5b919050565b60008060408385031215620000df57600080fd5b620000ea83620000ae565b9150620000fa60208401620000ae565b90509250929050565b60805160a0516117a36200014c600039600081816101f70152818161097401528181610b140152610cad01526000818161028c015281816108960152610df101526117a36000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80638da5cb5b116100b8578063aa33fedb1161007c578063aa33fedb146102ae578063b88a802f1461032d578063d364d4d414610335578063e2bbb15814610355578063f2fde38b14610368578063f40f0f521461037b57600080fd5b80638da5cb5b14610231578063939d6237146102425780639ab24eb01461024b578063a37811ed14610274578063a706cec11461028757600080fd5b80633c8ab1fd116100ff5780633c8ab1fd146101a457806370a08231146101c4578063715018a6146101d757806374de4ec4146101df57806389a30271146101f257600080fd5b806308bbb8241461013c5780630a171df81461015157806318160ddd1461016e5780632e1a7d4d14610177578063313ce5671461018a575b600080fd5b61014f61014a366004611577565b61038e565b005b61015b62093a8081565b6040519081526020015b60405180910390f35b61015b60045481565b61014f6101853660046115a3565b6106d6565b610192601281565b60405160ff9091168152602001610165565b61015b6101b23660046115bc565b60036020526000908152604090205481565b61015b6101d23660046115bc565b6109ee565b61014f610aa5565b61014f6101ed3660046115a3565b610ab9565b6102197f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610165565b6001546001600160a01b0316610219565b61015b60055481565b61015b6102593660046115bc565b6001600160a01b031660009081526006602052604090205490565b61015b6102823660046115d7565b610ba7565b6102197f000000000000000000000000000000000000000000000000000000000000000081565b6102fc6102bc3660046115f9565b600260208181526000938452604080852090915291835291208054600182015492820154600383015460049093015491939290916001600160a01b031685565b6040805195865260208601949094529284019190915260608301526001600160a01b0316608082015260a001610165565b61014f610bcb565b61015b6103433660046115bc565b60066020526000908152604090205481565b61014f6103633660046115d7565b610d14565b61014f6103763660046115bc565b610ff1565b61015b6103893660046115bc565b611067565b3360009081526003602052604090205482106103e35760405162461bcd60e51b815260206004820152600f60248201526e125b9d985b1a59081b1bd8dac81251608a1b60448201526064015b60405180910390fd5b6001600160a01b0381166104395760405162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742064656c656761746520746f207a65726f20616464726573730060448201526064016103da565b336000908152600260209081526040808320858452909152902080546104925760405162461bcd60e51b815260206004820152600e60248201526d4e6f206c6f636b6564204a4f4a4f60901b60448201526064016103da565b806001015442106104d45760405162461bcd60e51b815260206004820152600c60248201526b131bd8dac8195e1c1a5c995960a21b60448201526064016103da565b60048101546001600160a01b03908116908316810361053f5760405162461bcd60e51b815260206004820152602160248201527f416c72656164792064656c65676174656420746f2074686973206164647265736044820152607360f81b60648201526084016103da565b60028201546001600160a01b0382166000908152600660205260408120805490919061056c908490611639565b909155505060028201546001600160a01b038216600081815260066020526040902054909160008051602061174e833981519152916105ab919061164c565b6001600160a01b038416600090815260066020908152604091829020548251938452908301520160405180910390a26004820180546001600160a01b0319166001600160a01b0385169081179091556002830154600091825260066020526040822080549192909161061e90849061164c565b90915550506040516001600160a01b038481168252821690859033907fb846dc53d3621f480d692e73f4473156d20f23ff6b2c8237b7130b883226cca99060200160405180910390a460028201546001600160a01b038416600081815260066020526040902054909160008051602061174e833981519152916106a19190611639565b6001600160a01b038616600090815260066020908152604091829020548251938452908301520160405180910390a250505050565b6106de61114b565b33600090815260036020526040902054811061072e5760405162461bcd60e51b815260206004820152600f60248201526e125b9d985b1a59081b1bd8dac81251608a1b60448201526064016103da565b336000908152600260209081526040808320848452909152902060018101544210156107945760405162461bcd60e51b8152602060048201526015602482015274131bd8dac81c195c9a5bd9081b9bdd08195b991959605a1b60448201526064016103da565b80546107d35760405162461bcd60e51b815260206004820152600e60248201526d4e6f206c6f636b6564204a4f4a4f60901b60448201526064016103da565b8054600282015460048301546001600160a01b031660008181526006602052604081208054849290610806908490611639565b90915550506001600160a01b03811660008181526006602052604090205460008051602061174e8339815191529061083f90859061164c565b6001600160a01b038416600090815260066020908152604091829020548251938452908301520160405180910390a260008085556001850181905560028501556004840180546001600160a01b03191690556108c57f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633856111a4565b81600460008282546108d79190611639565b9091555050604080518681526020810185905233917ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568910160405180910390a26000670de0b6b3a764000060055484610930919061165f565b61093a9190611676565b905060008560030154821161095057600061095f565b600386015461095f9083611639565b905080156109d15761099b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836111a4565b60405181815233907f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72419060200160405180910390a25b600086600301819055505050505050506109eb6001600055565b50565b600080805b6001600160a01b038416600090815260036020526040902054811015610a9e576001600160a01b038085166000908152600260208181526040808420868552825292839020835160a0810185528154808252600183015493820193909352928101549383019390935260038301546060830152600490920154909216608083015215610a8b576040810151610a88908461164c565b92505b5080610a9681611698565b9150506109f3565b5092915050565b610aad61120c565b610ab76000611266565b565b610ac161120c565b600060045411610b075760405162461bcd60e51b81526020600482015260116024820152704e6f2076654a4f4a4f20686f6c6465727360781b60448201526064016103da565b610b3c6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330846112b8565b600454610b5182670de0b6b3a764000061165f565b610b5b9190611676565b60056000828254610b6c919061164c565b90915550506040518181527fde88a922e0d3b88b24e9623efeb464919c6bf9f66857a65e2bfcf2ce87a9433d9060200160405180910390a150565b6000630784ce00610bb8838561165f565b610bc29190611676565b90505b92915050565b610bd361114b565b6000610bde33611067565b905060008111610c265760405162461bcd60e51b81526020600482015260136024820152724e6f207265776172647320746f20636c61696d60681b60448201526064016103da565b60005b33600090815260036020526040902054811015610c9f573360009081526002602090815260408083208484529091529020805415610c8c57670de0b6b3a76400006005548260020154610c7c919061165f565b610c869190611676565b60038201555b5080610c9781611698565b915050610c29565b50610cd46001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836111a4565b60405181815233907f106f923f993c2149d49b4255ff723acafa1f2d94393f561d3eda32ae348f72419060200160405180910390a250610ab76001600055565b610d1c61114b565b60008211610d6c5760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e203000000060448201526064016103da565b62093a808110158015610d835750630784ce008111155b610de45760405162461bcd60e51b815260206004820152602c60248201527f4c6f636b2074696d65206d757374206265206265747765656e2031207765656b60448201526b20616e64203420796561727360a01b60648201526084016103da565b610e196001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330856112b8565b6000610e258383610ba7565b3360009081526003602090815260409182902054825160a081019093528683529293508101610e54854261164c565b8152602001838152602001670de0b6b3a764000060055485610e76919061165f565b610e809190611676565b815233602091820181905260008181526002808452604080832087845285528083208651815586860151600182015586820151928101929092556060860151600380840191909155608090960151600490920180546001600160a01b0319166001600160a01b0390931692909217909155918152929091528120805491610f0683611698565b91905055508160046000828254610f1d919061164c565b90915550503360009081526006602052604081208054849290610f4190849061164c565b90915550503360008181526006602052604090205460008051602061174e83398151915290610f71908590611639565b33600090815260066020908152604091829020548251938452908301520160405180910390a260408051828152602081018690529081018490526060810183905233907f7162984403f6c73c8639375d45a9187dfd04602231bd8e587c415718b5f7e5f99060800160405180910390a25050610fed6001600055565b5050565b610ff961120c565b6001600160a01b03811661105e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103da565b6109eb81611266565b600080805b6001600160a01b038416600090815260036020526040902054811015610a9e576001600160a01b038085166000908152600260208181526040808420868552825292839020835160a08101855281548082526001830154938201939093529281015493830193909352600383015460608301526004909201549092166080830152156111385760008160600151670de0b6b3a76400006005548460400151611114919061165f565b61111e9190611676565b6111289190611639565b9050611134818561164c565b9350505b508061114381611698565b91505061106c565b60026000540361119d5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103da565b6002600055565b6040516001600160a01b03831660248201526044810182905261120790849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526112f6565b505050565b6001546001600160a01b03163314610ab75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103da565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040516001600160a01b03808516602483015283166044820152606481018290526112f09085906323b872dd60e01b906084016111d0565b50505050565b600061134b826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166113cb9092919063ffffffff16565b905080516000148061136c57508080602001905181019061136c91906116b1565b6112075760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016103da565b60606113da84846000856113e2565b949350505050565b6060824710156114435760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016103da565b600080866001600160a01b0316858760405161145f91906116fe565b60006040518083038185875af1925050503d806000811461149c576040519150601f19603f3d011682016040523d82523d6000602084013e6114a1565b606091505b50915091506114b2878383876114bd565b979650505050505050565b6060831561152c578251600003611525576001600160a01b0385163b6115255760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016103da565b50816113da565b6113da83838151156115415781518083602001fd5b8060405162461bcd60e51b81526004016103da919061171a565b80356001600160a01b038116811461157257600080fd5b919050565b6000806040838503121561158a57600080fd5b8235915061159a6020840161155b565b90509250929050565b6000602082840312156115b557600080fd5b5035919050565b6000602082840312156115ce57600080fd5b610bc28261155b565b600080604083850312156115ea57600080fd5b50508035926020909101359150565b6000806040838503121561160c57600080fd5b6116158361155b565b946020939093013593505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610bc557610bc5611623565b80820180821115610bc557610bc5611623565b8082028115828204841417610bc557610bc5611623565b60008261169357634e487b7160e01b600052601260045260246000fd5b500490565b6000600182016116aa576116aa611623565b5060010190565b6000602082840312156116c357600080fd5b815180151581146116d357600080fd5b9392505050565b60005b838110156116f55781810151838201526020016116dd565b50506000910152565b600082516117108184602087016116da565b9190910192915050565b60208152600082518060208401526117398160408501602087016116da565b601f01601f1916919091016040019291505056fedec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724a2646970667358221220c59506b262fcdb6a2558953ecc2e6f27e8559b917429bb0819fff46d553718b464736f6c634300081300330000000000000000000000000645bc5cdff2376089323ac20df4119e48e4bcc4000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda02913