0 txs
2 calls
constructor
constructor(address _msgReceiveEndpoint)
functions
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
calculateClaimable
viewfunction calculateClaimable(uint256 startTime, uint256 endTime, uint256 amount, uint256 claimedAmount) view returns (uint256)
currentVestingId
viewfunction currentVestingId() view returns (uint256)
decimals
viewfunction decimals() view returns (uint256)
DOMAIN_SEPARATOR
viewfunction DOMAIN_SEPARATOR() view returns (bytes32)
fctrToken
viewfunction fctrToken() view returns (address)
gaugeController
viewfunction gaugeController() view returns (address)
msgReceiveEndpoint
viewfunction msgReceiveEndpoint() view returns (address)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
vestingSchedules
viewfunction vestingSchedules(uint256) view returns (uint256 startTime, uint256 endTime, uint256 amount, uint256 claimedAmount, address user)
vestingTime
viewfunction vestingTime() view returns (uint256)
whitelist
viewfunction whitelist(address) view returns (bool)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
claimVesting
nonpayablefunction claimVesting(uint256 vestingId)
claimVestings
nonpayablefunction claimVestings(uint256[] vestingIds)
createVesting
nonpayablefunction createVesting(uint256 amount)
executeMessage
nonpayablefunction executeMessage(bytes message)
fundFctr
nonpayablefunction fundFctr(uint256 amount)
initialize
nonpayablefunction initialize(address _gaugeController, address _fctrTokenAddress, uint256 _vestingTime)
mint
nonpayablefunction mint(address to, uint256 amount)
permit
nonpayablefunction permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s)
renounceOwnership
nonpayablefunction renounceOwnership()
setVestingTime
nonpayablefunction setVestingTime(uint256 _days)
setWhitelist
nonpayablefunction setWhitelist(address _contract, bool active)
transfer
nonpayablefunction transfer(address to, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 amount) returns (bool)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdrawFctr
nonpayablefunction withdrawFctr(uint256 amount)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 amount)
Initialized
event Initialized(uint64 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
TokensClaimed
event TokensClaimed(uint256 vestingId, uint256 amountClaimed)
Transfer
event Transfer(address indexed from, address indexed to, uint256 amount)
VestingCreated
event VestingCreated(uint256 vestingId, uint256 startTime, uint256 endTime, uint256 amount, address user)
VestingTimeChanged
event VestingTimeChanged(uint256 _days)
WhitelistChanged
event WhitelistChanged(address _contract, bool active)
errors
InsufficientBalance
error InsufficientBalance()
InvalidInitialization
error InvalidInitialization()
MsgNotFromReceiveEndpoint
error MsgNotFromReceiveEndpoint(address sender)
NotInitializing
error NotInitializing()
NotScheduleOwner
error NotScheduleOwner()
NotTransferable
error NotTransferable()
OnlyGaugeControllerCanMint
error OnlyGaugeControllerCanMint()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
VestingFullyClaimed
error VestingFullyClaimed()
creation bytecode
0x60a060405234801562000010575f80fd5b5060405162001dcf38038062001dcf833981016040819052620000339162000103565b6200003d6200004f565b6001600160a01b031660805262000132565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000a05760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620001005780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b5f6020828403121562000114575f80fd5b81516001600160a01b03811681146200012b575f80fd5b9392505050565b608051611c7d620001525f395f818161028a01526110120152611c7d5ff3fe608060405234801561000f575f80fd5b50600436106101dc575f3560e01c806370a08231116101095780639b71151d1161009e578063d505accf1161006e578063d505accf1461043e578063e0299bf514610451578063f2fde38b14610464578063ff4ff86f14610477575f80fd5b80639b71151d146103fc578063a9059cbb1461040f578063ac97b41714610422578063c7dab43614610435575f80fd5b80638da5cb5b116100d95780638da5cb5b146103b757806395d89b41146103bf57806399eecb3b146103c75780639b19251a146103da575f80fd5b806370a0823114610376578063715018a6146103895780638029216014610391578063839f1f68146103a4575f80fd5b80632d70139f1161017f57806340c10f191161014f57806340c10f19146102e757806353d6fd59146102fa57806363ae30c61461030d5780636d3cbe2114610320575f80fd5b80632d70139f146102855780632f2abd6f146102c4578063313ce567146102d75780633644e515146102df575f80fd5b806318160ddd116101ba57806318160ddd1461023657806323b872dd1461024c57806326bce3461461025f5780632b0f5d4514610272575f80fd5b806306fdde03146101e0578063095ea7b3146101fe5780631794bb3c14610221575b5f80fd5b6101e8610480565b6040516101f591906116b0565b60405180910390f35b61021161020c36600461170f565b610516565b60405190151581526020016101f5565b61023461022f366004611739565b61058f565b005b61023e61072d565b6040519081526020016101f5565b61021161025a366004611739565b61073f565b61023e61026d366004611777565b610864565b6102346102803660046117a6565b6108c7565b6102ac7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101f5565b6102346102d23660046117bd565b61095b565b61023e6109b2565b61023e6109c7565b6102346102f536600461170f565b6109f8565b610234610308366004611839565b610a4b565b600e546102ac906001600160a01b031681565b61036561032e3660046117a6565b600a6020525f908152604090208054600182015460028301546003840154600490940154929391929091906001600160a01b031685565b6040516101f5959493929190611870565b61023e61038436600461189c565b610ab5565b610234610adf565b61023461039f3660046117a6565b610af2565b6102346103b23660046117a6565b610b35565b6102ac610b72565b6101e8610ba0565b6009546102ac906001600160a01b031681565b6102116103e836600461189c565b600b6020525f908152604090205460ff1681565b61023461040a3660046117a6565b610bb8565b61021161041d36600461170f565b610cf4565b6102346104303660046117a6565b610d7e565b61023e600d5481565b61023461044c3660046118be565b610da6565b61023461045f36600461192f565b611007565b61023461047236600461189c565b611074565b61023e600c5481565b606061048a6110ae565b805461049590611989565b80601f01602080910402602001604051908101604052809291908181526020018280546104c190611989565b801561050c5780601f106104e35761010080835404028352916020019161050c565b820191905f5260205f20905b8154815290600101906020018083116104ef57829003601f168201915b5050505050905090565b5f816105206110ae565b335f818152600592909201602090815260408084206001600160a01b0389168086529252928390209390935590517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061057d9086815260200190565b60405180910390a35060015b92915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156105d45750825b90505f8267ffffffffffffffff1660011480156105f05750303b155b9050811580156105fe575080155b1561061c5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561064657845460ff60401b1916600160401b1785555b6106976040518060400160405280600f81526020016e22b9b1b937bbb2b2102330b1ba37b960891b8152506040518060400160405280600681526020016532b9a321aa2960d11b81525060126110d2565b6106a03361114b565b6106a861115c565b600980546001600160a01b03808b166001600160a01b031992831617909255600e8054928a1692909116919091179055600d869055831561072357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b5f6107366110ae565b60030154905090565b5f61074b84848461116c565b5f6107546110ae565b6001600160a01b0386165f9081526005919091016020908152604080832033845290915290205490505f1981146107bf5761078f83826119d5565b6107976110ae565b6001600160a01b0387165f908152600591909101602090815260408083203384529091529020555b826107c86110ae565b6004015f876001600160a01b03166001600160a01b031681526020019081526020015f205f8282546107fa91906119d5565b909155508390506108096110ae565b6001600160a01b038087165f81815260049390930160205260409283902080549094019093559051908716905f80516020611c08833981519152906108519087815260200190565b60405180910390a3506001949350505050565b5f42848111156108715750835b5f61087c87836119d5565b90505f61088988886119d5565b90505f8161089784896119e8565b6108a191906119ff565b90508581116108b0575f6108ba565b6108ba86826119d5565b9998505050505050505050565b6108cf611277565b600e546001600160a01b031663a9059cbb6108e8610b72565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044015b6020604051808303815f875af1158015610933573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109579190611a1e565b5050565b6109636112a9565b80335f5b82811015610999576109918286868481811061098557610985611a39565b905060200201356112e0565b600101610967565b50505061095760015f80516020611c2883398151915255565b5f6109bb6110ae565b6002015460ff16919050565b5f6109d06110ae565b6006015446146109e7576109e261144d565b905090565b6109ef6110ae565b60070154905090565b610a006112a9565b6009546001600160a01b03163314610a2b57604051635f6c6ed760e11b815260040160405180910390fd5b610a3582826114db565b61095760015f80516020611c2883398151915255565b610a53611277565b6001600160a01b0382165f818152600b6020908152604091829020805460ff19168515159081179091558251938452908301527fb840a1dbd8b09a3dc45161bba92dfb9aba643c0e44c085a447f839d1d02cf13b910160405180910390a15050565b5f610abe6110ae565b6001600160a01b039092165f90815260049290920160205250604090205490565b610ae7611277565b610af05f61155d565b565b610afa611277565b600d8190556040518181527f9c8ca27381189a1f0067c323b5299f3cc2b02a515f4b85571188fccf88b88da19060200160405180910390a150565b600e546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401610917565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6060610baa6110ae565b600101805461049590611989565b610bc06112a9565b80610bca33610ab5565b1015610be957604051631e9acf1760e31b815260040160405180910390fd5b610bf33082610cf4565b50600c80545f9182610c0483611a4d565b9190505590505f6040518060a00160405280428152602001600d5442610c2a9190611a65565b815260208082018690525f6040808401829052336060948501819052878352600a845291819020855180825593860151600182018190558683015160028301559486015160038201556080860151600490910180546001600160a01b0319166001600160a01b03909216919091179055519394507f80f5896ff52384602f4fcb53e7a0261586d111172768e4990026a6309274d30e93610cd1938793929091899190611870565b60405180910390a15050610cf160015f80516020611c2883398151915255565b50565b5f610d0033848461116c565b81610d096110ae565b335f908152600491909101602052604081208054909190610d2b9084906119d5565b90915550829050610d3a6110ae565b6001600160a01b0385165f81815260049290920160205260409182902080549093019092555133905f80516020611c088339815191529061057d9086815260200190565b610d866112a9565b610d9033826112e0565b610cf160015f80516020611c2883398151915255565b42841015610dfb5760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f4558504952454400000000000000000060448201526064015b60405180910390fd5b5f6001610e066109c7565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a610e326110ae565b6001600160a01b038f81165f90815260089290920160209081526040928390208054600181019091558351808301989098529582168784015293166060860152608085019190915260a084019290925260c08084018b90528251808503909101815260e08401909252815191012061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f1981840301815282825280516020918201205f84529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa158015610f1d573d5f803e3d5ffd5b5050604051601f1901519150506001600160a01b03811615801590610f535750876001600160a01b0316816001600160a01b0316145b610f905760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b6044820152606401610df2565b85610f996110ae565b6001600160a01b039283165f908152600591909101602090815260408083208b86168085529083529281902093909355915188815290928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461105257604051632b5c157560e11b8152336004820152602401610df2565b5f806110608385018561170f565b9150915061106e82826114db565b50505050565b61107c611277565b6001600160a01b0381166110a557604051631e4fbdf760e01b81525f6004820152602401610df2565b610cf18161155d565b7fa2fed46d035a3ee9bc9c610a4dd99382330c8e40428fb5f9e6c4aac76b2236e690565b6110da6115cd565b826110e36110ae565b906110ee9082611ad9565b50816110f86110ae565b600101906111069082611ad9565b50806111106110ae565b600201805460ff191660ff929092169190911790554661112e6110ae565b6006015561113a61144d565b6111426110ae565b60070155505050565b6111536115cd565b610cf181611616565b6111646115cd565b610af061161e565b600954604051630c5aed5760e01b81526001600160a01b03858116600483015290911690630c5aed5790602401602060405180830381865afa1580156111b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d89190611a1e565b15156001148061120457506001600160a01b0383165f908152600b602052604090205460ff1615156001145b8061121757506001600160a01b03821630145b8061122f57506009546001600160a01b038481169116145b8061124157506001600160a01b038316155b8061125357506001600160a01b038216155b1561125e575b505050565b60405163dc8d8db760e01b815260040160405180910390fd5b33611280610b72565b6001600160a01b031614610af05760405163118cdaa760e01b8152336004820152602401610df2565b5f80516020611c288339815191528054600119016112da57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b5f818152600a6020526040902060028101546003820154106113155760405163b817a14560e01b815260040160405180910390fd5b60048101546001600160a01b0384811691161461134557604051637580292560e01b815260040160405180910390fd5b5f611361825f0154836001015484600201548560030154610864565b905080826003015f8282546113769190611a65565b9091555061138690503082611626565b600e5460405163a9059cbb60e01b81526001600160a01b038681166004830152602482018490529091169063a9059cbb906044016020604051808303815f875af11580156113d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113fa9190611a1e565b5060408051848152602081018390527fbde2d72390af9d0444bb1c4f938971ecb673ed26f5f57f8fa44c553fe01d0d3a910160405180910390a150505050565b60015f80516020611c2883398151915255565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6114776110ae565b6040516114849190611b95565b6040519081900381206114c092917fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc69046903090602001611870565b60405160208183030381529060405280519060200120905090565b6114e65f838361116c565b806114ef6110ae565b6003015f8282546115009190611a65565b9091555081905061150f6110ae565b6001600160a01b0384165f8181526004929092016020526040808320805490940190935591515f80516020611c08833981519152906115519085815260200190565b60405180910390a35050565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16610af057604051631afcd79f60e31b815260040160405180910390fd5b61107c6115cd565b61143a6115cd565b611631825f8361116c565b8061163a6110ae565b6004015f846001600160a01b03166001600160a01b031681526020019081526020015f205f82825461166c91906119d5565b9091555081905061167b6110ae565b60030180549190910390556040518181525f906001600160a01b038416905f80516020611c0883398151915290602001611551565b5f6020808352835180828501525f5b818110156116db578581018301518582016040015282016116bf565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610cf1575f80fd5b5f8060408385031215611720575f80fd5b823561172b816116fb565b946020939093013593505050565b5f805f6060848603121561174b575f80fd5b8335611756816116fb565b92506020840135611766816116fb565b929592945050506040919091013590565b5f805f806080858703121561178a575f80fd5b5050823594602084013594506040840135936060013592509050565b5f602082840312156117b6575f80fd5b5035919050565b5f80602083850312156117ce575f80fd5b823567ffffffffffffffff808211156117e5575f80fd5b818501915085601f8301126117f8575f80fd5b813581811115611806575f80fd5b8660208260051b850101111561181a575f80fd5b60209290920196919550909350505050565b8015158114610cf1575f80fd5b5f806040838503121561184a575f80fd5b8235611855816116fb565b915060208301356118658161182c565b809150509250929050565b9485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b5f602082840312156118ac575f80fd5b81356118b7816116fb565b9392505050565b5f805f805f805f60e0888a0312156118d4575f80fd5b87356118df816116fb565b965060208801356118ef816116fb565b95506040880135945060608801359350608088013560ff81168114611912575f80fd5b9699959850939692959460a0840135945060c09093013592915050565b5f8060208385031215611940575f80fd5b823567ffffffffffffffff80821115611957575f80fd5b818501915085601f83011261196a575f80fd5b813581811115611978575f80fd5b86602082850101111561181a575f80fd5b600181811c9082168061199d57607f821691505b6020821081036119bb57634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610589576105896119c1565b8082028115828204841417610589576105896119c1565b5f82611a1957634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611a2e575f80fd5b81516118b78161182c565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611a5e57611a5e6119c1565b5060010190565b80820180821115610589576105896119c1565b634e487b7160e01b5f52604160045260245ffd5b601f821115611259575f81815260208120601f850160051c81016020861015611ab25750805b601f850160051c820191505b81811015611ad157828155600101611abe565b505050505050565b815167ffffffffffffffff811115611af357611af3611a78565b611b0781611b018454611989565b84611a8c565b602080601f831160018114611b3a575f8415611b235750858301515b5f19600386901b1c1916600185901b178555611ad1565b5f85815260208120601f198616915b82811015611b6857888601518255948401946001909101908401611b49565b5085821015611b8557878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b5f808354611ba281611989565b60018281168015611bba5760018114611bcf57611bfb565b60ff1984168752821515830287019450611bfb565b875f526020805f205f5b85811015611bf25781548a820152908401908201611bd9565b50505082870194505b5092969550505050505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00a2646970667358221220cf16435e5d0122dcc7dd836bcb1a24f10b0853b2caf354bae4c6c2085abc0d1364736f6c63430008140033000000000000000000000000091e29670c2f00a25e68bc499d51f9aae45608bb