Contract Overview
Balance:
0 FTM
FTM Value:
$0.00
My Name Tag:
Not Available, login to update
Txn Hash | Method |
Block
|
From
|
To
|
Value | [Txn Fee] | |||
---|---|---|---|---|---|---|---|---|---|
0x75f89e92f7344014db87080631adcf7d70fabe61a6860771121638a2dc0b3edf | 0x60806040 | 63080133 | 8 days 10 hrs ago | 0x6fe45cbbb772bec886b8c01debbaecad60216438 | IN | Create: MulticallFantom | 0 FTM | 0.312440356768 |
[ Download CSV Export ]
Latest 1 internal transaction
Parent Txn Hash | Block | From | To | Value | |||
---|---|---|---|---|---|---|---|
0x75f89e92f7344014db87080631adcf7d70fabe61a6860771121638a2dc0b3edf | 63080133 | 8 days 10 hrs ago | 0x6fe45cbbb772bec886b8c01debbaecad60216438 | Contract Creation | 0 FTM |
[ Download CSV Export ]
Contract Name:
MulticallFantom
Compiler Version
v0.8.13+commit.abaa5c0e
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IBribe { function addReward(address rewardToken) external; function balanceOf(address account) external view returns (uint256); function _deposit(uint amount, address account) external; function _withdraw(uint amount, address account) external; function getRewardForOwner(address account) external; function notifyRewardAmount(address token, uint amount) external; function left(address token) external view returns (uint); function getRewardTokens() external view returns (address[] memory); function rewardPerToken(address reward) external view returns (uint); function earned(address account, address _rewardsToken) external view returns (uint); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IERC20 { function totalSupply() external view returns (uint256); function transfer(address recipient, uint amount) external returns (bool); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function balanceOf(address) external view returns (uint); function transferFrom(address sender, address recipient, uint amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); event Transfer(address indexed from, address indexed to, uint value); event Approval(address indexed owner, address indexed spender, uint value); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IGauge { function addReward(address rewardToken) external; function notifyRewardAmount(address token, uint amount) external; function getReward(address account) external; function claimVotingFees() external returns (uint claimed0, uint claimed1); function left(address token) external view returns (uint); function totalSupply() external view returns (uint); function balanceOf(address account) external view returns (uint); function rewardPerToken(address reward) external view returns (uint); function earned(address account, address reward) external view returns (uint); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IPlugin { function getUnderlyingTokenName() external view returns (string memory); function getUnderlyingTokenSymbol() external view returns (string memory); function getUnderlyingTokenAddress() external view returns (address); function getProtocol() external view returns (string memory); function getBribe() external view returns (address); function getTokensInUnderlying() external view returns (address[] memory); function getBribeTokens() external view returns (address[] memory); function getVoter() external view returns (address); function price() external view returns (uint); function claimAndDistribute() external; function setGauge(address _gauge) external; function setBribe(address _bribe) external; }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IRewarder { function addReward(address rewardToken) external; function _deposit(uint amount, address account) external; function _withdraw(uint amount, address account) external; function getReward() external; function notifyRewardAmount(address token, uint amount) external; function left(address token) external view returns (uint); function getRewardTokens() external view returns (address[] memory); function rewardPerToken(address reward) external view returns (uint); function earned(address account, address _rewardsToken) external view returns (uint); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface ITOKEN { function totalSupply() external view returns (uint); function balanceOf(address) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address, uint) external returns (bool); function transferFrom(address,address,uint) external returns (bool); function mint(address, uint) external; function treasury() external view returns (address); function VTOKEN() external view returns (address); function fees() external view returns (address); function debt(address account) external view returns (uint256); function borrowCreditBASE(address account) external view returns (uint256); function currentPrice() external view returns (uint256); function floorPrice() external view returns (uint256); function OTOKENPrice() external view returns (uint256); function sellMax() external view returns (uint256); function tvl() external view returns (uint256); function frBASE() external view returns (uint256); function mrvBASE() external view returns (uint256); function mrrBASE() external view returns (uint256); function mrrTOKEN() external view returns (uint256); function marketMaxTOKEN() external view returns (uint256); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IVoter { function VTOKEN() external view returns (address); function usedWeights(address account) external view returns (uint256); function pools(uint256 index) external view returns (address); function getPools() external view returns (address[] memory); function gauges(address pool) external view returns (address); function bribes(address pool) external view returns (address); function weights(address pool) external view returns (uint256); function totalWeight() external view returns (uint256); function emitDeposit(address account, uint amount) external; function emitWithdraw(address account, uint amount) external; function notifyRewardAmount(uint amount) external; function distribute(address _gauge) external; function treasury() external view returns (address); function votes(address account, address pool) external view returns (uint256); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; interface IVTOKEN { function balanceOf(address account) external view returns (uint256); function totalSupply() external view returns (uint256); function totalSupplyTOKEN() external view returns (uint256); function notifyRewardAmount(address reward, uint256 amount) external; function balanceOfTOKEN(address account) external view returns (uint256); function rewardPerToken(address reward) external view returns (uint); function earned(address account, address _rewardsToken) external view returns (uint256); function rewarder() external view returns (address); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.13; import 'contracts/interfaces/IERC20.sol'; import 'contracts/interfaces/IPlugin.sol'; import 'contracts/interfaces/IVoter.sol'; import 'contracts/interfaces/IGauge.sol'; import 'contracts/interfaces/IBribe.sol'; import 'contracts/interfaces/ITOKEN.sol'; import 'contracts/interfaces/IVTOKEN.sol'; import 'contracts/interfaces/IRewarder.sol'; interface IOracle { function latestAnswer() external view returns (int256); } contract MulticallFantom { address public constant BASE = 0x21be370D5312f44cB42ce377BC9b8a0cEF1A4C83; address public constant PRICE_ORACLE_BASE = 0xf4766552D15AE4d256Ad41B6cf2933482B0680dc; uint256 public constant FEE = 20; uint256 public constant DIVISOR = 1000; address public voter; address public TOKEN; address public VTOKEN; address public OTOKEN; address public rewarder; struct SwapCard { uint256 frBASE; uint256 mrvBASE; uint256 mrrBASE; uint256 mrrTOKEN; uint256 marketMaxTOKEN; } struct BondingCurve { uint256 priceBASE; // Base token like FTM or OP in USD uint256 priceTOKEN; // Price of GLOVE and xGLOVE in USD uint256 priceOTOKEN; // Price of POWER in USD uint256 maxMarketSell; uint256 tvl; uint256 supplyTOKEN; // supply of GLOVE uint256 supplyVTOKEN; // supply of xGLOVE uint256 apr; uint256 ltv; uint256 ratio; uint256 accountNATIVE; // FTM, ETH, CANTO uint256 accountBASE; // OP or WFTM, WCANTO, WETH amount that account has uint256 accountTOKEN; // user balance of GLOVE uint256 accountOTOKEN; // user balance of POWER uint256 accountEarnedBASE; // Base token rewards like OP and FTM uint256 accountEarnedTOKEN; // GLOVE rewards uint256 accountEarnedOTOKEN; // POWER rewards uint256 accountVTOKEN; // user balance of xGLOVE uint256 accountVotingPower; uint256 accountUsedWeights; uint256 accountBorrowCredit; // amount of base (OP or FTM) a user can borrow uint256 accountBorrowDebt; // amount of base (OP or FTM) a user owess uint256 accountMaxWithdraw; // max amount of GLOVE a user can unstake from xGLOVE } struct GaugeCard { string protocol; string symbol; address[] tokensInUnderlying; uint256 pluginPrice; uint256 priceOTOKEN; uint256 apr; uint256 tvl; uint256 votingWeight; uint256 accountUnderlyingTokens; uint256 accountUnstakedTokens; uint256 accountStakedTokens; uint256 accountEarnedOTOKEN; } struct BribeCard { string protocol; string symbol; address[] rewardTokens; uint256[] rewardsPerToken; uint256[] accountRewardsEarned; uint256 voteWeight; uint256 votePercent; uint256 accountVotePercent; } constructor(address _voter,address _TOKEN, address _VTOKEN, address _OTOKEN) { voter = _voter; TOKEN = _TOKEN; VTOKEN = _VTOKEN; OTOKEN = _OTOKEN; rewarder = IVTOKEN(_VTOKEN).rewarder(); } function quoteBuyIn(uint256 input, uint256 slippageTolerance) external view returns (uint256 output, uint256 slippage, uint256 minOutput) { uint256 feeBASE = input * FEE / DIVISOR; uint256 oldMrBASE = ITOKEN(TOKEN).mrvBASE() + ITOKEN(TOKEN).mrrBASE(); uint256 newMrBASE = oldMrBASE + input - feeBASE; uint256 oldMrTOKEN = ITOKEN(TOKEN).mrrTOKEN(); output = oldMrTOKEN - (oldMrBASE * oldMrTOKEN / newMrBASE); return (output, 100 * (1e18 - (output * 1e18 / ((input - feeBASE) * 1e18 / ITOKEN(TOKEN).currentPrice()))), (input * 1e18 / ITOKEN(TOKEN).currentPrice()) * slippageTolerance / DIVISOR); } function quoteBuyOut(uint256 input, uint256 slippageTolerance) external view returns (uint256 output, uint256 slippage, uint256 minOutput) { uint256 oldMrBASE = ITOKEN(TOKEN).mrvBASE() + ITOKEN(TOKEN).mrrBASE(); output = DIVISOR * ((oldMrBASE * ITOKEN(TOKEN).mrrTOKEN() / (ITOKEN(TOKEN).mrrTOKEN() - input)) - oldMrBASE) / (DIVISOR - FEE); return (output, 100 * (1e18 - (input * 1e18 / ((output - (output * FEE / DIVISOR)) * 1e18 / ITOKEN(TOKEN).currentPrice()))), input * slippageTolerance / DIVISOR); } function quoteSellIn(uint256 input, uint256 slippageTolerance) external view returns (uint256 output, uint256 slippage, uint256 minOutput) { uint256 feeTOKEN = input * FEE / DIVISOR; uint256 oldMrTOKEN = ITOKEN(TOKEN).mrrTOKEN(); uint256 newMrTOKEN = oldMrTOKEN + input - feeTOKEN; require(newMrTOKEN <= ITOKEN(TOKEN).marketMaxTOKEN(), 'Exceeds Market Reserves'); uint256 oldMrBASE = ITOKEN(TOKEN).mrvBASE() + ITOKEN(TOKEN).mrrBASE(); output = oldMrBASE - (oldMrBASE * oldMrTOKEN / newMrTOKEN); return (output, 100 * (1e18 - (output * 1e18 / ((input - feeTOKEN) * ITOKEN(TOKEN).currentPrice() / 1e18))), (input * ITOKEN(TOKEN).currentPrice() / 1e18) * slippageTolerance / DIVISOR); } function quoteSellOut(uint256 input, uint256 slippageTolerance) external view returns (uint256 output, uint256 slippage, uint256 minOutput) { require(input <= ITOKEN(TOKEN).marketMaxTOKEN(), 'Exceeds Market Reserves'); uint256 oldMrBASE = ITOKEN(TOKEN).mrvBASE() + ITOKEN(TOKEN).mrrBASE(); output = DIVISOR * ((oldMrBASE * ITOKEN(TOKEN).mrrTOKEN() / (oldMrBASE - input)) - ITOKEN(TOKEN).mrrTOKEN()) / (DIVISOR - FEE); return (output, 100 * (1e18 - (input * 1e18 / ((output - (output * FEE / DIVISOR)) * ITOKEN(TOKEN).currentPrice() / 1e18))), input * slippageTolerance / DIVISOR); } function getPools() external view returns (address[] memory) { return IVoter(voter).getPools(); } function pool(uint256 index) external view returns (address) { return IVoter(voter).pools(index); } function swapCardData() external view returns (SwapCard memory swapCard) { swapCard.frBASE = ITOKEN(TOKEN).frBASE(); swapCard.mrvBASE = ITOKEN(TOKEN).mrvBASE(); swapCard.mrrBASE = ITOKEN(TOKEN).mrrBASE(); swapCard.mrrTOKEN = ITOKEN(TOKEN).mrrTOKEN(); swapCard.marketMaxTOKEN = ITOKEN(TOKEN).marketMaxTOKEN(); swapCard.marketMaxTOKEN = 0; return swapCard; } function bondingCurveData(address account) external view returns (BondingCurve memory bondingCurve) { bondingCurve.priceBASE = uint256(IOracle(PRICE_ORACLE_BASE).latestAnswer()) * 1e18 / 1e8; bondingCurve.priceTOKEN = ITOKEN(TOKEN).currentPrice() * bondingCurve.priceBASE / 1e18; bondingCurve.priceOTOKEN = ITOKEN(TOKEN).OTOKENPrice() * bondingCurve.priceBASE / 1e18; bondingCurve.maxMarketSell = ITOKEN(TOKEN).sellMax(); bondingCurve.tvl = ITOKEN(TOKEN).tvl() * bondingCurve.priceBASE / 1e18; bondingCurve.supplyTOKEN = ITOKEN(TOKEN).totalSupply(); bondingCurve.supplyVTOKEN = IVTOKEN(VTOKEN).totalSupply(); bondingCurve.apr = ((IRewarder(rewarder).rewardPerToken(BASE) * bondingCurve.priceBASE / 1e18) + (IRewarder(rewarder).rewardPerToken(TOKEN) * bondingCurve.priceTOKEN / 1e18) + (IRewarder(rewarder).rewardPerToken(OTOKEN) * bondingCurve.priceOTOKEN / 1e18)) * 365 * 100 * 1e18 / (7 * bondingCurve.priceTOKEN); bondingCurve.ltv = 100 * ITOKEN(TOKEN).floorPrice() * 1e18 / ITOKEN(TOKEN).currentPrice(); bondingCurve.ratio = ITOKEN(TOKEN).currentPrice() * 1e18 / ITOKEN(TOKEN).floorPrice(); bondingCurve.accountNATIVE = (account == address(0) ? 0 : account.balance); bondingCurve.accountBASE = (account == address(0) ? 0 : IERC20(BASE).balanceOf(account)); bondingCurve.accountTOKEN = (account == address(0) ? 0 : IERC20(TOKEN).balanceOf(account)); bondingCurve.accountOTOKEN = (account == address(0) ? 0 : IERC20(OTOKEN).balanceOf(account)); bondingCurve.accountEarnedBASE = (account == address(0) ? 0 : IRewarder(rewarder).earned(account, BASE)); bondingCurve.accountEarnedTOKEN = (account == address(0) ? 0 : IRewarder(rewarder).earned(account, TOKEN)); bondingCurve.accountEarnedOTOKEN = (account == address(0) ? 0 : IRewarder(rewarder).earned(account, OTOKEN)); bondingCurve.accountVTOKEN = (account == address(0) ? 0 : IVTOKEN(VTOKEN).balanceOfTOKEN(account)); bondingCurve.accountVotingPower = (account == address(0) ? 0 : IVTOKEN(VTOKEN).balanceOf(account)); bondingCurve.accountUsedWeights = (account == address(0) ? 0 : IVoter(voter).usedWeights(account)); bondingCurve.accountBorrowCredit = (account == address(0) ? 0 : ITOKEN(TOKEN).borrowCreditBASE(account)); bondingCurve.accountBorrowDebt = (account == address(0) ? 0 : ITOKEN(TOKEN).debt(account)); bondingCurve.accountMaxWithdraw = (account == address(0) ? 0 : (IVoter(voter).usedWeights(account) > 0 ? 0 : bondingCurve.accountVTOKEN - bondingCurve.accountBorrowDebt)); return bondingCurve; } function gaugeCardData(address plugin, address account) external view returns (GaugeCard memory gaugeCard) { gaugeCard.protocol = IPlugin(plugin).getProtocol(); gaugeCard.symbol = IERC20(plugin).symbol(); gaugeCard.tokensInUnderlying = IPlugin(plugin).getTokensInUnderlying(); gaugeCard.pluginPrice = IPlugin(plugin).price(); gaugeCard.priceOTOKEN = ITOKEN(TOKEN).OTOKENPrice() * (uint256(IOracle(PRICE_ORACLE_BASE).latestAnswer()) * 1e18 / 1e8) / 1e18; gaugeCard.apr = IGauge(IVoter(voter).gauges(plugin)).rewardPerToken(OTOKEN) * gaugeCard.priceOTOKEN * 365 * 100 / 7 / gaugeCard.pluginPrice; gaugeCard.tvl = IGauge(IVoter(voter).gauges(plugin)).totalSupply() * gaugeCard.pluginPrice / 1e18; gaugeCard.votingWeight = 100 * IVoter(voter).weights(plugin) * 1e18 / IVoter(voter).totalWeight(); gaugeCard.accountUnderlyingTokens = (account == address(0) ? 0 : IERC20(IPlugin(plugin).getUnderlyingTokenAddress()).balanceOf(account)); gaugeCard.accountUnstakedTokens = (account == address(0) ? 0 : IERC20(plugin).balanceOf(account)); gaugeCard.accountStakedTokens = (account == address(0) ? 0 : IGauge(IVoter(voter).gauges(plugin)).balanceOf(account)); gaugeCard.accountEarnedOTOKEN = (account == address(0) ? 0 : IGauge(IVoter(voter).gauges(plugin)).earned(account, OTOKEN)); return gaugeCard; } function bribeCardData(address plugin, address account) external view returns (BribeCard memory bribeCard) { bribeCard.protocol = IPlugin(plugin).getProtocol(); bribeCard.symbol = IERC20(plugin).symbol(); bribeCard.rewardTokens = IBribe(IVoter(voter).bribes(plugin)).getRewardTokens(); uint[] memory _rewardsPerToken = new uint[](bribeCard.rewardTokens.length); for (uint i = 0; i < bribeCard.rewardTokens.length; i++) { _rewardsPerToken[i] = IBribe(IVoter(voter).bribes(plugin)).rewardPerToken(bribeCard.rewardTokens[i]); } bribeCard.rewardsPerToken = _rewardsPerToken; uint[] memory _accountRewardsEarned = new uint[](bribeCard.rewardTokens.length); for (uint i = 0; i < bribeCard.rewardTokens.length; i++) { _accountRewardsEarned[i] = (account == address(0) ? 0 : IBribe(IVoter(voter).bribes(plugin)).earned(account, bribeCard.rewardTokens[i])); } bribeCard.accountRewardsEarned = _accountRewardsEarned; bribeCard.voteWeight = IVoter(voter).weights(plugin); bribeCard.votePercent = 100 * IVoter(voter).weights(plugin) * 1e18 / IVoter(voter).totalWeight(); bribeCard.accountVotePercent = (account == address(0) ? 0 : (IVoter(voter).usedWeights(account) == 0 ? 0 : 100 * IVoter(voter).votes(account, plugin) * 1e18 / IVoter(voter).usedWeights(account))); return bribeCard; } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_voter","type":"address"},{"internalType":"address","name":"_TOKEN","type":"address"},{"internalType":"address","name":"_VTOKEN","type":"address"},{"internalType":"address","name":"_OTOKEN","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BASE","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DIVISOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"OTOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PRICE_ORACLE_BASE","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VTOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"bondingCurveData","outputs":[{"components":[{"internalType":"uint256","name":"priceBASE","type":"uint256"},{"internalType":"uint256","name":"priceTOKEN","type":"uint256"},{"internalType":"uint256","name":"priceOTOKEN","type":"uint256"},{"internalType":"uint256","name":"maxMarketSell","type":"uint256"},{"internalType":"uint256","name":"tvl","type":"uint256"},{"internalType":"uint256","name":"supplyTOKEN","type":"uint256"},{"internalType":"uint256","name":"supplyVTOKEN","type":"uint256"},{"internalType":"uint256","name":"apr","type":"uint256"},{"internalType":"uint256","name":"ltv","type":"uint256"},{"internalType":"uint256","name":"ratio","type":"uint256"},{"internalType":"uint256","name":"accountNATIVE","type":"uint256"},{"internalType":"uint256","name":"accountBASE","type":"uint256"},{"internalType":"uint256","name":"accountTOKEN","type":"uint256"},{"internalType":"uint256","name":"accountOTOKEN","type":"uint256"},{"internalType":"uint256","name":"accountEarnedBASE","type":"uint256"},{"internalType":"uint256","name":"accountEarnedTOKEN","type":"uint256"},{"internalType":"uint256","name":"accountEarnedOTOKEN","type":"uint256"},{"internalType":"uint256","name":"accountVTOKEN","type":"uint256"},{"internalType":"uint256","name":"accountVotingPower","type":"uint256"},{"internalType":"uint256","name":"accountUsedWeights","type":"uint256"},{"internalType":"uint256","name":"accountBorrowCredit","type":"uint256"},{"internalType":"uint256","name":"accountBorrowDebt","type":"uint256"},{"internalType":"uint256","name":"accountMaxWithdraw","type":"uint256"}],"internalType":"struct MulticallFantom.BondingCurve","name":"bondingCurve","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"plugin","type":"address"},{"internalType":"address","name":"account","type":"address"}],"name":"bribeCardData","outputs":[{"components":[{"internalType":"string","name":"protocol","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address[]","name":"rewardTokens","type":"address[]"},{"internalType":"uint256[]","name":"rewardsPerToken","type":"uint256[]"},{"internalType":"uint256[]","name":"accountRewardsEarned","type":"uint256[]"},{"internalType":"uint256","name":"voteWeight","type":"uint256"},{"internalType":"uint256","name":"votePercent","type":"uint256"},{"internalType":"uint256","name":"accountVotePercent","type":"uint256"}],"internalType":"struct MulticallFantom.BribeCard","name":"bribeCard","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"plugin","type":"address"},{"internalType":"address","name":"account","type":"address"}],"name":"gaugeCardData","outputs":[{"components":[{"internalType":"string","name":"protocol","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address[]","name":"tokensInUnderlying","type":"address[]"},{"internalType":"uint256","name":"pluginPrice","type":"uint256"},{"internalType":"uint256","name":"priceOTOKEN","type":"uint256"},{"internalType":"uint256","name":"apr","type":"uint256"},{"internalType":"uint256","name":"tvl","type":"uint256"},{"internalType":"uint256","name":"votingWeight","type":"uint256"},{"internalType":"uint256","name":"accountUnderlyingTokens","type":"uint256"},{"internalType":"uint256","name":"accountUnstakedTokens","type":"uint256"},{"internalType":"uint256","name":"accountStakedTokens","type":"uint256"},{"internalType":"uint256","name":"accountEarnedOTOKEN","type":"uint256"}],"internalType":"struct MulticallFantom.GaugeCard","name":"gaugeCard","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPools","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"pool","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"input","type":"uint256"},{"internalType":"uint256","name":"slippageTolerance","type":"uint256"}],"name":"quoteBuyIn","outputs":[{"internalType":"uint256","name":"output","type":"uint256"},{"internalType":"uint256","name":"slippage","type":"uint256"},{"internalType":"uint256","name":"minOutput","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"input","type":"uint256"},{"internalType":"uint256","name":"slippageTolerance","type":"uint256"}],"name":"quoteBuyOut","outputs":[{"internalType":"uint256","name":"output","type":"uint256"},{"internalType":"uint256","name":"slippage","type":"uint256"},{"internalType":"uint256","name":"minOutput","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"input","type":"uint256"},{"internalType":"uint256","name":"slippageTolerance","type":"uint256"}],"name":"quoteSellIn","outputs":[{"internalType":"uint256","name":"output","type":"uint256"},{"internalType":"uint256","name":"slippage","type":"uint256"},{"internalType":"uint256","name":"minOutput","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"input","type":"uint256"},{"internalType":"uint256","name":"slippageTolerance","type":"uint256"}],"name":"quoteSellOut","outputs":[{"internalType":"uint256","name":"output","type":"uint256"},{"internalType":"uint256","name":"slippage","type":"uint256"},{"internalType":"uint256","name":"minOutput","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewarder","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapCardData","outputs":[{"components":[{"internalType":"uint256","name":"frBASE","type":"uint256"},{"internalType":"uint256","name":"mrvBASE","type":"uint256"},{"internalType":"uint256","name":"mrrBASE","type":"uint256"},{"internalType":"uint256","name":"mrrTOKEN","type":"uint256"},{"internalType":"uint256","name":"marketMaxTOKEN","type":"uint256"}],"internalType":"struct MulticallFantom.SwapCard","name":"swapCard","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"voter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162003f8c38038062003f8c83398101604081905262000034916200012a565b600080546001600160a01b038087166001600160a01b03199283161790925560018054868416908316179055600280548584169083168117909155600380549385169390921692909217905560408051636e61f03760e11b8152905163dcc3e06e916004808201926020929091908290030181865afa158015620000bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e2919062000187565b600480546001600160a01b0319166001600160a01b039290921691909117905550620001ac92505050565b80516001600160a01b03811681146200012557600080fd5b919050565b600080600080608085870312156200014157600080fd5b6200014c856200010d565b93506200015c602086016200010d565b92506200016c604086016200010d565b91506200017c606086016200010d565b905092959194509250565b6000602082840312156200019a57600080fd5b620001a5826200010d565b9392505050565b613dd080620001bc6000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806389b96d4d116100ad578063dcc3e06e11610071578063dcc3e06e146103b9578063ec342ad0146103cc578063f31ae323146103e7578063fb54842714610402578063fe3131121461041557600080fd5b806389b96d4d1461032e5780639736f34814610341578063c544df0c1461038b578063c57981b51461039e578063d91b9962146103a657600080fd5b806346c96aac116100f457806346c96aac1461029a578063673a2a1f146102c55780637a12e531146102da57806382bfefc81461030857806384e883ef1461031b57600080fd5b80630bf5f590146101265780630d66951c1461014f578063235052d6146102635780633410fe6e14610283575b600080fd5b6101396101343660046137d8565b610428565b60405161014691906138b1565b60405180910390f35b61016261015d366004613986565b610dff565b6040516101469190815181526020808301519082015260408083015190820152606080830151908201526080808301519082015260a0808301519082015260c0808301519082015260e08083015190820152610100808301519082015261012080830151908201526101408083015190820152610160808301519082015261018080830151908201526101a080830151908201526101c080830151908201526101e08083015190820152610200808301519082015261022080830151908201526102408083015190820152610260808301519082015261028080830151908201526102a080830151908201526102c091820151918101919091526102e00190565b6102766102713660046137d8565b611daf565b60405161014691906139da565b61028c6103e881565b604051908152602001610146565b6000546102ad906001600160a01b031681565b6040516001600160a01b039091168152602001610146565b6102cd612618565b6040516101469190613a9a565b6102ed6102e8366004613ae7565b61268e565b60408051938452602084019290925290820152606001610146565b6001546102ad906001600160a01b031681565b6102ed610329366004613ae7565b612a99565b6102ed61033c366004613ae7565b612eb3565b6103496131e7565b6040516101469190600060a082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015292915050565b6003546102ad906001600160a01b031681565b61028c601481565b6102ed6103b4366004613ae7565b613463565b6004546102ad906001600160a01b031681565b6102ad7321be370d5312f44cb42ce377bc9b8a0cef1a4c8381565b6102ad73f4766552d15ae4d256ad41b6cf2933482b0680dc81565b6002546102ad906001600160a01b031681565b6102ad610423366004613b09565b61374c565b61048c6040518061018001604052806060815260200160608152602001606081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b826001600160a01b031663d16352af6040518163ffffffff1660e01b8152600401600060405180830381865afa1580156104ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104f29190810190613b69565b8160000181905250826001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa158015610538573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105609190810190613b69565b8160200181905250826001600160a01b031663b1942b166040518163ffffffff1660e01b8152600401600060405180830381865afa1580156105a6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105ce9190810190613bfd565b8160400181905250826001600160a01b031663a035b1fe6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610614573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106389190613caf565b816060018181525050670de0b6b3a76400006305f5e10073f4766552d15ae4d256ad41b6cf2933482b0680dc6001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c59190613caf565b6106d790670de0b6b3a7640000613cde565b6106e19190613cfd565b600160009054906101000a90046001600160a01b03166001600160a01b031663c68da0576040518163ffffffff1660e01b8152600401602060405180830381865afa158015610734573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107589190613caf565b6107629190613cde565b61076c9190613cfd565b60808201819052606082015160005460405163b9a09fd560e01b81526001600160a01b03878116600483015292936007939092169063b9a09fd590602401602060405180830381865afa1580156107c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107eb9190613d1f565b60035460405163f122977760e01b81526001600160a01b03918216600482015291169063f122977790602401602060405180830381865afa158015610834573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108589190613caf565b6108629190613cde565b61086e9061016d613cde565b610879906064613cde565b6108839190613cfd565b61088d9190613cfd565b60a0820152606081015160005460405163b9a09fd560e01b81526001600160a01b038681166004830152670de0b6b3a76400009392169063b9a09fd590602401602060405180830381865afa1580156108ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090e9190613d1f565b6001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561094b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096f9190613caf565b6109799190613cde565b6109839190613cfd565b60c0820152600054604080516396c82e5760e01b815290516001600160a01b03909216916396c82e57916004808201926020929091908290030181865afa1580156109d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f69190613caf565b6000546040516353e5642360e11b81526001600160a01b0386811660048301529091169063a7cac84690602401602060405180830381865afa158015610a40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a649190613caf565b610a6f906064613cde565b610a8190670de0b6b3a7640000613cde565b610a8b9190613cfd565b60e08201526001600160a01b03821615610b7257826001600160a01b031663440f5fd26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610add573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b019190613d1f565b6040516370a0823160e01b81526001600160a01b03848116600483015291909116906370a0823190602401602060405180830381865afa158015610b49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b6d9190613caf565b610b75565b60005b6101008201526001600160a01b03821615610bf9576040516370a0823160e01b81526001600160a01b0383811660048301528416906370a0823190602401602060405180830381865afa158015610bd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf49190613caf565b610bfc565b60005b6101208201526001600160a01b03821615610cf05760005460405163b9a09fd560e01b81526001600160a01b0385811660048301529091169063b9a09fd590602401602060405180830381865afa158015610c5b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7f9190613d1f565b6040516370a0823160e01b81526001600160a01b03848116600483015291909116906370a0823190602401602060405180830381865afa158015610cc7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ceb9190613caf565b610cf3565b60005b6101408201526001600160a01b03821615610df05760005460405163b9a09fd560e01b81526001600160a01b0385811660048301529091169063b9a09fd590602401602060405180830381865afa158015610d52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d769190613d1f565b60035460405163211dc32d60e01b81526001600160a01b038581166004830152918216602482015291169063211dc32d90604401602060405180830381865afa158015610dc7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610deb9190613caf565b610df3565b60005b61016082015292915050565b610eb0604051806102e0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b6305f5e10073f4766552d15ae4d256ad41b6cf2933482b0680dc6001600160a01b03166350d25bcd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2b9190613caf565b610f3d90670de0b6b3a7640000613cde565b610f479190613cfd565b80825260015460408051634e8da32560e11b81529051670de0b6b3a764000093926001600160a01b031691639d1b464a9160048083019260209291908290030181865afa158015610f9c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fc09190613caf565b610fca9190613cde565b610fd49190613cfd565b60208083019190915281516001546040805163c68da05760e01b81529051670de0b6b3a7640000946001600160a01b039093169263c68da05792600480820193918290030181865afa15801561102e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110529190613caf565b61105c9190613cde565b6110669190613cfd565b60408083019190915260015481516370e6a58960e11b815291516001600160a01b039091169163e1cd4b129160048083019260209291908290030181865afa1580156110b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110da9190613caf565b6060820152805160015460408051637299470360e11b81529051670de0b6b3a764000093926001600160a01b03169163e5328e069160048083019260209291908290030181865afa158015611133573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111579190613caf565b6111619190613cde565b61116b9190613cfd565b6080820152600154604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd916004808201926020929091908290030181865afa1580156111ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111de9190613caf565b60a0820152600254604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd916004808201926020929091908290030181865afa15801561122d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112519190613caf565b60c08201526020810151611266906007613cde565b60408281015160048054600354935163f122977760e01b81526001600160a01b0394851692810192909252670de0b6b3a764000093169063f122977790602401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190613caf565b6112f19190613cde565b6112fb9190613cfd565b60208301516004805460015460405163f122977760e01b81526001600160a01b0391821693810193909352670de0b6b3a7640000939291169063f122977790602401602060405180830381865afa15801561135a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137e9190613caf565b6113889190613cde565b6113929190613cfd565b83516004805460405163f122977760e01b81527321be370d5312f44cb42ce377bc9b8a0cef1a4c8392810192909252670de0b6b3a764000092916001600160a01b039091169063f122977790602401602060405180830381865afa1580156113fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114229190613caf565b61142c9190613cde565b6114369190613cfd565b6114409190613d3c565b61144a9190613d3c565b6114569061016d613cde565b611461906064613cde565b61147390670de0b6b3a7640000613cde565b61147d9190613cfd565b60e082015260015460408051634e8da32560e11b815290516001600160a01b0390921691639d1b464a916004808201926020929091908290030181865afa1580156114cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f09190613caf565b600160009054906101000a90046001600160a01b03166001600160a01b0316639363c8126040518163ffffffff1660e01b8152600401602060405180830381865afa158015611543573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115679190613caf565b611572906064613cde565b61158490670de0b6b3a7640000613cde565b61158e9190613cfd565b610100820152600154604080516349b1e40960e11b815290516001600160a01b0390921691639363c812916004808201926020929091908290030181865afa1580156115de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116029190613caf565b600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611655573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116799190613caf565b61168b90670de0b6b3a7640000613cde565b6116959190613cfd565b6101208201526001600160a01b038216156116ba57816001600160a01b0316316116bd565b60005b6101408201526001600160a01b03821615611753576040516370a0823160e01b81526001600160a01b03831660048201527321be370d5312f44cb42ce377bc9b8a0cef1a4c83906370a0823190602401602060405180830381865afa15801561172a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174e9190613caf565b611756565b60005b6101608201526001600160a01b038216156117de576001546040516370a0823160e01b81526001600160a01b038481166004830152909116906370a0823190602401602060405180830381865afa1580156117b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d99190613caf565b6117e1565b60005b6101808201526001600160a01b03821615611869576003546040516370a0823160e01b81526001600160a01b038481166004830152909116906370a0823190602401602060405180830381865afa158015611840573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118649190613caf565b61186c565b60005b6101a08201526001600160a01b03821615611910576004805460405163211dc32d60e01b81526001600160a01b03858116938201939093527321be370d5312f44cb42ce377bc9b8a0cef1a4c83602482015291169063211dc32d90604401602060405180830381865afa1580156118e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061190b9190613caf565b611913565b60005b6101c08201526001600160a01b038216156119a8576004805460015460405163211dc32d60e01b81526001600160a01b0386811694820194909452908316602482015291169063211dc32d90604401602060405180830381865afa15801561197f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119a39190613caf565b6119ab565b60005b6101e08201526001600160a01b03821615611a40576004805460035460405163211dc32d60e01b81526001600160a01b0386811694820194909452908316602482015291169063211dc32d90604401602060405180830381865afa158015611a17573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a3b9190613caf565b611a43565b60005b6102008201526001600160a01b03821615611acb57600254604051631ef1589960e01b81526001600160a01b03848116600483015290911690631ef1589990602401602060405180830381865afa158015611aa2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac69190613caf565b611ace565b60005b6102208201526001600160a01b03821615611b56576002546040516370a0823160e01b81526001600160a01b038481166004830152909116906370a0823190602401602060405180830381865afa158015611b2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b519190613caf565b611b59565b60005b6102408201526001600160a01b03821615611bdf57600054604051620be37960e21b81526001600160a01b03848116600483015290911690622f8de490602401602060405180830381865afa158015611bb6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bda9190613caf565b611be2565b60005b6102608201526001600160a01b03821615611c6a5760015460405163c6e5041360e01b81526001600160a01b0384811660048301529091169063c6e5041390602401602060405180830381865afa158015611c41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c659190613caf565b611c6d565b60005b6102808201526001600160a01b03821615611cf5576001546040516326db15bb60e21b81526001600160a01b03848116600483015290911690639b6c56ec90602401602060405180830381865afa158015611ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf09190613caf565b611cf8565b60005b6102a08201526001600160a01b03821615611da15760008054604051620be37960e21b81526001600160a01b03858116600483015290911690622f8de490602401602060405180830381865afa158015611d56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7a9190613caf565b11611d9a57806102a00151816102200151611d959190613d54565b611da4565b6000611da4565b60005b6102c0820152919050565b611df760405180610100016040528060608152602001606081526020016060815260200160608152602001606081526020016000815260200160008152602001600081525090565b826001600160a01b031663d16352af6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611e35573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611e5d9190810190613b69565b8160000181905250826001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa158015611ea3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ecb9190810190613b69565b6020820152600054604051635462ecad60e11b81526001600160a01b0385811660048301529091169063a8c5d95a90602401602060405180830381865afa158015611f1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f3e9190613d1f565b6001600160a01b031663c4f59f9b6040518163ffffffff1660e01b8152600401600060405180830381865afa158015611f7b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611fa39190810190613bfd565b604082018190525160009067ffffffffffffffff811115611fc657611fc6613b22565b604051908082528060200260200182016040528015611fef578160200160208202803683370190505b50905060005b82604001515181101561213757600054604051635462ecad60e11b81526001600160a01b0387811660048301529091169063a8c5d95a90602401602060405180830381865afa15801561204c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120709190613d1f565b6001600160a01b031663f12297778460400151838151811061209457612094613d6b565b60200260200101516040518263ffffffff1660e01b81526004016120c791906001600160a01b0391909116815260200190565b602060405180830381865afa1580156120e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121089190613caf565b82828151811061211a5761211a613d6b565b60209081029190910101528061212f81613d81565b915050611ff5565b506060820181905260408201515160009067ffffffffffffffff81111561216057612160613b22565b604051908082528060200260200182016040528015612189578160200160208202803683370190505b50905060005b8360400151518110156122f0576001600160a01b038516156122be57600054604051635462ecad60e11b81526001600160a01b0388811660048301529091169063a8c5d95a90602401602060405180830381865afa1580156121f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122199190613d1f565b6001600160a01b031663211dc32d868660400151848151811061223e5761223e613d6b565b60200260200101516040518363ffffffff1660e01b81526004016122789291906001600160a01b0392831681529116602082015260400190565b602060405180830381865afa158015612295573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122b99190613caf565b6122c1565b60005b8282815181106122d3576122d3613d6b565b6020908102919091010152806122e881613d81565b91505061218f565b50608083018190526000546040516353e5642360e11b81526001600160a01b0387811660048301529091169063a7cac84690602401602060405180830381865afa158015612342573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123669190613caf565b60a0840152600054604080516396c82e5760e01b815290516001600160a01b03909216916396c82e57916004808201926020929091908290030181865afa1580156123b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123d99190613caf565b6000546040516353e5642360e11b81526001600160a01b0388811660048301529091169063a7cac84690602401602060405180830381865afa158015612423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124479190613caf565b612452906064613cde565b61246490670de0b6b3a7640000613cde565b61246e9190613cfd565b60c08401526001600160a01b0384161561260857600054604051620be37960e21b81526001600160a01b03868116600483015290911690622f8de490602401602060405180830381865afa1580156124ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124ee9190613caf565b1561260157600054604051620be37960e21b81526001600160a01b03868116600483015290911690622f8de490602401602060405180830381865afa15801561253b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061255f9190613caf565b600054604051636568dc8360e11b81526001600160a01b03878116600483015288811660248301529091169063cad1b90690604401602060405180830381865afa1580156125b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d59190613caf565b6125e0906064613cde565b6125f290670de0b6b3a7640000613cde565b6125fc9190613cfd565b61260b565b600061260b565b60005b60e0840152505092915050565b600080546040805163673a2a1f60e01b815290516060936001600160a01b039093169263673a2a1f92600480820193918290030181865afa158015612661573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126899190810190613bfd565b905090565b6000806000600160009054906101000a90046001600160a01b03166001600160a01b031663339111736040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061270a9190613caf565b8511156127585760405162461bcd60e51b815260206004820152601760248201527645786365656473204d61726b657420526573657276657360481b60448201526064015b60405180910390fd5b6001546040805163503c3c2b60e11b815290516000926001600160a01b03169163a07878569160048083019260209291908290030181865afa1580156127a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127c69190613caf565b600160009054906101000a90046001600160a01b03166001600160a01b031663c2b96e9b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612819573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061283d9190613caf565b6128479190613d3c565b905061285660146103e8613d54565b600160009054906101000a90046001600160a01b03166001600160a01b0316631b8f0bbc6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128cd9190613caf565b6128d78884613d54565b600160009054906101000a90046001600160a01b03166001600160a01b0316631b8f0bbc6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561292a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294e9190613caf565b6129589085613cde565b6129629190613cfd565b61296c9190613d54565b612978906103e8613cde565b6129829190613cfd565b935083670de0b6b3a7640000600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129e1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a059190613caf565b6103e8612a13601489613cde565b612a1d9190613cfd565b612a279088613d54565b612a319190613cde565b612a3b9190613cfd565b612a4d88670de0b6b3a7640000613cde565b612a579190613cfd565b612a6990670de0b6b3a7640000613d54565b612a74906064613cde565b6103e8612a81888a613cde565b612a8b9190613cfd565b935093509350509250925092565b60008080806103e8612aac601488613cde565b612ab69190613cfd565b90506000600160009054906101000a90046001600160a01b03166001600160a01b0316631b8f0bbc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b319190613caf565b9050600082612b408984613d3c565b612b4a9190613d54565b9050600160009054906101000a90046001600160a01b03166001600160a01b031663339111736040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bc39190613caf565b811115612c0c5760405162461bcd60e51b815260206004820152601760248201527645786365656473204d61726b657420526573657276657360481b604482015260640161274f565b6001546040805163503c3c2b60e11b815290516000926001600160a01b03169163a07878569160048083019260209291908290030181865afa158015612c56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c7a9190613caf565b600160009054906101000a90046001600160a01b03166001600160a01b031663c2b96e9b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf19190613caf565b612cfb9190613d3c565b905081612d088483613cde565b612d129190613cfd565b612d1c9082613d54565b965086670de0b6b3a7640000600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d9f9190613caf565b612da9878d613d54565b612db39190613cde565b612dbd9190613cfd565b612dcf89670de0b6b3a7640000613cde565b612dd99190613cfd565b612deb90670de0b6b3a7640000613d54565b612df6906064613cde565b6103e88a670de0b6b3a7640000600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e7a9190613caf565b612e84908f613cde565b612e8e9190613cfd565b612e989190613cde565b612ea29190613cfd565b965096509650505050509250925092565b60008080806103e8612ec6601488613cde565b612ed09190613cfd565b90506000600160009054906101000a90046001600160a01b03166001600160a01b031663a07878566040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f4b9190613caf565b600160009054906101000a90046001600160a01b03166001600160a01b031663c2b96e9b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fc29190613caf565b612fcc9190613d3c565b9050600082612fdb8984613d3c565b612fe59190613d54565b90506000600160009054906101000a90046001600160a01b03166001600160a01b0316631b8f0bbc6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561303c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130609190613caf565b90508161306d8285613cde565b6130779190613cfd565b6130819082613d54565b965086600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156130d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130fb9190613caf565b613105868c613d54565b61311790670de0b6b3a7640000613cde565b6131219190613cfd565b61313389670de0b6b3a7640000613cde565b61313d9190613cfd565b61314f90670de0b6b3a7640000613d54565b61315a906064613cde565b6103e88a600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131d59190613caf565b612e848e670de0b6b3a7640000613cde565b6132196040518060a0016040528060008152602001600081526020016000815260200160008152602001600081525090565b600160009054906101000a90046001600160a01b03166001600160a01b031663ad6cb8236040518163ffffffff1660e01b8152600401602060405180830381865afa15801561326c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132909190613caf565b81526001546040805163c2b96e9b60e01b815290516001600160a01b039092169163c2b96e9b916004808201926020929091908290030181865afa1580156132dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133009190613caf565b6020808301919091526001546040805163503c3c2b60e11b815290516001600160a01b039092169263a0787856926004808401938290030181865afa15801561334d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133719190613caf565b60408083019190915260015481516306e3c2ef60e21b815291516001600160a01b0390911691631b8f0bbc9160048083019260209291908290030181865afa1580156133c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e59190613caf565b606082015260015460408051633391117360e01b815290516001600160a01b03909216916333911173916004808201926020929091908290030181865afa158015613434573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134589190613caf565b506000608082015290565b600080600080600160009054906101000a90046001600160a01b03166001600160a01b031663a07878566040518163ffffffff1660e01b8152600401602060405180830381865afa1580156134bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134e09190613caf565b600160009054906101000a90046001600160a01b03166001600160a01b031663c2b96e9b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613533573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135579190613caf565b6135619190613d3c565b905061357060146103e8613d54565b8187600160009054906101000a90046001600160a01b03166001600160a01b0316631b8f0bbc6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156135c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135e99190613caf565b6135f39190613d54565b600160009054906101000a90046001600160a01b03166001600160a01b0316631b8f0bbc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613646573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061366a9190613caf565b6136749085613cde565b61367e9190613cfd565b6136889190613d54565b613694906103e8613cde565b61369e9190613cfd565b935083600160009054906101000a90046001600160a01b03166001600160a01b0316639d1b464a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156136f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137189190613caf565b6103e8613726601488613cde565b6137309190613cfd565b61373a9087613d54565b612a3190670de0b6b3a7640000613cde565b600080546040516315895f4760e31b8152600481018490526001600160a01b039091169063ac4afa3890602401602060405180830381865afa158015613796573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137ba9190613d1f565b92915050565b6001600160a01b03811681146137d557600080fd5b50565b600080604083850312156137eb57600080fd5b82356137f6816137c0565b91506020830135613806816137c0565b809150509250929050565b60005b8381101561382c578181015183820152602001613814565b8381111561383b576000848401525b50505050565b60008151808452613859816020860160208601613811565b601f01601f19169290920160200192915050565b600081518084526020808501945080840160005b838110156138a65781516001600160a01b031687529582019590820190600101613881565b509495945050505050565b60208152600082516101808060208501526138d06101a0850183613841565b91506020850151601f19808685030160408701526138ee8483613841565b935060408701519150808685030160608701525061390c838261386d565b92505060608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e0850151610100818187015280870151915050610120818187015280870151915050610140818187015280870151915050610160818187015280870151838701525050508091505092915050565b60006020828403121561399857600080fd5b81356139a3816137c0565b9392505050565b600081518084526020808501945080840160005b838110156138a6578151875295820195908201906001016139be565b60208152600082516101008060208501526139f9610120850183613841565b91506020850151601f1980868503016040870152613a178483613841565b93506040870151915080868503016060870152613a34848361386d565b93506060870151915080868503016080870152613a5184836139aa565b935060808701519150808685030160a087015250613a6f83826139aa565b92505060a085015160c085015260c085015160e085015260e085015181850152508091505092915050565b6020808252825182820181905260009190848201906040850190845b81811015613adb5783516001600160a01b031683529284019291840191600101613ab6565b50909695505050505050565b60008060408385031215613afa57600080fd5b50508035926020909101359150565b600060208284031215613b1b57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613b6157613b61613b22565b604052919050565b600060208284031215613b7b57600080fd5b815167ffffffffffffffff80821115613b9357600080fd5b818401915084601f830112613ba757600080fd5b815181811115613bb957613bb9613b22565b613bcc601f8201601f1916602001613b38565b9150808252856020828501011115613be357600080fd5b613bf4816020840160208601613811565b50949350505050565b60006020808385031215613c1057600080fd5b825167ffffffffffffffff80821115613c2857600080fd5b818501915085601f830112613c3c57600080fd5b815181811115613c4e57613c4e613b22565b8060051b9150613c5f848301613b38565b8181529183018401918481019088841115613c7957600080fd5b938501935b83851015613ca35784519250613c93836137c0565b8282529385019390850190613c7e565b98975050505050505050565b600060208284031215613cc157600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615613cf857613cf8613cc8565b500290565b600082613d1a57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215613d3157600080fd5b81516139a3816137c0565b60008219821115613d4f57613d4f613cc8565b500190565b600082821015613d6657613d66613cc8565b500390565b634e487b7160e01b600052603260045260246000fd5b600060018201613d9357613d93613cc8565b506001019056fea264697066735822122032db1d97a369716b0caf2cb1bea60acfd459892dbf12949dd5030cbcfa2e0c6064736f6c634300080d0033000000000000000000000000a8408837ec5fda0f54ade6a03322999ec7b49c320000000000000000000000005d1dd559fda41d45a7e9a3cbf85fdea0298a892f000000000000000000000000906f3f487e13a8e4bd78294dbeb77e284b668cff0000000000000000000000002ffdf4d09ca6473ce4eddb47371fc098fe758c52
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000a8408837ec5fda0f54ade6a03322999ec7b49c320000000000000000000000005d1dd559fda41d45a7e9a3cbf85fdea0298a892f000000000000000000000000906f3f487e13a8e4bd78294dbeb77e284b668cff0000000000000000000000002ffdf4d09ca6473ce4eddb47371fc098fe758c52
-----Decoded View---------------
Arg [0] : _voter (address): 0xa8408837ec5fda0f54ade6a03322999ec7b49c32
Arg [1] : _TOKEN (address): 0x5d1dd559fda41d45a7e9a3cbf85fdea0298a892f
Arg [2] : _VTOKEN (address): 0x906f3f487e13a8e4bd78294dbeb77e284b668cff
Arg [3] : _OTOKEN (address): 0x2ffdf4d09ca6473ce4eddb47371fc098fe758c52
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000a8408837ec5fda0f54ade6a03322999ec7b49c32
Arg [1] : 0000000000000000000000005d1dd559fda41d45a7e9a3cbf85fdea0298a892f
Arg [2] : 000000000000000000000000906f3f487e13a8e4bd78294dbeb77e284b668cff
Arg [3] : 0000000000000000000000002ffdf4d09ca6473ce4eddb47371fc098fe758c52
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.