Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
QualifyLP
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2020-09-19
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.6.6;
pragma solidity >=0.5.0;
interface IQualifyLP {
function qualified(address lpToken) external view returns(uint256);
function qualifyUniswapLP(address lpToken, address token0, address token1) external returns (bool);
function qualifyBalancerLP(address lpToken) external returns (bool);
}
pragma solidity ^0.6.6;
interface BFactory {
function isBPool(address b) external view returns (bool);
function newBPool() external returns (BPool);
}
interface BPool {
function isPublicSwap() external view returns (bool);
function isFinalized() external view returns (bool);
function isBound(address t) external view returns (bool);
function getNumTokens() external view returns (uint);
function getCurrentTokens() external view returns (address[] memory tokens);
function getFinalTokens() external view returns (address[] memory tokens);
function getDenormalizedWeight(address token) external view returns (uint);
function getTotalDenormalizedWeight() external view returns (uint);
function getNormalizedWeight(address token) external view returns (uint);
function getBalance(address token) external view returns (uint);
function getSwapFee() external view returns (uint);
function getController() external view returns (address);
function setSwapFee(uint swapFee) external;
function setController(address manager) external;
function setPublicSwap(bool external_) external;
function finalize() external;
function bind(address token, uint balance, uint denorm) external;
function rebind(address token, uint balance, uint denorm) external;
function unbind(address token) external;
function gulp(address token) external;
function getSpotPrice(address tokenIn, address tokenOut) external view returns (uint spotPrice);
function getSpotPriceSansFee(address tokenIn, address tokenOut) external view returns (uint spotPrice);
function joinPool(uint poolAmountOut, uint[] calldata maxAmountsIn) external;
function exitPool(uint poolAmountIn, uint[] calldata minAmountsOut) external;
function swapExactAmountIn(
address tokenIn,
uint tokenAmountIn,
address tokenOut,
uint minAmountOut,
uint maxPrice
) external returns (uint tokenAmountOut, uint spotPriceAfter);
function swapExactAmountOut(
address tokenIn,
uint maxAmountIn,
address tokenOut,
uint tokenAmountOut,
uint maxPrice
) external returns (uint tokenAmountIn, uint spotPriceAfter);
function joinswapExternAmountIn(
address tokenIn,
uint tokenAmountIn,
uint minPoolAmountOut
) external returns (uint poolAmountOut);
function joinswapPoolAmountOut(
address tokenIn,
uint poolAmountOut,
uint maxAmountIn
) external returns (uint tokenAmountIn);
function exitswapPoolAmountIn(
address tokenOut,
uint poolAmountIn,
uint minAmountOut
) external returns (uint tokenAmountOut);
function exitswapExternAmountOut(
address tokenOut,
uint tokenAmountOut,
uint maxPoolAmountIn
) external returns (uint poolAmountIn);
function totalSupply() external view returns (uint);
function balanceOf(address whom) external view returns (uint);
function allowance(address src, address dst) external view returns (uint);
function approve(address dst, uint amt) external returns (bool);
function transfer(address dst, uint amt) external returns (bool);
function transferFrom(
address src, address dst, uint amt
) external returns (bool);
function calcSpotPrice(
uint tokenBalanceIn,
uint tokenWeightIn,
uint tokenBalanceOut,
uint tokenWeightOut,
uint swapFee
) external pure returns (uint spotPrice);
function calcOutGivenIn(
uint tokenBalanceIn,
uint tokenWeightIn,
uint tokenBalanceOut,
uint tokenWeightOut,
uint tokenAmountIn,
uint swapFee
) external pure returns (uint tokenAmountOut);
function calcInGivenOut(
uint tokenBalanceIn,
uint tokenWeightIn,
uint tokenBalanceOut,
uint tokenWeightOut,
uint tokenAmountOut,
uint swapFee
) external pure returns (uint tokenAmountIn);
function calcPoolOutGivenSingleIn(
uint tokenBalanceIn,
uint tokenWeightIn,
uint poolSupply,
uint totalWeight,
uint tokenAmountIn,
uint swapFee
) external pure returns (uint poolAmountOut);
function calcSingleInGivenPoolOut(
uint tokenBalanceIn,
uint tokenWeightIn,
uint poolSupply,
uint totalWeight,
uint poolAmountOut,
uint swapFee
) external pure returns (uint tokenAmountIn);
function calcSingleOutGivenPoolIn(
uint tokenBalanceOut,
uint tokenWeightOut,
uint poolSupply,
uint totalWeight,
uint poolAmountIn,
uint swapFee
) external pure returns (uint tokenAmountOut);
function calcPoolInGivenSingleOut(
uint tokenBalanceOut,
uint tokenWeightOut,
uint poolSupply,
uint totalWeight,
uint tokenAmountOut,
uint swapFee
) external pure returns (uint poolAmountIn);
}
pragma experimental ABIEncoderV2;
interface BExchangeProxy {
struct Swap {
address pool;
uint tokenInParam; // tokenInAmount / maxAmountIn / limitAmountIn
uint tokenOutParam; // minAmountOut / tokenAmountOut / limitAmountOut
uint maxPrice;
}
function batchSwapExactIn(
Swap[] memory swaps,
address tokenIn,
address tokenOut,
uint totalAmountIn,
uint minTotalAmountOut
) external returns (uint totalAmountOut);
function batchSwapExactOut(
Swap[] memory swaps,
address tokenIn,
address tokenOut,
uint maxTotalAmountIn
) external returns (uint totalAmountIn);
function batchEthInSwapExactIn(
Swap[] memory swaps,
address tokenOut,
uint minTotalAmountOut
) external payable returns (uint totalAmountOut);
function batchEthOutSwapExactIn(
Swap[] memory swaps,
address tokenIn,
uint totalAmountIn,
uint minTotalAmountOut
) external returns (uint totalAmountOut);
function batchEthInSwapExactOut(
Swap[] memory swaps,
address tokenOut
) external payable returns (uint totalAmountIn);
function batchEthOutSwapExactOut(
Swap[] memory swaps,
address tokenIn,
uint maxTotalAmountIn
) external returns (uint totalAmountIn);
}
pragma solidity >=0.5.0;
interface IUniswapV2Pair {
event Approval(address indexed owner, address indexed spender, uint value);
event Transfer(address indexed from, address indexed to, uint value);
function name() external pure returns (string memory);
function symbol() external pure returns (string memory);
function decimals() external pure returns (uint8);
function totalSupply() external view returns (uint);
function balanceOf(address owner) external view returns (uint);
function allowance(address owner, address spender) external view returns (uint);
function approve(address spender, uint value) external returns (bool);
function transfer(address to, uint value) external returns (bool);
function transferFrom(address from, address to, uint value) external returns (bool);
function DOMAIN_SEPARATOR() external view returns (bytes32);
function PERMIT_TYPEHASH() external pure returns (bytes32);
function nonces(address owner) external view returns (uint);
function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
event Mint(address indexed sender, uint amount0, uint amount1);
event Burn(address indexed sender, uint amount0, uint amount1, address indexed to);
event Swap(
address indexed sender,
uint amount0In,
uint amount1In,
uint amount0Out,
uint amount1Out,
address indexed to
);
event Sync(uint112 reserve0, uint112 reserve1);
function MINIMUM_LIQUIDITY() external pure returns (uint);
function factory() external view returns (address);
function token0() external view returns (address);
function token1() external view returns (address);
function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
function price0CumulativeLast() external view returns (uint);
function price1CumulativeLast() external view returns (uint);
function kLast() external view returns (uint);
function mint(address to) external returns (uint liquidity);
function burn(address to) external returns (uint amount0, uint amount1);
function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
function skim(address to) external;
function sync() external;
function initialize(address, address) external;
}
contract QualifyLP is IQualifyLP {
mapping(address => uint256) private lps;
uint256 constant LP_UNISWAP = 1;
uint256 constant LP_BALANCER = 2;
constructor() public {
}
function qualified(address lpToken) external override view returns(uint256) {
return lps[lpToken];
}
function qualifyUniswapLP(address lpToken, address token0, address token1) external override returns (bool) {
IUniswapV2Pair pair = IUniswapV2Pair(lpToken);
require(pair.decimals() == 18);
require(pair.totalSupply() > 0);
require(token0 != token1);
require(pair.token0() == token0 || pair.token1() == token0);
require(pair.token0() == token1 || pair.token1() == token1);
(uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast) =
pair.getReserves();
require(reserve0 > 0);
require(reserve1 > 0);
require(blockTimestampLast > 0);
lps[lpToken] = LP_UNISWAP;
return true;
}
function qualifyBalancerLP(address lpToken) external override returns (bool) {
BPool bpool = BPool(lpToken);
require(bpool.totalSupply() > 0);
require(bpool.isPublicSwap() == true);
require(bpool.isFinalized() == true);
require(bpool.getNumTokens() >= 2);
require(bpool.getSwapFee() > 0);
lps[lpToken] = LP_BALANCER;
return true;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"lpToken","type":"address"}],"name":"qualified","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"lpToken","type":"address"}],"name":"qualifyBalancerLP","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"lpToken","type":"address"},{"internalType":"address","name":"token0","type":"address"},{"internalType":"address","name":"token1","type":"address"}],"name":"qualifyUniswapLP","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b50610939806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630187a340146100465780633628cc741461006f578063b06411311461008f575b600080fd5b610059610054366004610797565b6100a2565b60405161006691906108c2565b60405180910390f35b61008261007d366004610797565b610340565b60405161006691906108cd565b61005961009d3660046107d6565b61035b565b6000808290506000816001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100e357600080fd5b505afa1580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b9190610889565b1161012557600080fd5b806001600160a01b031663fde924f76040518163ffffffff1660e01b815260040160206040518083038186803b15801561015e57600080fd5b505afa158015610172573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101969190610820565b15156001146101a457600080fd5b806001600160a01b0316638d4e40836040518163ffffffff1660e01b815260040160206040518083038186803b1580156101dd57600080fd5b505afa1580156101f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102159190610820565b151560011461022357600080fd5b6002816001600160a01b031663cd2ed8fb6040518163ffffffff1660e01b815260040160206040518083038186803b15801561025e57600080fd5b505afa158015610272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102969190610889565b10156102a157600080fd5b6000816001600160a01b031663d4cadf686040518163ffffffff1660e01b815260040160206040518083038186803b1580156102dc57600080fd5b505afa1580156102f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103149190610889565b1161031e57600080fd5b50506001600160a01b0316600090815260208190526040902060029055600190565b6001600160a01b031660009081526020819052604090205490565b600080849050806001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561039a57600080fd5b505afa1580156103ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d291906108a1565b60ff166012146103e157600080fd5b6000816001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561041c57600080fd5b505afa158015610430573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104549190610889565b1161045e57600080fd5b826001600160a01b0316846001600160a01b0316141561047d57600080fd5b836001600160a01b0316816001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156104c057600080fd5b505afa1580156104d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f891906107ba565b6001600160a01b0316148061058e5750836001600160a01b0316816001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b15801561054b57600080fd5b505afa15801561055f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058391906107ba565b6001600160a01b0316145b61059757600080fd5b826001600160a01b0316816001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156105da57600080fd5b505afa1580156105ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061291906107ba565b6001600160a01b031614806106a85750826001600160a01b0316816001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b15801561066557600080fd5b505afa158015610679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069d91906107ba565b6001600160a01b0316145b6106b157600080fd5b6000806000836001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156106ef57600080fd5b505afa158015610703573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107279190610840565b9250925092506000836001600160701b03161161074357600080fd5b6000826001600160701b03161161075957600080fd5b60008163ffffffff161161076c57600080fd5b5050506001600160a01b03851660009081526020819052604090206001908190559150509392505050565b6000602082840312156107a8578081fd5b81356107b3816108d6565b9392505050565b6000602082840312156107cb578081fd5b81516107b3816108d6565b6000806000606084860312156107ea578182fd5b83356107f5816108d6565b92506020840135610805816108d6565b91506040840135610815816108d6565b809150509250925092565b600060208284031215610831578081fd5b815180151581146107b3578182fd5b600080600060608486031215610854578283fd5b835161085f816108ee565b6020850151909350610870816108ee565b604085015190925063ffffffff81168114610815578182fd5b60006020828403121561089a578081fd5b5051919050565b6000602082840312156108b2578081fd5b815160ff811681146107b3578182fd5b901515815260200190565b90815260200190565b6001600160a01b03811681146108eb57600080fd5b50565b6001600160701b03811681146108eb57600080fdfea264697066735822122021e0c698b187ca921cf7f663e996502cc778bfd5cacdb8d0572b219a8c776bc564736f6c634300060c0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100415760003560e01c80630187a340146100465780633628cc741461006f578063b06411311461008f575b600080fd5b610059610054366004610797565b6100a2565b60405161006691906108c2565b60405180910390f35b61008261007d366004610797565b610340565b60405161006691906108cd565b61005961009d3660046107d6565b61035b565b6000808290506000816001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156100e357600080fd5b505afa1580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b9190610889565b1161012557600080fd5b806001600160a01b031663fde924f76040518163ffffffff1660e01b815260040160206040518083038186803b15801561015e57600080fd5b505afa158015610172573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101969190610820565b15156001146101a457600080fd5b806001600160a01b0316638d4e40836040518163ffffffff1660e01b815260040160206040518083038186803b1580156101dd57600080fd5b505afa1580156101f1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102159190610820565b151560011461022357600080fd5b6002816001600160a01b031663cd2ed8fb6040518163ffffffff1660e01b815260040160206040518083038186803b15801561025e57600080fd5b505afa158015610272573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102969190610889565b10156102a157600080fd5b6000816001600160a01b031663d4cadf686040518163ffffffff1660e01b815260040160206040518083038186803b1580156102dc57600080fd5b505afa1580156102f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103149190610889565b1161031e57600080fd5b50506001600160a01b0316600090815260208190526040902060029055600190565b6001600160a01b031660009081526020819052604090205490565b600080849050806001600160a01b031663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561039a57600080fd5b505afa1580156103ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103d291906108a1565b60ff166012146103e157600080fd5b6000816001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561041c57600080fd5b505afa158015610430573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104549190610889565b1161045e57600080fd5b826001600160a01b0316846001600160a01b0316141561047d57600080fd5b836001600160a01b0316816001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156104c057600080fd5b505afa1580156104d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f891906107ba565b6001600160a01b0316148061058e5750836001600160a01b0316816001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b15801561054b57600080fd5b505afa15801561055f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058391906107ba565b6001600160a01b0316145b61059757600080fd5b826001600160a01b0316816001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b1580156105da57600080fd5b505afa1580156105ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061291906107ba565b6001600160a01b031614806106a85750826001600160a01b0316816001600160a01b031663d21220a76040518163ffffffff1660e01b815260040160206040518083038186803b15801561066557600080fd5b505afa158015610679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061069d91906107ba565b6001600160a01b0316145b6106b157600080fd5b6000806000836001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b1580156106ef57600080fd5b505afa158015610703573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107279190610840565b9250925092506000836001600160701b03161161074357600080fd5b6000826001600160701b03161161075957600080fd5b60008163ffffffff161161076c57600080fd5b5050506001600160a01b03851660009081526020819052604090206001908190559150509392505050565b6000602082840312156107a8578081fd5b81356107b3816108d6565b9392505050565b6000602082840312156107cb578081fd5b81516107b3816108d6565b6000806000606084860312156107ea578182fd5b83356107f5816108d6565b92506020840135610805816108d6565b91506040840135610815816108d6565b809150509250925092565b600060208284031215610831578081fd5b815180151581146107b3578182fd5b600080600060608486031215610854578283fd5b835161085f816108ee565b6020850151909350610870816108ee565b604085015190925063ffffffff81168114610815578182fd5b60006020828403121561089a578081fd5b5051919050565b6000602082840312156108b2578081fd5b815160ff811681146107b3578182fd5b901515815260200190565b90815260200190565b6001600160a01b03811681146108eb57600080fd5b50565b6001600160701b03811681146108eb57600080fdfea264697066735822122021e0c698b187ca921cf7f663e996502cc778bfd5cacdb8d0572b219a8c776bc564736f6c634300060c0033
Deployed Bytecode Sourcemap
9566:1327:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10532:358;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9768:114;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;9890:634::-;;;;;;:::i;:::-;;:::i;10532:358::-;10603:4;10613:11;10633:7;10613:28;;10677:1;10655:5;-1:-1:-1;;;;;10655:17:0;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:23;10647:32;;;;;;10691:5;-1:-1:-1;;;;;10691:18:0;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:28;;10715:4;10691:28;10683:37;;;;;;10732:5;-1:-1:-1;;;;;10732:17:0;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:27;;10755:4;10732:27;10724:36;;;;;;10796:1;10772:5;-1:-1:-1;;;;;10772:18:0;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:25;;10764:34;;;;;;10831:1;10810:5;-1:-1:-1;;;;;10810:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:22;10802:31;;;;;;-1:-1:-1;;;;;;;10839:12:0;:3;:12;;;;;;;;;;9721:1;10839:26;;10878:4;;10532:358::o;9768:114::-;-1:-1:-1;;;;;9862:12:0;9835:7;9862:12;;;;;;;;;;;;9768:114::o;9890:634::-;9992:4;10009:19;10046:7;10009:45;;10068:4;-1:-1:-1;;;;;10068:13:0;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:21;;10087:2;10068:21;10060:30;;;;;;10123:1;10102:4;-1:-1:-1;;;;;10102:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:22;10094:31;;;;;;10147:6;-1:-1:-1;;;;;10137:16:0;:6;-1:-1:-1;;;;;10137:16:0;;;10129:25;;;;;;10183:6;-1:-1:-1;;;;;10166:23:0;:4;-1:-1:-1;;;;;10166:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10166:23:0;;:50;;;;10210:6;-1:-1:-1;;;;;10193:23:0;:4;-1:-1:-1;;;;;10193:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10193:23:0;;10166:50;10158:59;;;;;;10246:6;-1:-1:-1;;;;;10229:23:0;:4;-1:-1:-1;;;;;10229:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10229:23:0;;:50;;;;10273:6;-1:-1:-1;;;;;10256:23:0;:4;-1:-1:-1;;;;;10256:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10256:23:0;;10229:50;10221:59;;;;;;10287:16;10305;10323:25;10358:4;-1:-1:-1;;;;;10358:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10286:90;;;;;;10399:1;10388:8;-1:-1:-1;;;;;10388:12:0;;10380:21;;;;;;10424:1;10413:8;-1:-1:-1;;;;;10413:12:0;;10405:21;;;;;;10466:1;10445:18;:22;;;10437:31;;;;;;-1:-1:-1;;;;;;;;10474:12:0;;:3;:12;;;;;;;;;;9682:1;10474:25;;;;9682:1;-1:-1:-1;;9890:634:0;;;;;:::o;976:241:-1:-;;1080:2;1068:9;1059:7;1055:23;1051:32;1048:2;;;-1:-1;;1086:12;1048:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;1138:63;1042:175;-1:-1;;;1042:175::o;1224:263::-;;1339:2;1327:9;1318:7;1314:23;1310:32;1307:2;;;-1:-1;;1345:12;1307:2;226:6;220:13;238:33;265:5;238:33;:::i;1494:491::-;;;;1632:2;1620:9;1611:7;1607:23;1603:32;1600:2;;;-1:-1;;1638:12;1600:2;85:6;72:20;97:33;124:5;97:33;:::i;:::-;1690:63;-1:-1;1790:2;1829:22;;72:20;97:33;72:20;97:33;:::i;:::-;1798:63;-1:-1;1898:2;1937:22;;72:20;97:33;72:20;97:33;:::i;:::-;1906:63;;;;1594:391;;;;;:::o;1992:257::-;;2104:2;2092:9;2083:7;2079:23;2075:32;2072:2;;;-1:-1;;2110:12;2072:2;364:6;358:13;4910:5;4173:13;4166:21;4888:5;4885:32;4875:2;;-1:-1;;4921:12;2256:533;;;;2404:2;2392:9;2383:7;2379:23;2375:32;2372:2;;;-1:-1;;2410:12;2372:2;502:6;496:13;514:33;541:5;514:33;:::i;:::-;2573:2;2623:22;;496:13;2462:74;;-1:-1;514:33;496:13;514:33;:::i;:::-;2692:2;2741:22;;777:13;2581:74;;-1:-1;4594:10;4583:22;;5253:34;;5243:2;;-1:-1;;5291:12;2796:263;;2911:2;2899:9;2890:7;2886:23;2882:32;2879:2;;;-1:-1;;2917:12;2879:2;-1:-1;637:13;;2873:186;-1:-1;2873:186::o;3066:259::-;;3179:2;3167:9;3158:7;3154:23;3150:32;3147:2;;;-1:-1;;3185:12;3147:2;921:6;915:13;4688:4;5400:5;4677:16;5377:5;5374:33;5364:2;;-1:-1;;5411:12;3563:210;4173:13;;4166:21;3397:34;;3684:2;3669:18;;3655:118::o;3780:222::-;3514:37;;;3907:2;3892:18;;3878:124::o;4705:117::-;-1:-1;;;;;4377:54;;4764:35;;4754:2;;4813:1;;4803:12;4754:2;4748:74;:::o;4947:117::-;-1:-1;;;;;5034:5;4261:42;5009:5;5006:35;4996:2;;5055:1;;5045:12
Swarm Source
ipfs://21e0c698b187ca921cf7f663e996502cc778bfd5cacdb8d0572b219a8c776bc5
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.