My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Latest 11 internal transactions
[ Download CSV Export ]
Contract Name:
ClaimAggregator
Compiler Version
v0.6.6+commit.6c089d02
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
pragma solidity =0.6.6; pragma experimental ABIEncoderV2; import "./interfaces/IBorrowable.sol"; import "./interfaces/IFarmingPool.sol"; contract ClaimAggregator { constructor() public {} function trackBorrows(address account, address[] calldata borrowables) external { for (uint i = 0; i < borrowables.length; i++) { IBorrowable(borrowables[i]).trackBorrow(account); } } function claims(address account, address[] calldata farmingPools) external returns (uint amount) { for (uint i = 0; i < farmingPools.length; i++) { amount += IFarmingPool(farmingPools[i]).claimAccount(account); } } }
pragma solidity >=0.5.0; interface IBorrowable { /*** Tarot ERC20 ***/ event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom( address from, address to, uint value ) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit( address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s ) external; /*** Pool Token ***/ event Mint(address indexed sender, address indexed minter, uint mintAmount, uint mintTokens); event Redeem(address indexed sender, address indexed redeemer, uint redeemAmount, uint redeemTokens); event Sync(uint totalBalance); function underlying() external view returns (address); function factory() external view returns (address); function totalBalance() external view returns (uint); function MINIMUM_LIQUIDITY() external pure returns (uint); function exchangeRate() external returns (uint); function mint(address minter) external returns (uint mintTokens); function redeem(address redeemer) external returns (uint redeemAmount); function skim(address to) external; function sync() external; function _setFactory() external; /*** Borrowable ***/ event BorrowApproval(address indexed owner, address indexed spender, uint value); event Borrow( address indexed sender, address indexed borrower, address indexed receiver, uint borrowAmount, uint repayAmount, uint accountBorrowsPrior, uint accountBorrows, uint totalBorrows ); event Liquidate( address indexed sender, address indexed borrower, address indexed liquidator, uint seizeTokens, uint repayAmount, uint accountBorrowsPrior, uint accountBorrows, uint totalBorrows ); function BORROW_FEE() external pure returns (uint); function collateral() external view returns (address); function reserveFactor() external view returns (uint); function exchangeRateLast() external view returns (uint); function borrowIndex() external view returns (uint); function totalBorrows() external view returns (uint); function borrowAllowance(address owner, address spender) external view returns (uint); function borrowBalance(address borrower) external view returns (uint); function borrowTracker() external view returns (address); function BORROW_PERMIT_TYPEHASH() external pure returns (bytes32); function borrowApprove(address spender, uint256 value) external returns (bool); function borrowPermit( address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s ) external; function borrow( address borrower, address receiver, uint borrowAmount, bytes calldata data ) external; function liquidate(address borrower, address liquidator) external returns (uint seizeTokens); function trackBorrow(address borrower) external; /*** Borrowable Interest Rate Model ***/ event AccrueInterest(uint interestAccumulated, uint borrowIndex, uint totalBorrows); event CalculateKink(uint kinkRate); event CalculateBorrowRate(uint borrowRate); function KINK_BORROW_RATE_MAX() external pure returns (uint); function KINK_BORROW_RATE_MIN() external pure returns (uint); function KINK_MULTIPLIER() external pure returns (uint); function borrowRate() external view returns (uint); function kinkBorrowRate() external view returns (uint); function kinkUtilizationRate() external view returns (uint); function adjustSpeed() external view returns (uint); function rateUpdateTimestamp() external view returns (uint32); function accrualTimestamp() external view returns (uint32); function accrueInterest() external; /*** Borrowable Setter ***/ event NewReserveFactor(uint newReserveFactor); event NewKinkUtilizationRate(uint newKinkUtilizationRate); event NewAdjustSpeed(uint newAdjustSpeed); event NewBorrowTracker(address newBorrowTracker); function RESERVE_FACTOR_MAX() external pure returns (uint); function KINK_UR_MIN() external pure returns (uint); function KINK_UR_MAX() external pure returns (uint); function ADJUST_SPEED_MIN() external pure returns (uint); function ADJUST_SPEED_MAX() external pure returns (uint); function _initialize( string calldata _name, string calldata _symbol, address _underlying, address _collateral ) external; function _setReserveFactor(uint newReserveFactor) external; function _setKinkUtilizationRate(uint newKinkUtilizationRate) external; function _setAdjustSpeed(uint newAdjustSpeed) external; function _setBorrowTracker(address newBorrowTracker) external; }
pragma solidity >=0.5.0; interface IFarmingPool { function tarot() external pure returns (address); function claimable() external pure returns (address); function borrowable() external pure returns (address); function vestingBegin() external pure returns (uint); function segmentLength() external pure returns (uint); function recipients(address) external view returns ( uint shares, uint lastShareIndex, uint credit ); function totalShares() external view returns (uint); function shareIndex() external view returns (uint); function epochBegin() external view returns (uint); function epochAmount() external view returns (uint); function lastUpdate() external view returns (uint); function updateShareIndex() external returns (uint _shareIndex); function updateCredit(address account) external returns (uint credit); function advance() external; function claim() external returns (uint amount); function claimAccount(address account) external returns (uint amount); function trackBorrow( address borrower, uint borrowBalance, uint borrowIndex ) external; event UpdateShareIndex(uint shareIndex); event UpdateCredit(address indexed account, uint lastShareIndex, uint credit); event Claim(address indexed account, uint amount); event EditRecipient(address indexed account, uint shares, uint totalShares); event Advance(uint epochBegin, uint epochAmount); }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address[]","name":"farmingPools","type":"address[]"}],"name":"claims","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address[]","name":"borrowables","type":"address[]"}],"name":"trackBorrows","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506102f6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806368188a4e1461003b5780639a3715ff14610050575b600080fd5b61004e610049366004610200565b610079565b005b61006361005e366004610200565b610114565b60405161007091906102b7565b60405180910390f35b60005b8181101561010e5782828281811061009057fe5b90506020020160208101906100a591906101d2565b6001600160a01b031663b7f1118a856040518263ffffffff1660e01b81526004016100d091906102a3565b600060405180830381600087803b1580156100ea57600080fd5b505af11580156100fe573d6000803e3d6000fd5b50506001909201915061007c9050565b50505050565b6000805b828110156101ca5783838281811061012c57fe5b905060200201602081019061014191906101d2565b6001600160a01b0316637429d95a866040518263ffffffff1660e01b815260040161016c91906102a3565b602060405180830381600087803b15801561018657600080fd5b505af115801561019a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101be919061028b565b90910190600101610118565b509392505050565b6000602082840312156101e3578081fd5b81356001600160a01b03811681146101f9578182fd5b9392505050565b600080600060408486031215610214578182fd5b83356001600160a01b038116811461022a578283fd5b9250602084013567ffffffffffffffff80821115610246578384fd5b81860187601f820112610257578485fd5b8035925081831115610267578485fd5b876020808502830101111561027a578485fd5b949760209095019650909450505050565b60006020828403121561029c578081fd5b5051919050565b6001600160a01b0391909116815260200190565b9081526020019056fea2646970667358221220a8bce8b05d98a6a103c256490de1b19253550b364c668874914f075528f5f6b764736f6c63430006060033
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Validator ID :
0 FTM
Amount Staked
0
Amount Delegated
0
Staking Total
0
Staking Start Epoch
0
Staking Start Time
0
Proof of Importance
0
Origination Score
0
Validation Score
0
Active
0
Online
0
Downtime
0 s
Address | Amount | claimed Rewards | Created On Epoch | Created On |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.