Contract
0x46ac9383d3e23167be2e4e728a11a49643514ed3
6
Contract Overview
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Latest 25 internal transaction
[ Download CSV Export ]
Contract Name:
SolidexDepositZap
Compiler Version
v0.8.12+commit.f00d7308
Contract Source Code (Solidity)
/** *Submitted for verification at FtmScan.com on 2022-02-25 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.12; interface IBaseV1Factory { function pairCodeHash() external pure returns (bytes32); function getPair(address tokenA, address token, bool stable) external view returns (address); function createPair(address tokenA, address tokenB, bool stable) external returns (address pair); } interface IBaseV1Pair { function burn(address to) external returns (uint amount0, uint amount1); function mint(address to) external returns (uint liquidity); function getReserves() external view returns (uint112 _reserve0, uint112 _reserve1, uint32 _blockTimestampLast); } interface IERC20 { function totalSupply() external view returns (uint256); function transfer(address recipient, uint amount) external returns (bool); function transferFrom(address sender, address recipient, uint amount) external returns (bool); function approve(address spender, uint value) external returns (bool); } interface IWFTM { function deposit() external payable returns (uint); function transfer(address to, uint value) external returns (bool); function withdraw(uint) external returns (uint); } interface ILpDepositor { function deposit(address pool, uint256 amount) external; function withdraw(address pool, uint256 amount) external; function tokenForPool(address pool) external view returns (IERC20); } contract SolidexDepositZap { IBaseV1Factory public immutable factory; IWFTM public immutable wftm; ILpDepositor public immutable lpDepositor; uint internal constant MINIMUM_LIQUIDITY = 10**3; bytes32 immutable pairCodeHash; mapping (address => IERC20) public depositTokenForPair; constructor(IBaseV1Factory _factory, IWFTM _wftm, ILpDepositor _lpDepositor) { factory = _factory; pairCodeHash = IBaseV1Factory(_factory).pairCodeHash(); wftm = _wftm; lpDepositor = _lpDepositor; } receive() external payable { assert(msg.sender == address(wftm)); // only accept ETH via fallback from the WETH contract } function min(uint a, uint b) internal pure returns (uint) { return a < b ? a : b; } function sqrt(uint y) internal pure returns (uint z) { if (y > 3) { z = y; uint x = y / 2 + 1; while (x < z) { z = x; x = (y / x + x) / 2; } } else if (y != 0) { z = 1; } } function sortTokens(address tokenA, address tokenB) public pure returns (address token0, address token1) { require(tokenA != tokenB, 'BaseV1Router: IDENTICAL_ADDRESSES'); (token0, token1) = tokenA < tokenB ? (tokenA, tokenB) : (tokenB, tokenA); require(token0 != address(0), 'BaseV1Router: ZERO_ADDRESS'); } // calculates the CREATE2 address for a pair without making any external calls function pairFor(address tokenA, address tokenB, bool stable) public view returns (address pair) { (address token0, address token1) = sortTokens(tokenA, tokenB); pair = address(uint160(uint256(keccak256(abi.encodePacked( hex'ff', factory, keccak256(abi.encodePacked(token0, token1, stable)), pairCodeHash // init code hash ))))); } // given some amount of an asset and pair reserves, returns an equivalent amount of the other asset function quoteLiquidity(uint amountA, uint reserveA, uint reserveB) internal pure returns (uint amountB) { require(amountA > 0, 'BaseV1Router: INSUFFICIENT_AMOUNT'); require(reserveA > 0 && reserveB > 0, 'BaseV1Router: INSUFFICIENT_LIQUIDITY'); amountB = amountA * reserveB / reserveA; } // fetches and sorts the reserves for a pair function getReserves(address tokenA, address tokenB, bool stable) public view returns (uint reserveA, uint reserveB) { (address token0,) = sortTokens(tokenA, tokenB); (uint reserve0, uint reserve1,) = IBaseV1Pair(pairFor(tokenA, tokenB, stable)).getReserves(); (reserveA, reserveB) = tokenA == token0 ? (reserve0, reserve1) : (reserve1, reserve0); } function quoteAddLiquidity( address tokenA, address tokenB, bool stable, uint amountADesired, uint amountBDesired ) external view returns (uint amountA, uint amountB, uint liquidity) { // create the pair if it doesn't exist yet address _pair = factory.getPair(tokenA, tokenB, stable); (uint reserveA, uint reserveB) = (0,0); uint _totalSupply = 0; if (_pair != address(0)) { _totalSupply = IERC20(_pair).totalSupply(); (reserveA, reserveB) = getReserves(tokenA, tokenB, stable); } if (reserveA == 0 && reserveB == 0) { (amountA, amountB) = (amountADesired, amountBDesired); liquidity = sqrt(amountA * amountB) - MINIMUM_LIQUIDITY; } else { uint amountBOptimal = quoteLiquidity(amountADesired, reserveA, reserveB); if (amountBOptimal <= amountBDesired) { (amountA, amountB) = (amountADesired, amountBOptimal); liquidity = min(amountA * _totalSupply / reserveA, amountB * _totalSupply / reserveB); } else { uint amountAOptimal = quoteLiquidity(amountBDesired, reserveB, reserveA); (amountA, amountB) = (amountAOptimal, amountBDesired); liquidity = min(amountA * _totalSupply / reserveA, amountB * _totalSupply / reserveB); } } } function quoteRemoveLiquidity( address tokenA, address tokenB, bool stable, uint liquidity ) external view returns (uint amountA, uint amountB) { // create the pair if it doesn't exist yet address _pair = factory.getPair(tokenA, tokenB, stable); if (_pair == address(0)) { return (0,0); } (uint reserveA, uint reserveB) = getReserves(tokenA, tokenB, stable); uint _totalSupply = IERC20(_pair).totalSupply(); amountA = liquidity * reserveA / _totalSupply; // using balances ensures pro-rata distribution amountB = liquidity * reserveB / _totalSupply; // using balances ensures pro-rata distribution } function _addLiquidity( address tokenA, address tokenB, bool stable, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin ) internal returns (uint amountA, uint amountB) { require(amountADesired >= amountAMin); require(amountBDesired >= amountBMin); // create the pair if it doesn't exist yet address _pair = factory.getPair(tokenA, tokenB, stable); if (_pair == address(0)) { _pair = factory.createPair(tokenA, tokenB, stable); } (uint reserveA, uint reserveB) = getReserves(tokenA, tokenB, stable); if (reserveA == 0 && reserveB == 0) { (amountA, amountB) = (amountADesired, amountBDesired); } else { uint amountBOptimal = quoteLiquidity(amountADesired, reserveA, reserveB); if (amountBOptimal <= amountBDesired) { require(amountBOptimal >= amountBMin, 'BaseV1Router: INSUFFICIENT_B_AMOUNT'); (amountA, amountB) = (amountADesired, amountBOptimal); } else { uint amountAOptimal = quoteLiquidity(amountBDesired, reserveB, reserveA); assert(amountAOptimal <= amountADesired); require(amountAOptimal >= amountAMin, 'BaseV1Router: INSUFFICIENT_A_AMOUNT'); (amountA, amountB) = (amountAOptimal, amountBDesired); } } } function _getDepositToken(address pair) internal returns (IERC20) { IERC20 token = depositTokenForPair[pair]; if (address(token) == address(0)) { IERC20(pair).approve(address(lpDepositor), type(uint).max); token = lpDepositor.tokenForPool(pair); depositTokenForPair[pair] = token; } return token; } function addLiquidity( address tokenA, address tokenB, bool stable, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to ) external returns (uint amountA, uint amountB, uint liquidity) { (amountA, amountB) = _addLiquidity(tokenA, tokenB, stable, amountADesired, amountBDesired, amountAMin, amountBMin); address pair = pairFor(tokenA, tokenB, stable); _safeTransferFrom(tokenA, msg.sender, pair, amountA); _safeTransferFrom(tokenB, msg.sender, pair, amountB); liquidity = IBaseV1Pair(pair).mint(address(this)); IERC20 lpToken = _getDepositToken(pair); lpDepositor.deposit(pair, liquidity); lpToken.transfer(to, liquidity); } function addLiquidityFTM( address token, bool stable, uint amountTokenDesired, uint amountTokenMin, uint amountFTMMin, address to ) external payable returns (uint amountToken, uint amountFTM, uint liquidity) { (amountToken, amountFTM) = _addLiquidity( token, address(wftm), stable, amountTokenDesired, msg.value, amountTokenMin, amountFTMMin ); address pair = pairFor(token, address(wftm), stable); _safeTransferFrom(token, msg.sender, pair, amountToken); wftm.deposit{value: amountFTM}(); assert(wftm.transfer(pair, amountFTM)); liquidity = IBaseV1Pair(pair).mint(address(this)); IERC20 lpToken = _getDepositToken(pair); lpDepositor.deposit(pair, liquidity); lpToken.transfer(to, liquidity); if (msg.value > amountFTM) _safeTransferFTM(msg.sender, msg.value - amountFTM); } // **** REMOVE LIQUIDITY **** function removeLiquidity( address tokenA, address tokenB, bool stable, uint liquidity, uint amountAMin, uint amountBMin, address to ) public returns (uint amountA, uint amountB) { address pair = pairFor(tokenA, tokenB, stable); IERC20 lpToken = _getDepositToken(pair); lpToken.transferFrom(msg.sender, address(this), liquidity); lpDepositor.withdraw(pair, liquidity); IERC20(pair).transfer(pair, liquidity); // send liquidity to pair (uint amount0, uint amount1) = IBaseV1Pair(pair).burn(to); (address token0,) = sortTokens(tokenA, tokenB); (amountA, amountB) = tokenA == token0 ? (amount0, amount1) : (amount1, amount0); require(amountA >= amountAMin, 'BaseV1Router: INSUFFICIENT_A_AMOUNT'); require(amountB >= amountBMin, 'BaseV1Router: INSUFFICIENT_B_AMOUNT'); } function removeLiquidityFTM( address token, bool stable, uint liquidity, uint amountTokenMin, uint amountFTMMin, address to ) public returns (uint amountToken, uint amountFTM) { (amountToken, amountFTM) = removeLiquidity( token, address(wftm), stable, liquidity, amountTokenMin, amountFTMMin, address(this) ); _safeTransfer(token, to, amountToken); wftm.withdraw(amountFTM); _safeTransferFTM(to, amountFTM); } function _safeTransferFTM(address to, uint value) internal { (bool success,) = to.call{value:value}(new bytes(0)); require(success, 'TransferHelper: ETH_TRANSFER_FAILED'); } function _safeTransfer(address token, address to, uint256 value) internal { require(token.code.length > 0); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(IERC20.transfer.selector, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool)))); } function _safeTransferFrom(address token, address from, address to, uint256 value) internal { require(token.code.length > 0); (bool success, bytes memory data) = token.call(abi.encodeWithSelector(IERC20.transferFrom.selector, from, to, value)); require(success && (data.length == 0 || abi.decode(data, (bool)))); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract IBaseV1Factory","name":"_factory","type":"address"},{"internalType":"contract IWFTM","name":"_wftm","type":"address"},{"internalType":"contract ILpDepositor","name":"_lpDepositor","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"},{"internalType":"bool","name":"stable","type":"bool"},{"internalType":"uint256","name":"amountADesired","type":"uint256"},{"internalType":"uint256","name":"amountBDesired","type":"uint256"},{"internalType":"uint256","name":"amountAMin","type":"uint256"},{"internalType":"uint256","name":"amountBMin","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"addLiquidity","outputs":[{"internalType":"uint256","name":"amountA","type":"uint256"},{"internalType":"uint256","name":"amountB","type":"uint256"},{"internalType":"uint256","name":"liquidity","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"bool","name":"stable","type":"bool"},{"internalType":"uint256","name":"amountTokenDesired","type":"uint256"},{"internalType":"uint256","name":"amountTokenMin","type":"uint256"},{"internalType":"uint256","name":"amountFTMMin","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"addLiquidityFTM","outputs":[{"internalType":"uint256","name":"amountToken","type":"uint256"},{"internalType":"uint256","name":"amountFTM","type":"uint256"},{"internalType":"uint256","name":"liquidity","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"depositTokenForPair","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"factory","outputs":[{"internalType":"contract IBaseV1Factory","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"},{"internalType":"bool","name":"stable","type":"bool"}],"name":"getReserves","outputs":[{"internalType":"uint256","name":"reserveA","type":"uint256"},{"internalType":"uint256","name":"reserveB","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpDepositor","outputs":[{"internalType":"contract ILpDepositor","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"},{"internalType":"bool","name":"stable","type":"bool"}],"name":"pairFor","outputs":[{"internalType":"address","name":"pair","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"},{"internalType":"bool","name":"stable","type":"bool"},{"internalType":"uint256","name":"amountADesired","type":"uint256"},{"internalType":"uint256","name":"amountBDesired","type":"uint256"}],"name":"quoteAddLiquidity","outputs":[{"internalType":"uint256","name":"amountA","type":"uint256"},{"internalType":"uint256","name":"amountB","type":"uint256"},{"internalType":"uint256","name":"liquidity","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"},{"internalType":"bool","name":"stable","type":"bool"},{"internalType":"uint256","name":"liquidity","type":"uint256"}],"name":"quoteRemoveLiquidity","outputs":[{"internalType":"uint256","name":"amountA","type":"uint256"},{"internalType":"uint256","name":"amountB","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"},{"internalType":"bool","name":"stable","type":"bool"},{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"amountAMin","type":"uint256"},{"internalType":"uint256","name":"amountBMin","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"removeLiquidity","outputs":[{"internalType":"uint256","name":"amountA","type":"uint256"},{"internalType":"uint256","name":"amountB","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"bool","name":"stable","type":"bool"},{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"amountTokenMin","type":"uint256"},{"internalType":"uint256","name":"amountFTMMin","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"removeLiquidityFTM","outputs":[{"internalType":"uint256","name":"amountToken","type":"uint256"},{"internalType":"uint256","name":"amountFTM","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenA","type":"address"},{"internalType":"address","name":"tokenB","type":"address"}],"name":"sortTokens","outputs":[{"internalType":"address","name":"token0","type":"address"},{"internalType":"address","name":"token1","type":"address"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"wftm","outputs":[{"internalType":"contract IWFTM","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6101006040523480156200001257600080fd5b5060405162002100380380620021008339810160408190526200003591620000db565b6001600160a01b038316608081905260408051631355724960e31b81529051639aab9248916004808201926020929091908290030181865afa15801562000080573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000a691906200012f565b60e0526001600160a01b0391821660a0521660c0525062000149565b6001600160a01b0381168114620000d857600080fd5b50565b600080600060608486031215620000f157600080fd5b8351620000fe81620000c2565b60208501519093506200011181620000c2565b60408501519092506200012481620000c2565b809150509250925092565b6000602082840312156200014257600080fd5b5051919050565b60805160a05160c05160e051611f07620001f9600039600061062801526000818161011c01528181610aaa01528181610c8501528181610e25015281816116fc015261179901526000818160d60152818161033a01528181610365015281816103b40152818161087c015281816108b2015281816108e7015261099101526000818161030601528181610446015281816105ed01528181610ff8015281816113e401526114850152611f076000f3fe6080604052600436106100c65760003560e01c80635e60dab51161007f57806395ef2b4b1161005957806395ef2b4b146102b457806398a0fb3c146102d4578063c45a0155146102f4578063f4f45b461461032857600080fd5b80635e60dab5146102465780636aa792b814610266578063790ba7b51461029457600080fd5b806302f283be1461010a5780633e7815ad1461015b5780634386e63c146101905780634c1ee03e146101b0578063544caa56146101d05780635b4265461461021057600080fd5b3661010557336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610103576101036119a3565b005b600080fd5b34801561011657600080fd5b5061013e7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561016757600080fd5b5061017b6101763660046119df565b61035c565b60408051928352602083019190915201610152565b34801561019c57600080fd5b5061017b6101ab366004611a46565b61043f565b3480156101bc57600080fd5b5061013e6101cb366004611a97565b6105a6565b3480156101dc57600080fd5b506101f06101eb366004611ae2565b6106ae565b604080516001600160a01b03938416815292909116602083015201610152565b34801561021c57600080fd5b5061013e61022b366004611b1b565b6000602081905290815260409020546001600160a01b031681565b34801561025257600080fd5b5061017b610261366004611a97565b6107a7565b6102796102743660046119df565b610871565b60408051938452602084019290925290820152606001610152565b3480156102a057600080fd5b506102796102af366004611b38565b610ba5565b3480156102c057600080fd5b5061017b6102cf366004611bbd565b610d67565b3480156102e057600080fd5b506102796102ef366004611c38565b610ff0565b34801561030057600080fd5b5061013e7f000000000000000000000000000000000000000000000000000000000000000081565b34801561033457600080fd5b5061013e7f000000000000000000000000000000000000000000000000000000000000000081565b60008061038e887f00000000000000000000000000000000000000000000000000000000000000008989898930610d67565b909250905061039e8884846111f0565b604051632e1a7d4d60e01b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d906024016020604051808303816000875af1158015610405573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104299190611c93565b5061043483826112df565b965096945050505050565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636801cc308888886040518463ffffffff1660e01b815260040161049493929190611cac565b602060405180830381865afa1580156104b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d59190611cd0565b90506001600160a01b0381166104f257600080925092505061059d565b6000806105008989896107a7565b915091506000836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610544573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105689190611c93565b9050806105758489611d03565b61057f9190611d22565b95508061058c8389611d03565b6105969190611d22565b9450505050505b94509492505050565b60008060006105b586866106ae565b6040516bffffffffffffffffffffffff19606084811b8216602084015283901b16603482015286151560f81b604882015291935091507f000000000000000000000000000000000000000000000000000000000000000090604901604051602081830303815290604052805190602001207f000000000000000000000000000000000000000000000000000000000000000060405160200161068c939291906001600160f81b0319815260609390931b6bffffffffffffffffffffffff191660018401526015830191909152603582015260550190565b60408051601f1981840301815291905280516020909101209695505050505050565b600080826001600160a01b0316846001600160a01b031614156107225760405162461bcd60e51b815260206004820152602160248201527f426173655631526f757465723a204944454e544943414c5f41444452455353456044820152605360f81b60648201526084015b60405180910390fd5b826001600160a01b0316846001600160a01b031610610742578284610745565b83835b90925090506001600160a01b0382166107a05760405162461bcd60e51b815260206004820152601a60248201527f426173655631526f757465723a205a45524f5f414444524553530000000000006044820152606401610719565b9250929050565b60008060006107b686866106ae565b5090506000806107c78888886105a6565b6001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610804573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108289190611d5b565b506001600160701b031691506001600160701b03169150826001600160a01b0316886001600160a01b03161461085f578082610862565b81815b90999098509650505050505050565b60008060006108a5897f00000000000000000000000000000000000000000000000000000000000000008a8a348b8b6113ad565b909350915060006108d78a7f00000000000000000000000000000000000000000000000000000000000000008b6105a6565b90506108e58a3383876115cb565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0846040518263ffffffff1660e01b815260040160206040518083038185885af1158015610945573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061096a9190611c93565b5060405163a9059cbb60e01b81526001600160a01b038281166004830152602482018590527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156109da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fe9190611da0565b610a0a57610a0a6119a3565b6040516335313c2160e11b81523060048201526001600160a01b03821690636a627842906024016020604051808303816000875af1158015610a50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a749190611c93565b91506000610a81826116c3565b6040516311f9fbc960e21b81526001600160a01b038481166004830152602482018690529192507f0000000000000000000000000000000000000000000000000000000000000000909116906347e7ef2490604401600060405180830381600087803b158015610af057600080fd5b505af1158015610b04573d6000803e3d6000fd5b505060405163a9059cbb60e01b81526001600160a01b038981166004830152602482018790528416925063a9059cbb91506044016020604051808303816000875af1158015610b57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7b9190611da0565b5083341115610b9757610b9733610b928634611dbd565b6112df565b505096509650969350505050565b6000806000610bb98b8b8b8b8b8b8b6113ad565b90935091506000610bcb8c8c8c6105a6565b9050610bd98c3383876115cb565b610be58b3383866115cb565b6040516335313c2160e11b81523060048201526001600160a01b03821690636a627842906024016020604051808303816000875af1158015610c2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4f9190611c93565b91506000610c5c826116c3565b6040516311f9fbc960e21b81526001600160a01b038481166004830152602482018690529192507f0000000000000000000000000000000000000000000000000000000000000000909116906347e7ef2490604401600060405180830381600087803b158015610ccb57600080fd5b505af1158015610cdf573d6000803e3d6000fd5b505060405163a9059cbb60e01b81526001600160a01b038981166004830152602482018790528416925063a9059cbb91506044016020604051808303816000875af1158015610d32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d569190611da0565b505050985098509895505050505050565b6000806000610d778a8a8a6105a6565b90506000610d84826116c3565b6040516323b872dd60e01b8152336004820152306024820152604481018a90529091506001600160a01b038216906323b872dd906064016020604051808303816000875af1158015610dda573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dfe9190611da0565b5060405163f3fef3a360e01b81526001600160a01b038381166004830152602482018a90527f0000000000000000000000000000000000000000000000000000000000000000169063f3fef3a390604401600060405180830381600087803b158015610e6957600080fd5b505af1158015610e7d573d6000803e3d6000fd5b505060405163a9059cbb60e01b81526001600160a01b03851660048201819052602482018c9052925063a9059cbb91506044016020604051808303816000875af1158015610ecf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ef39190611da0565b5060405163226bf2d160e21b81526001600160a01b03868116600483015260009182918516906389afcb449060240160408051808303816000875af1158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190611dd4565b915091506000610f748e8e6106ae565b509050806001600160a01b03168e6001600160a01b031614610f97578183610f9a565b82825b909750955089871015610fbf5760405162461bcd60e51b815260040161071990611df8565b88861015610fdf5760405162461bcd60e51b815260040161071990611e3b565b505050505097509795505050505050565b6000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636801cc308a8a8a6040518463ffffffff1660e01b815260040161104693929190611cac565b602060405180830381865afa158015611063573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110879190611cd0565b9050600080806001600160a01b0384161561111157836001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fe9190611c93565b905061110b8c8c8c6107a7565b90935091505b8215801561111d575081155b1561114e578896508795506103e861113d611138888a611d03565b61183b565b6111479190611dbd565b94506111e1565b600061115b8a85856118ab565b90508881116111a35789975095508561119c84611178848b611d03565b6111829190611d22565b8461118d858b611d03565b6111979190611d22565b61198b565b95506111df565b60006111b08a85876118ab565b98508997508890506111db856111c68584611d03565b6111d09190611d22565b8561118d868c611d03565b9650505b505b50505050955095509592505050565b6000836001600160a01b03163b1161120757600080fd5b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b17905291516000928392908716916112639190611e7e565b6000604051808303816000865af19150503d80600081146112a0576040519150601f19603f3d011682016040523d82523d6000602084013e6112a5565b606091505b50915091508180156112cf5750805115806112cf5750808060200190518101906112cf9190611da0565b6112d857600080fd5b5050505050565b604080516000808252602082019092526001600160a01b0384169083906040516113099190611e7e565b60006040518083038185875af1925050503d8060008114611346576040519150601f19603f3d011682016040523d82523d6000602084013e61134b565b606091505b50509050806113a85760405162461bcd60e51b815260206004820152602360248201527f5472616e7366657248656c7065723a204554485f5452414e534645525f46414960448201526213115160ea1b6064820152608401610719565b505050565b600080838610156113bd57600080fd5b828510156113ca57600080fd5b6040516306801cc360e41b81526000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636801cc309061141d908d908d908d90600401611cac565b602060405180830381865afa15801561143a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145e9190611cd0565b90506001600160a01b038116611504576040516320b7f73960e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906382dfdce4906114be908d908d908d90600401611cac565b6020604051808303816000875af11580156114dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115019190611cd0565b90505b6000806115128c8c8c6107a7565b91509150816000148015611524575080155b15611534578894508793506115bc565b60006115418a84846118ab565b9050888111611575578681101561156a5760405162461bcd60e51b815260040161071990611e3b565b8995509350836115ba565b60006115828a84866118ab565b90508a811115611594576115946119a3565b888110156115b45760405162461bcd60e51b815260040161071990611df8565b95508894505b505b50505097509795505050505050565b6000846001600160a01b03163b116115e257600080fd5b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b17905291516000928392908816916116469190611e7e565b6000604051808303816000865af19150503d8060008114611683576040519150601f19603f3d011682016040523d82523d6000602084013e611688565b606091505b50915091508180156116b25750805115806116b25750808060200190518101906116b29190611da0565b6116bb57600080fd5b505050505050565b6001600160a01b03808216600090815260208190526040812054909116806118355760405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152600019602483015284169063095ea7b3906044016020604051808303816000875af1158015611755573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117799190611da0565b50604051630d816d3360e41b81526001600160a01b0384811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063d816d33090602401602060405180830381865afa1580156117e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118049190611cd0565b6001600160a01b03848116600090815260208190526040902080546001600160a01b03191691831691909117905590505b92915050565b6000600382111561189c5750806000611855600283611d22565b611860906001611eb9565b90505b818110156118965790508060028161187b8186611d22565b6118859190611eb9565b61188f9190611d22565b9050611863565b50919050565b81156118a6575060015b919050565b60008084116119065760405162461bcd60e51b815260206004820152602160248201527f426173655631526f757465723a20494e53554646494349454e545f414d4f554e6044820152601560fa1b6064820152608401610719565b6000831180156119165750600082115b61196e5760405162461bcd60e51b8152602060048201526024808201527f426173655631526f757465723a20494e53554646494349454e545f4c495155496044820152634449545960e01b6064820152608401610719565b826119798386611d03565b6119839190611d22565b949350505050565b600081831061199a578161199c565b825b9392505050565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b03811681146119ce57600080fd5b50565b80151581146119ce57600080fd5b60008060008060008060c087890312156119f857600080fd5b8635611a03816119b9565b95506020870135611a13816119d1565b945060408701359350606087013592506080870135915060a0870135611a38816119b9565b809150509295509295509295565b60008060008060808587031215611a5c57600080fd5b8435611a67816119b9565b93506020850135611a77816119b9565b92506040850135611a87816119d1565b9396929550929360600135925050565b600080600060608486031215611aac57600080fd5b8335611ab7816119b9565b92506020840135611ac7816119b9565b91506040840135611ad7816119d1565b809150509250925092565b60008060408385031215611af557600080fd5b8235611b00816119b9565b91506020830135611b10816119b9565b809150509250929050565b600060208284031215611b2d57600080fd5b813561199c816119b9565b600080600080600080600080610100898b031215611b5557600080fd5b8835611b60816119b9565b97506020890135611b70816119b9565b96506040890135611b80816119d1565b9550606089013594506080890135935060a0890135925060c0890135915060e0890135611bac816119b9565b809150509295985092959890939650565b600080600080600080600060e0888a031215611bd857600080fd5b8735611be3816119b9565b96506020880135611bf3816119b9565b95506040880135611c03816119d1565b9450606088013593506080880135925060a0880135915060c0880135611c28816119b9565b8091505092959891949750929550565b600080600080600060a08688031215611c5057600080fd5b8535611c5b816119b9565b94506020860135611c6b816119b9565b93506040860135611c7b816119d1565b94979396509394606081013594506080013592915050565b600060208284031215611ca557600080fd5b5051919050565b6001600160a01b039384168152919092166020820152901515604082015260600190565b600060208284031215611ce257600080fd5b815161199c816119b9565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615611d1d57611d1d611ced565b500290565b600082611d3f57634e487b7160e01b600052601260045260246000fd5b500490565b80516001600160701b03811681146118a657600080fd5b600080600060608486031215611d7057600080fd5b611d7984611d44565b9250611d8760208501611d44565b9150604084015163ffffffff81168114611ad757600080fd5b600060208284031215611db257600080fd5b815161199c816119d1565b600082821015611dcf57611dcf611ced565b500390565b60008060408385031215611de757600080fd5b505080516020909101519092909150565b60208082526023908201527f426173655631526f757465723a20494e53554646494349454e545f415f414d4f60408201526215539560ea1b606082015260800190565b60208082526023908201527f426173655631526f757465723a20494e53554646494349454e545f425f414d4f60408201526215539560ea1b606082015260800190565b6000825160005b81811015611e9f5760208186018101518583015201611e85565b81811115611eae576000828501525b509190910192915050565b60008219821115611ecc57611ecc611ced565b50019056fea2646970667358221220e4727272fbce100b8d0dfa98836fae0dc09a8abf6ab0fcaa91bf1249b9b679c164736f6c634300080c00330000000000000000000000003faab499b519fdc5819e3d7ed0c26111904cbc2800000000000000000000000021be370d5312f44cb42ce377bc9b8a0cef1a4c8300000000000000000000000026e1a0d851cf28e697870e1b7f053b605c8b060f
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000003faab499b519fdc5819e3d7ed0c26111904cbc2800000000000000000000000021be370d5312f44cb42ce377bc9b8a0cef1a4c8300000000000000000000000026e1a0d851cf28e697870e1b7f053b605c8b060f
-----Decoded View---------------
Arg [0] : _factory (address): 0x3faab499b519fdc5819e3d7ed0c26111904cbc28
Arg [1] : _wftm (address): 0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83
Arg [2] : _lpDepositor (address): 0x26e1a0d851cf28e697870e1b7f053b605c8b060f
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000003faab499b519fdc5819e3d7ed0c26111904cbc28
Arg [1] : 00000000000000000000000021be370d5312f44cb42ce377bc9b8a0cef1a4c83
Arg [2] : 00000000000000000000000026e1a0d851cf28e697870e1b7f053b605c8b060f
Deployed ByteCode Sourcemap
1431:11282:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2046:10;-1:-1:-1;;;;;2068:4:0;2046:27;;2039:35;;;;:::i;:::-;1431:11282;;;;;1547:41;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;330:32:1;;;312:51;;300:2;285:18;1547:41:0;;;;;;;;11199:609;;;;;;;;;;-1:-1:-1;11199:609:0;;;;;:::i;:::-;;:::i;:::-;;;;1542:25:1;;;1598:2;1583:18;;1576:34;;;;1515:18;11199:609:0;1368:248:1;5747:736:0;;;;;;;;;;-1:-1:-1;5747:736:0;;;;;:::i;:::-;;:::i;2992:415::-;;;;;;;;;;-1:-1:-1;2992:415:0;;;;;:::i;:::-;;:::i;2561:339::-;;;;;;;;;;-1:-1:-1;2561:339:0;;;;;:::i;:::-;;:::i;:::-;;;;-1:-1:-1;;;;;3577:15:1;;;3559:34;;3629:15;;;;3624:2;3609:18;;3602:43;3494:18;2561:339:0;3347:304:1;1691:54:0;;;;;;;;;;-1:-1:-1;1691:54:0;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1691:54:0;;;3897:381;;;;;;;;;;-1:-1:-1;3897:381:0;;;;;:::i;:::-;;:::i;9184:1032::-;;;;;;:::i;:::-;;:::i;:::-;;;;4331:25:1;;;4387:2;4372:18;;4365:34;;;;4415:18;;;4408:34;4319:2;4304:18;9184:1032:0;4129:319:1;8363:813:0;;;;;;;;;;-1:-1:-1;8363:813:0;;;;;:::i;:::-;;:::i;10259:932::-;;;;;;;;;;-1:-1:-1;10259:932:0;;;;;:::i;:::-;;:::i;4286:1453::-;;;;;;;;;;-1:-1:-1;4286:1453:0;;;;;:::i;:::-;;:::i;1467:39::-;;;;;;;;;;;;;;;1513:27;;;;;;;;;;;;;;;11199:609;11400:16;11418:14;11472:203;11502:5;11530:4;11550:6;11571:9;11595:14;11624:12;11659:4;11472:15;:203::i;:::-;11445:230;;-1:-1:-1;11445:230:0;-1:-1:-1;11686:37:0;11700:5;11707:2;11445:230;11686:13;:37::i;:::-;11734:24;;-1:-1:-1;;;11734:24:0;;;;;7538:25:1;;;11734:4:0;-1:-1:-1;;;;;11734:13:0;;;;7511:18:1;;11734:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11769:31;11786:2;11790:9;11769:16;:31::i;:::-;11199:609;;;;;;;;;:::o;5747:736::-;5904:12;5918;5995:13;6011:7;-1:-1:-1;;;;;6011:15:0;;6027:6;6035;6043;6011:39;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5995:55;-1:-1:-1;;;;;;6067:19:0;;6063:64;;6111:1;6113;6103:12;;;;;;;6063:64;6140:13;6155;6172:35;6184:6;6192;6200;6172:11;:35::i;:::-;6139:68;;;;6218:17;6245:5;-1:-1:-1;;;;;6238:25:0;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6218:47;-1:-1:-1;6218:47:0;6288:20;6300:8;6288:9;:20;:::i;:::-;:35;;;;:::i;:::-;6278:45;-1:-1:-1;6415:12:0;6392:20;6404:8;6392:9;:20;:::i;:::-;:35;;;;:::i;:::-;6382:45;;5932:551;;;;5747:736;;;;;;;;:::o;2992:415::-;3075:12;3101:14;3117;3135:26;3146:6;3154;3135:10;:26::i;:::-;3298:40;;-1:-1:-1;;9185:2:1;9181:15;;;9177:24;;3298:40:0;;;9165:37:1;9236:15;;;9232:24;9218:12;;;9211:46;9303:14;;9296:22;9291:3;9287:32;9273:12;;;9266:54;3100:61:0;;-1:-1:-1;3100:61:0;-1:-1:-1;3266:7:0;;9336:12:1;;3298:40:0;;;;;;;;;;;;3288:51;;;;;;3354:12;3213:182;;;;;;;;;-1:-1:-1;;;;;;9666:26:1;;9729:2;9725:15;;;;-1:-1:-1;;9721:53:1;9717:1;9708:11;;9701:74;9800:2;9791:12;;9784:28;;;;9837:2;9828:12;;9821:28;9874:2;9865:12;;9359:524;3213:182:0;;;;-1:-1:-1;;3213:182:0;;;;;;;;;3203:193;;3213:182;3203:193;;;;;2992:415;-1:-1:-1;;;;;;2992:415:0:o;2561:339::-;2634:14;2650;2695:6;-1:-1:-1;;;;;2685:16:0;:6;-1:-1:-1;;;;;2685:16:0;;;2677:62;;;;-1:-1:-1;;;2677:62:0;;10090:2:1;2677:62:0;;;10072:21:1;10129:2;10109:18;;;10102:30;10168:34;10148:18;;;10141:62;-1:-1:-1;;;10219:18:1;;;10212:31;10260:19;;2677:62:0;;;;;;;;;2778:6;-1:-1:-1;;;;;2769:15:0;:6;-1:-1:-1;;;;;2769:15:0;;:53;;2807:6;2815;2769:53;;;2788:6;2796;2769:53;2750:72;;-1:-1:-1;2750:72:0;-1:-1:-1;;;;;;2841:20:0;;2833:59;;;;-1:-1:-1;;;2833:59:0;;10492:2:1;2833:59:0;;;10474:21:1;10531:2;10511:18;;;10504:30;10570:28;10550:18;;;10543:56;10616:18;;2833:59:0;10290:350:1;2833:59:0;2561:339;;;;;:::o;3897:381::-;3984:13;3999;4026:14;4045:26;4056:6;4064;4045:10;:26::i;:::-;4025:46;;;4083:13;4098;4128:31;4136:6;4144;4152;4128:7;:31::i;:::-;-1:-1:-1;;;;;4116:56:0;;:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4082:92;-1:-1:-1;;;;;4082:92:0;;;-1:-1:-1;;;;;4082:92:0;;;4218:6;-1:-1:-1;;;;;4208:16:0;:6;-1:-1:-1;;;;;4208:16:0;;:62;;4251:8;4261;4208:62;;;4228:8;4238;4208:62;4185:85;;;;-1:-1:-1;3897:381:0;-1:-1:-1;;;;;;;3897:381:0:o;9184:1032::-;9401:16;9419:14;9435;9489:206;9517:5;9545:4;9565:6;9586:18;9619:9;9643:14;9672:12;9489:13;:206::i;:::-;9462:233;;-1:-1:-1;9462:233:0;-1:-1:-1;9706:12:0;9721:37;9729:5;9744:4;9751:6;9721:7;:37::i;:::-;9706:52;;9769:55;9787:5;9794:10;9806:4;9812:11;9769:17;:55::i;:::-;9835:4;-1:-1:-1;;;;;9835:12:0;;9855:9;9835:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;9885:30:0;;-1:-1:-1;;;9885:30:0;;-1:-1:-1;;;;;11485:32:1;;;9885:30:0;;;11467:51:1;11534:18;;;11527:34;;;9885:4:0;:13;;;;11440:18:1;;9885:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9878:38;;;;:::i;:::-;9941:37;;-1:-1:-1;;;9941:37:0;;9972:4;9941:37;;;312:51:1;-1:-1:-1;;;;;9941:22:0;;;;;285:18:1;;9941:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9929:49;;9989:14;10006:22;10023:4;10006:16;:22::i;:::-;10039:36;;-1:-1:-1;;;10039:36:0;;-1:-1:-1;;;;;11485:32:1;;;10039:36:0;;;11467:51:1;11534:18;;;11527:34;;;9989:39:0;;-1:-1:-1;10039:11:0;:19;;;;;;11440:18:1;;10039:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10086:31:0;;-1:-1:-1;;;10086:31:0;;-1:-1:-1;;;;;11485:32:1;;;10086:31:0;;;11467:51:1;11534:18;;;11527:34;;;10086:16:0;;;-1:-1:-1;10086:16:0;;-1:-1:-1;11440:18:1;;10086:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10146:9;10134;:21;10130:78;;;10157:51;10174:10;10186:21;10198:9;10186;:21;:::i;:::-;10157:16;:51::i;:::-;9451:765;;9184:1032;;;;;;;;;;:::o;8363:813::-;8615:12;8629;8643:14;8691:93;8705:6;8713;8721;8729:14;8745;8761:10;8773;8691:13;:93::i;:::-;8670:114;;-1:-1:-1;8670:114:0;-1:-1:-1;8795:12:0;8810:31;8818:6;8826;8834;8810:7;:31::i;:::-;8795:46;;8852:52;8870:6;8878:10;8890:4;8896:7;8852:17;:52::i;:::-;8915;8933:6;8941:10;8953:4;8959:7;8915:17;:52::i;:::-;8990:37;;-1:-1:-1;;;8990:37:0;;9021:4;8990:37;;;312:51:1;-1:-1:-1;;;;;8990:22:0;;;;;285:18:1;;8990:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8978:49;;9040:14;9057:22;9074:4;9057:16;:22::i;:::-;9090:36;;-1:-1:-1;;;9090:36:0;;-1:-1:-1;;;;;11485:32:1;;;9090:36:0;;;11467:51:1;11534:18;;;11527:34;;;9040:39:0;;-1:-1:-1;9090:11:0;:19;;;;;;11440:18:1;;9090:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9137:31:0;;-1:-1:-1;;;9137:31:0;;-1:-1:-1;;;;;11485:32:1;;;9137:31:0;;;11467:51:1;11534:18;;;11527:34;;;9137:16:0;;;-1:-1:-1;9137:16:0;;-1:-1:-1;11440:18:1;;9137:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8659:517;;8363:813;;;;;;;;;;;;:::o;10259:932::-;10477:12;10491;10516;10531:31;10539:6;10547;10555;10531:7;:31::i;:::-;10516:46;;10575:14;10592:22;10609:4;10592:16;:22::i;:::-;10625:58;;-1:-1:-1;;;10625:58:0;;10646:10;10625:58;;;12192:34:1;10666:4:0;12242:18:1;;;12235:43;12294:18;;;12287:34;;;10575:39:0;;-1:-1:-1;;;;;;10625:20:0;;;;;12127:18:1;;10625:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10694:37:0;;-1:-1:-1;;;10694:37:0;;-1:-1:-1;;;;;11485:32:1;;;10694:37:0;;;11467:51:1;11534:18;;;11527:34;;;10694:11:0;:20;;;;11440:18:1;;10694:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10744:38:0;;-1:-1:-1;;;10744:38:0;;-1:-1:-1;;;;;10744:21:0;;:38;;;11467:51:1;;;11534:18;;;11527:34;;;10744:21:0;-1:-1:-1;10744:21:0;;-1:-1:-1;11440:18:1;;10744:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;10850:26:0;;-1:-1:-1;;;10850:26:0;;-1:-1:-1;;;;;330:32:1;;;10850:26:0;;;312:51:1;10820:12:0;;;;10850:22;;;;;285:18:1;;10850:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10819:57;;;;10888:14;10907:26;10918:6;10926;10907:10;:26::i;:::-;10887:46;;;10975:6;-1:-1:-1;;;;;10965:16:0;:6;-1:-1:-1;;;;;10965:16:0;;:58;;11006:7;11015;10965:58;;;10985:7;10994;10965:58;10944:79;;-1:-1:-1;10944:79:0;-1:-1:-1;11042:21:0;;;;11034:69;;;;-1:-1:-1;;;11034:69:0;;;;;;;:::i;:::-;11133:10;11122:7;:21;;11114:69;;;;-1:-1:-1;;;11114:69:0;;;;;;;:::i;:::-;10505:686;;;;;10259:932;;;;;;;;;;:::o;4286:1453::-;4475:12;4489;4503:14;4582:13;4598:7;-1:-1:-1;;;;;4598:15:0;;4614:6;4622;4630;4598:39;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4582:55;-1:-1:-1;4649:13:0;;;-1:-1:-1;;;;;4733:19:0;;;4729:167;;4791:5;-1:-1:-1;;;;;4784:25:0;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4769:42;;4849:35;4861:6;4869;4877;4849:11;:35::i;:::-;4826:58;;-1:-1:-1;4826:58:0;-1:-1:-1;4729:167:0;4910:13;;:30;;;;-1:-1:-1;4927:13:0;;4910:30;4906:826;;;4979:14;;-1:-1:-1;4995:14:0;;-1:-1:-1;1640:5:0;5037:23;5042:17;4995:14;4979;5042:17;:::i;:::-;5037:4;:23::i;:::-;:43;;;;:::i;:::-;5025:55;;4906:826;;;5115:19;5137:50;5152:14;5168:8;5178;5137:14;:50::i;:::-;5115:72;;5224:14;5206;:32;5202:519;;5281:14;;-1:-1:-1;5297:14:0;-1:-1:-1;5297:14:0;5343:73;5372:8;5347:22;5357:12;5281:14;5347:22;:::i;:::-;:33;;;;:::i;:::-;5407:8;5382:22;5392:12;5382:7;:22;:::i;:::-;:33;;;;:::i;:::-;5343:3;:73::i;:::-;5331:85;;5202:519;;;5457:19;5479:50;5494:14;5510:8;5520;5479:14;:50::i;:::-;5457:72;-1:-1:-1;5586:14:0;;-1:-1:-1;5457:72:0;;-1:-1:-1;5632:73:0;5661:8;5636:22;5646:12;5457:72;5636:22;:::i;:::-;:33;;;;:::i;:::-;5696:8;5671:22;5681:12;5671:7;:22;:::i;5632:73::-;5620:85;;5438:283;5202:519;5098:634;4906:826;4519:1220;;;;4286:1453;;;;;;;;;:::o;12020:327::-;12133:1;12113:5;-1:-1:-1;;;;;12113:17:0;;:21;12105:30;;;;;;12202:59;;;-1:-1:-1;;;;;11485:32:1;;;12202:59:0;;;11467:51:1;11534:18;;;;11527:34;;;12202:59:0;;;;;;;;;;11440:18:1;;;;12202:59:0;;;;;;;-1:-1:-1;;;;;12202:59:0;-1:-1:-1;;;12202:59:0;;;12191:71;;-1:-1:-1;;;;12191:10:0;;;;:71;;12202:59;12191:71;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12146:116;;;;12281:7;:57;;;;-1:-1:-1;12293:11:0;;:16;;:44;;;12324:4;12313:24;;;;;;;;;;;;:::i;:::-;12273:66;;;;;;12094:253;;12020:327;;;:::o;11816:196::-;11925:12;;;11887;11925;;;;;;;;;-1:-1:-1;;;;;11904:7:0;;;11918:5;;11904:34;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11886:52;;;11957:7;11949:55;;;;-1:-1:-1;;;11949:55:0;;14155:2:1;11949:55:0;;;14137:21:1;14194:2;14174:18;;;14167:30;14233:34;14213:18;;;14206:62;-1:-1:-1;;;14284:18:1;;;14277:33;14327:19;;11949:55:0;13953:399:1;11949:55:0;11875:137;11816:196;;:::o;6491:1478::-;6723:12;6737;6788:10;6770:14;:28;;6762:37;;;;;;6836:10;6818:14;:28;;6810:37;;;;;;6926:39;;-1:-1:-1;;;6926:39:0;;6910:13;;-1:-1:-1;;;;;6926:7:0;:15;;;;:39;;6942:6;;6950;;6958;;6926:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6910:55;-1:-1:-1;;;;;;6980:19:0;;6976:102;;7024:42;;-1:-1:-1;;;7024:42:0;;-1:-1:-1;;;;;7024:7:0;:18;;;;:42;;7043:6;;7051;;7059;;7024:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7016:50;;6976:102;7089:13;7104;7121:35;7133:6;7141;7149;7121:11;:35::i;:::-;7088:68;;;;7171:8;7183:1;7171:13;:30;;;;-1:-1:-1;7188:13:0;;7171:30;7167:795;;;7240:14;;-1:-1:-1;7256:14:0;;-1:-1:-1;7167:795:0;;;7304:19;7326:50;7341:14;7357:8;7367;7326:14;:50::i;:::-;7304:72;;7413:14;7395;:32;7391:560;;7474:10;7456:14;:28;;7448:76;;;;-1:-1:-1;;;7448:76:0;;;;;;;:::i;:::-;7565:14;;-1:-1:-1;7581:14:0;-1:-1:-1;7581:14:0;7391:560;;;7637:19;7659:50;7674:14;7690:8;7700;7659:14;:50::i;:::-;7637:72;;7753:14;7735;:32;;7728:40;;;;:::i;:::-;7813:10;7795:14;:28;;7787:76;;;;-1:-1:-1;;;7787:76:0;;;;;;;:::i;:::-;7904:14;-1:-1:-1;7920:14:0;;-1:-1:-1;7391:560:0;7289:673;7167:795;6751:1218;;;6491:1478;;;;;;;;;;:::o;12355:355::-;12486:1;12466:5;-1:-1:-1;;;;;12466:17:0;;:21;12458:30;;;;;;12555:69;;;-1:-1:-1;;;;;12210:15:1;;;12555:69:0;;;12192:34:1;12262:15;;;12242:18;;;12235:43;12294:18;;;;12287:34;;;12555:69:0;;;;;;;;;;12127:18:1;;;;12555:69:0;;;;;;;-1:-1:-1;;;;;12555:69:0;-1:-1:-1;;;12555:69:0;;;12544:81;;-1:-1:-1;;;;12544:10:0;;;;:81;;12555:69;12544:81;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12499:126;;;;12644:7;:57;;;;-1:-1:-1;12656:11:0;;:16;;:44;;;12687:4;12676:24;;;;;;;;;;;;:::i;:::-;12636:66;;;;;;12447:263;;12355:355;;;;:::o;7977:378::-;-1:-1:-1;;;;;8069:25:0;;;8035:6;8069:25;;;;;;;;;;;8035:6;;8069:25;8109:28;8105:220;;8154:58;;-1:-1:-1;;;8154:58:0;;-1:-1:-1;;;;;8183:11:0;11485:32:1;;8154:58:0;;;11467:51:1;-1:-1:-1;;11534:18:1;;;11527:34;8154:20:0;;;;;11440:18:1;;8154:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;8235:30:0;;-1:-1:-1;;;8235:30:0;;-1:-1:-1;;;;;330:32:1;;;8235:30:0;;;312:51:1;8235:11:0;:24;;;;285:18:1;;8235:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;8280:25:0;;;:19;:25;;;;;;;;;;:33;;-1:-1:-1;;;;;;8280:33:0;;;;;;;;;;;-1:-1:-1;8105:220:0;8342:5;7977:378;-1:-1:-1;;7977:378:0:o;2250:303::-;2295:6;2322:1;2318;:5;2314:232;;;-1:-1:-1;2344:1:0;2360:6;2369:5;2373:1;2344;2369:5;:::i;:::-;:9;;2377:1;2369:9;:::i;:::-;2360:18;;2393:92;2404:1;2400;:5;2393:92;;;2430:1;-1:-1:-1;2430:1:0;2468;2430;2455:5;2430:1;2455;:5;:::i;:::-;:9;;;;:::i;:::-;2454:15;;;;:::i;:::-;2450:19;;2393:92;;;2325:171;2250:303;;;:::o;2314:232::-;2506:6;;2502:44;;-1:-1:-1;2533:1:0;2502:44;2250:303;;;:::o;3520:319::-;3611:12;3654:1;3644:7;:11;3636:57;;;;-1:-1:-1;;;3636:57:0;;14961:2:1;3636:57:0;;;14943:21:1;15000:2;14980:18;;;14973:30;15039:34;15019:18;;;15012:62;-1:-1:-1;;;15090:18:1;;;15083:31;15131:19;;3636:57:0;14759:397:1;3636:57:0;3723:1;3712:8;:12;:28;;;;;3739:1;3728:8;:12;3712:28;3704:77;;;;-1:-1:-1;;;3704:77:0;;15363:2:1;3704:77:0;;;15345:21:1;15402:2;15382:18;;;15375:30;15441:34;15421:18;;;15414:62;-1:-1:-1;;;15492:18:1;;;15485:34;15536:19;;3704:77:0;15161:400:1;3704:77:0;3823:8;3802:18;3812:8;3802:7;:18;:::i;:::-;:29;;;;:::i;:::-;3792:39;3520:319;-1:-1:-1;;;;3520:319:0:o;2145:97::-;2197:4;2225:1;2221;:5;:13;;2233:1;2221:13;;;2229:1;2221:13;2214:20;2145:97;-1:-1:-1;;;2145:97:0:o;14:127:1:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;374:131;-1:-1:-1;;;;;449:31:1;;439:42;;429:70;;495:1;492;485:12;429:70;374:131;:::o;510:118::-;596:5;589:13;582:21;575:5;572:32;562:60;;618:1;615;608:12;633:730;734:6;742;750;758;766;774;827:3;815:9;806:7;802:23;798:33;795:53;;;844:1;841;834:12;795:53;883:9;870:23;902:31;927:5;902:31;:::i;:::-;952:5;-1:-1:-1;1009:2:1;994:18;;981:32;1022:30;981:32;1022:30;:::i;:::-;1071:7;-1:-1:-1;1125:2:1;1110:18;;1097:32;;-1:-1:-1;1176:2:1;1161:18;;1148:32;;-1:-1:-1;1227:3:1;1212:19;;1199:33;;-1:-1:-1;1284:3:1;1269:19;;1256:33;1298;1256;1298;:::i;:::-;1350:7;1340:17;;;633:730;;;;;;;;:::o;1621:592::-;1704:6;1712;1720;1728;1781:3;1769:9;1760:7;1756:23;1752:33;1749:53;;;1798:1;1795;1788:12;1749:53;1837:9;1824:23;1856:31;1881:5;1856:31;:::i;:::-;1906:5;-1:-1:-1;1963:2:1;1948:18;;1935:32;1976:33;1935:32;1976:33;:::i;:::-;2028:7;-1:-1:-1;2087:2:1;2072:18;;2059:32;2100:30;2059:32;2100:30;:::i;:::-;1621:592;;;;-1:-1:-1;2149:7:1;;2203:2;2188:18;2175:32;;-1:-1:-1;;1621:592:1:o;2218:523::-;2292:6;2300;2308;2361:2;2349:9;2340:7;2336:23;2332:32;2329:52;;;2377:1;2374;2367:12;2329:52;2416:9;2403:23;2435:31;2460:5;2435:31;:::i;:::-;2485:5;-1:-1:-1;2542:2:1;2527:18;;2514:32;2555:33;2514:32;2555:33;:::i;:::-;2607:7;-1:-1:-1;2666:2:1;2651:18;;2638:32;2679:30;2638:32;2679:30;:::i;:::-;2728:7;2718:17;;;2218:523;;;;;:::o;2954:388::-;3022:6;3030;3083:2;3071:9;3062:7;3058:23;3054:32;3051:52;;;3099:1;3096;3089:12;3051:52;3138:9;3125:23;3157:31;3182:5;3157:31;:::i;:::-;3207:5;-1:-1:-1;3264:2:1;3249:18;;3236:32;3277:33;3236:32;3277:33;:::i;:::-;3329:7;3319:17;;;2954:388;;;;;:::o;3656:247::-;3715:6;3768:2;3756:9;3747:7;3743:23;3739:32;3736:52;;;3784:1;3781;3774:12;3736:52;3823:9;3810:23;3842:31;3867:5;3842:31;:::i;4453:941::-;4572:6;4580;4588;4596;4604;4612;4620;4628;4681:3;4669:9;4660:7;4656:23;4652:33;4649:53;;;4698:1;4695;4688:12;4649:53;4737:9;4724:23;4756:31;4781:5;4756:31;:::i;:::-;4806:5;-1:-1:-1;4863:2:1;4848:18;;4835:32;4876:33;4835:32;4876:33;:::i;:::-;4928:7;-1:-1:-1;4987:2:1;4972:18;;4959:32;5000:30;4959:32;5000:30;:::i;:::-;5049:7;-1:-1:-1;5103:2:1;5088:18;;5075:32;;-1:-1:-1;5154:3:1;5139:19;;5126:33;;-1:-1:-1;5206:3:1;5191:19;;5178:33;;-1:-1:-1;5258:3:1;5243:19;;5230:33;;-1:-1:-1;5315:3:1;5300:19;;5287:33;5329;5287;5329;:::i;:::-;5381:7;5371:17;;;4453:941;;;;;;;;;;;:::o;5399:872::-;5509:6;5517;5525;5533;5541;5549;5557;5610:3;5598:9;5589:7;5585:23;5581:33;5578:53;;;5627:1;5624;5617:12;5578:53;5666:9;5653:23;5685:31;5710:5;5685:31;:::i;:::-;5735:5;-1:-1:-1;5792:2:1;5777:18;;5764:32;5805:33;5764:32;5805:33;:::i;:::-;5857:7;-1:-1:-1;5916:2:1;5901:18;;5888:32;5929:30;5888:32;5929:30;:::i;:::-;5978:7;-1:-1:-1;6032:2:1;6017:18;;6004:32;;-1:-1:-1;6083:3:1;6068:19;;6055:33;;-1:-1:-1;6135:3:1;6120:19;;6107:33;;-1:-1:-1;6192:3:1;6177:19;;6164:33;6206;6164;6206;:::i;:::-;6258:7;6248:17;;;5399:872;;;;;;;;;;:::o;6276:661::-;6368:6;6376;6384;6392;6400;6453:3;6441:9;6432:7;6428:23;6424:33;6421:53;;;6470:1;6467;6460:12;6421:53;6509:9;6496:23;6528:31;6553:5;6528:31;:::i;:::-;6578:5;-1:-1:-1;6635:2:1;6620:18;;6607:32;6648:33;6607:32;6648:33;:::i;:::-;6700:7;-1:-1:-1;6759:2:1;6744:18;;6731:32;6772:30;6731:32;6772:30;:::i;:::-;6276:661;;;;-1:-1:-1;6821:7:1;;6875:2;6860:18;;6847:32;;-1:-1:-1;6926:3:1;6911:19;6898:33;;6276:661;-1:-1:-1;;6276:661:1:o;7574:184::-;7644:6;7697:2;7685:9;7676:7;7672:23;7668:32;7665:52;;;7713:1;7710;7703:12;7665:52;-1:-1:-1;7736:16:1;;7574:184;-1:-1:-1;7574:184:1:o;7763:385::-;-1:-1:-1;;;;;8015:15:1;;;7997:34;;8067:15;;;;8062:2;8047:18;;8040:43;8126:14;;8119:22;8114:2;8099:18;;8092:50;7947:2;7932:18;;7763:385::o;8153:251::-;8223:6;8276:2;8264:9;8255:7;8251:23;8247:32;8244:52;;;8292:1;8289;8282:12;8244:52;8324:9;8318:16;8343:31;8368:5;8343:31;:::i;8409:127::-;8470:10;8465:3;8461:20;8458:1;8451:31;8501:4;8498:1;8491:15;8525:4;8522:1;8515:15;8541:168;8581:7;8647:1;8643;8639:6;8635:14;8632:1;8629:21;8624:1;8617:9;8610:17;8606:45;8603:71;;;8654:18;;:::i;:::-;-1:-1:-1;8694:9:1;;8541:168::o;8714:217::-;8754:1;8780;8770:132;;8824:10;8819:3;8815:20;8812:1;8805:31;8859:4;8856:1;8849:15;8887:4;8884:1;8877:15;8770:132;-1:-1:-1;8916:9:1;;8714:217::o;10645:188::-;10724:13;;-1:-1:-1;;;;;10766:42:1;;10756:53;;10746:81;;10823:1;10820;10813:12;10838:450;10925:6;10933;10941;10994:2;10982:9;10973:7;10969:23;10965:32;10962:52;;;11010:1;11007;11000:12;10962:52;11033:40;11063:9;11033:40;:::i;:::-;11023:50;;11092:49;11137:2;11126:9;11122:18;11092:49;:::i;:::-;11082:59;;11184:2;11173:9;11169:18;11163:25;11228:10;11221:5;11217:22;11210:5;11207:33;11197:61;;11254:1;11251;11244:12;11572:245;11639:6;11692:2;11680:9;11671:7;11667:23;11663:32;11660:52;;;11708:1;11705;11698:12;11660:52;11740:9;11734:16;11759:28;11781:5;11759:28;:::i;11822:125::-;11862:4;11890:1;11887;11884:8;11881:34;;;11895:18;;:::i;:::-;-1:-1:-1;11932:9:1;;11822:125::o;12332:245::-;12411:6;12419;12472:2;12460:9;12451:7;12447:23;12443:32;12440:52;;;12488:1;12485;12478:12;12440:52;-1:-1:-1;;12511:16:1;;12567:2;12552:18;;;12546:25;12511:16;;12546:25;;-1:-1:-1;12332:245:1:o;12582:399::-;12784:2;12766:21;;;12823:2;12803:18;;;12796:30;12862:34;12857:2;12842:18;;12835:62;-1:-1:-1;;;12928:2:1;12913:18;;12906:33;12971:3;12956:19;;12582:399::o;12986:::-;13188:2;13170:21;;;13227:2;13207:18;;;13200:30;13266:34;13261:2;13246:18;;13239:62;-1:-1:-1;;;13332:2:1;13317:18;;13310:33;13375:3;13360:19;;12986:399::o;13390:426::-;13519:3;13557:6;13551:13;13582:1;13592:129;13606:6;13603:1;13600:13;13592:129;;;13704:4;13688:14;;;13684:25;;13678:32;13665:11;;;13658:53;13621:12;13592:129;;;13739:6;13736:1;13733:13;13730:48;;;13774:1;13765:6;13760:3;13756:16;13749:27;13730:48;-1:-1:-1;13794:16:1;;;;;13390:426;-1:-1:-1;;13390:426:1:o;14626:128::-;14666:3;14697:1;14693:6;14690:1;14687:13;14684:39;;;14703:18;;:::i;:::-;-1:-1:-1;14739:9:1;;14626:128::o
Swarm Source
ipfs://e4727272fbce100b8d0dfa98836fae0dc09a8abf6ab0fcaa91bf1249b9b679c1
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.