Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 140 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 20195587 | 103 days ago | IN | 0 ETH | 0.00013382 | ||||
Approve | 20050935 | 123 days ago | IN | 0 ETH | 0.00021341 | ||||
Transfer | 19876059 | 148 days ago | IN | 0 ETH | 0.00106727 | ||||
Approve | 19814729 | 156 days ago | IN | 0 ETH | 0.00026 | ||||
Approve | 19697924 | 173 days ago | IN | 0 ETH | 0.00039908 | ||||
Approve | 18637275 | 322 days ago | IN | 0 ETH | 0.00115528 | ||||
Approve | 17972749 | 415 days ago | IN | 0 ETH | 0.00097153 | ||||
Approve | 17969927 | 415 days ago | IN | 0 ETH | 0.00076205 | ||||
Transfer | 17913392 | 423 days ago | IN | 0 ETH | 0.00073861 | ||||
Transfer | 17883268 | 427 days ago | IN | 0 ETH | 0.00051603 | ||||
Transfer | 17883262 | 427 days ago | IN | 0 ETH | 0.00074983 | ||||
Transfer | 17828384 | 435 days ago | IN | 0 ETH | 0.00144832 | ||||
Approve | 17828188 | 435 days ago | IN | 0 ETH | 0.00227652 | ||||
Approve | 17822615 | 436 days ago | IN | 0 ETH | 0.00116787 | ||||
Approve | 17813828 | 437 days ago | IN | 0 ETH | 0.00325084 | ||||
Transfer | 17801412 | 439 days ago | IN | 0 ETH | 0.00086763 | ||||
Approve | 17795957 | 439 days ago | IN | 0 ETH | 0.00068613 | ||||
Transfer | 17795015 | 439 days ago | IN | 0 ETH | 0.00065976 | ||||
Transfer | 17794557 | 439 days ago | IN | 0 ETH | 0.00139147 | ||||
Approve | 17793864 | 440 days ago | IN | 0 ETH | 0.00185641 | ||||
Approve | 17793097 | 440 days ago | IN | 0 ETH | 0.00229394 | ||||
Transfer | 17792848 | 440 days ago | IN | 0 ETH | 0.00642447 | ||||
Approve | 17792810 | 440 days ago | IN | 0 ETH | 0.00552396 | ||||
Transfer | 17792306 | 440 days ago | IN | 0 ETH | 0.00251336 | ||||
Transfer | 17792151 | 440 days ago | IN | 0 ETH | 0.00124711 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
WorldWarDoge
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-06-25 */ //SPDX-License-Identifier: MIT pragma solidity 0.8.19; interface IERC20 { 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); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } 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 ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 18; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[sender] = senderBalance - amount; } _balances[recipient] += amount; emit Transfer(sender, recipient, amount); _afterTokenTransfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), 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 _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _setOwner(_msgSender()); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _setOwner(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _setOwner(newOwner); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } // CAUTION // This version of SafeMath should only be used with Solidity 0.8 or later, // because it relies on the compiler's built in overflow checks. library SafeMath { function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return a % b; } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } } interface DexFactory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface DexRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns (uint256 amountToken, uint256 amountETH, uint256 liquidity); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract WorldWarDoge is ERC20, Ownable { uint256 private constant _totalSupply = 1_000_000_000 * 1e18; //Router DexRouter public immutable uniswapRouter; address public immutable pairAddress; //Taxes uint256 public sellTaxes = 2; //Whitelisting from taxes and trading check mapping(address => bool) private whitelisted; //Swapping bool public tradingEnabled = false; uint256 public startTradingBlock; //Wallets address public burnAddress = 0x000000000000000000000000000000000000dEaD; //Events event SellFeesUpdated(uint256 indexed _trFee); event Whitelist(address indexed _target, bool indexed _status); constructor() ERC20("WorldWarDoge", "WWD") { uniswapRouter = DexRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); // ETH main-net //uniswapRouter = DexRouter(0x10ED43C718714eb63d5aA57B78B54704E256024E); // BSC main-net //uniswapRouter = DexRouter(0xD99D1c33F9fC3444f8101754aBC46c52416550D1); // BSC test-net pairAddress = DexFactory(uniswapRouter.factory()).createPair( address(this), uniswapRouter.WETH() ); whitelisted[msg.sender] = true; whitelisted[address(uniswapRouter)] = true; whitelisted[address(this)] = true; _mint(0x22caF4470bA58a9e9f20F28d189688285195b09B, _totalSupply); } function enableTrading() external onlyOwner { require(!tradingEnabled, "Trading is already enabled"); tradingEnabled = true; startTradingBlock = block.number; } function setWhitelistStatus( address _wallet, bool _status ) external onlyOwner { whitelisted[_wallet] = _status; emit Whitelist(_wallet, _status); } function checkWhitelist(address _wallet) external view returns (bool) { return whitelisted[_wallet]; } // this function is reponsible for managing tax, if _from or _to is whitelisted, we simply return _amount and skip all the limitations function _takeTax( address _from, address _to, uint256 _amount ) internal returns (uint256) { if (whitelisted[_from] || whitelisted[_to]) { return _amount; } uint256 totalTax = 0; if (_to == pairAddress) { totalTax = sellTaxes; } else if (_from == pairAddress) { totalTax = 0; } uint256 tax = 0; if (totalTax > 0) { tax = (_amount * totalTax) / 100; super._transfer(_from, burnAddress, tax); } return (_amount - tax); } function _transfer( address _from, address _to, uint256 _amount ) internal virtual override { require(_from != address(0), "transfer from address zero"); require(_to != address(0), "transfer to address zero"); require(_amount > 0, "Transfer amount must be greater than zero"); uint256 toTransfer = _takeTax(_from, _to, _amount); if ( !whitelisted[_from] && !whitelisted[_to] ) { require(tradingEnabled, "Trading not active"); if ( pairAddress == _to ) { } } super._transfer(_from, _to, toTransfer); } function withdrawStuckETH() external onlyOwner { uint256 balance = address(this).balance; require(balance > 0, "No ETH available to withdraw"); (bool success, ) = address(msg.sender).call{value: balance}(""); require(success, "transferring ETH failed"); } function withdrawStuckTokens(address ERC20_token) external onlyOwner { require(ERC20_token != address(this), "Owner cannot claim native tokens"); uint256 tokenBalance = IERC20(ERC20_token).balanceOf(address(this)); require(tokenBalance > 0, "No tokens available to withdraw"); bool success = IERC20(ERC20_token).transfer(msg.sender, tokenBalance); require(success, "transferring tokens failed!"); } receive() external payable {} }
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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"_trFee","type":"uint256"}],"name":"SellFeesUpdated","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_target","type":"address"},{"indexed":true,"internalType":"bool","name":"_status","type":"bool"}],"name":"Whitelist","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":"burnAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_wallet","type":"address"}],"name":"checkWhitelist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","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":"pairAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTaxes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_wallet","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"setWhitelistStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTradingBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapRouter","outputs":[{"internalType":"contract DexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ERC20_token","type":"address"}],"name":"withdrawStuckTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c060405260026006556008805460ff19169055600a80546001600160a01b03191661dead1790553480156200003457600080fd5b506040518060400160405280600c81526020016b576f726c64576172446f676560a01b8152506040518060400160405280600381526020016215d5d160ea1b81525081600390816200008791906200047f565b5060046200009682826200047f565b505050620000b3620000ad6200029860201b60201c565b6200029c565b737a250d5630b4cf539739df2c5dacb4c659f2488d60808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000109573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200012f91906200054b565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200017f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a591906200054b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620001f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021991906200054b565b6001600160a01b0390811660a052336000908152600760205260408082208054600160ff1991821681179092556080519094168352818320805485168217905530835291208054909216179055620002927322caf4470ba58a9e9f20f28d189688285195b09b6b033b2e3c9fd0803ce8000000620002ee565b620005a5565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620003495760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200035d91906200057d565b90915550506001600160a01b038216600090815260208190526040812080548392906200038c9084906200057d565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200040657607f821691505b6020821081036200042757634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003d657600081815260208120601f850160051c81016020861015620004565750805b601f850160051c820191505b81811015620004775782815560010162000462565b505050505050565b81516001600160401b038111156200049b576200049b620003db565b620004b381620004ac8454620003f1565b846200042d565b602080601f831160018114620004eb5760008415620004d25750858301515b600019600386901b1c1916600185901b17855562000477565b600085815260208120601f198616915b828110156200051c57888601518255948401946001909101908401620004fb565b50858210156200053b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200055e57600080fd5b81516001600160a01b03811681146200057657600080fd5b9392505050565b808201808211156200059f57634e487b7160e01b600052601160045260246000fd5b92915050565b60805160a051611511620005d96000396000818161040801528181610fc601526110080152600061035601526115116000f3fe60806040526004361061016a5760003560e01c8063735de9f7116100d1578063a8b089821161008a578063dd62ed3e11610064578063dd62ed3e1461046a578063f2fde38b146104b0578063f5648a4f146104d0578063f66895a3146104e557600080fd5b8063a8b08982146103f6578063a9059cbb1461042a578063cb9637281461044a57600080fd5b8063735de9f71461034457806376be96f3146103785780638a8c523c1461038e5780638da5cb5b146103a357806395d89b41146103c1578063a457c2d7146103d657600080fd5b8063313ce56711610123578063313ce5671461026b57806339509351146102875780634ada218b146102a757806370a08231146102c157806370d5ae05146102f7578063715018a61461032f57600080fd5b806306fdde0314610176578063095ea7b3146101a15780630c424284146101d157806318160ddd146101f35780631950c2181461021257806323b872dd1461024b57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104fb565b604051610198919061125e565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc3660046112c8565b61058d565b6040519015158152602001610198565b3480156101dd57600080fd5b506101f16101ec366004611300565b6105a4565b005b3480156101ff57600080fd5b506002545b604051908152602001610198565b34801561021e57600080fd5b506101c161022d366004611337565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561025757600080fd5b506101c1610266366004611352565b61062b565b34801561027757600080fd5b5060405160128152602001610198565b34801561029357600080fd5b506101c16102a23660046112c8565b6106d7565b3480156102b357600080fd5b506008546101c19060ff1681565b3480156102cd57600080fd5b506102046102dc366004611337565b6001600160a01b031660009081526020819052604090205490565b34801561030357600080fd5b50600a54610317906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b34801561033b57600080fd5b506101f1610713565b34801561035057600080fd5b506103177f000000000000000000000000000000000000000000000000000000000000000081565b34801561038457600080fd5b5061020460095481565b34801561039a57600080fd5b506101f1610749565b3480156103af57600080fd5b506005546001600160a01b0316610317565b3480156103cd57600080fd5b5061018b6107d9565b3480156103e257600080fd5b506101c16103f13660046112c8565b6107e8565b34801561040257600080fd5b506103177f000000000000000000000000000000000000000000000000000000000000000081565b34801561043657600080fd5b506101c16104453660046112c8565b610881565b34801561045657600080fd5b506101f1610465366004611337565b61088e565b34801561047657600080fd5b5061020461048536600461138e565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156104bc57600080fd5b506101f16104cb366004611337565b610a95565b3480156104dc57600080fd5b506101f1610b30565b3480156104f157600080fd5b5061020460065481565b60606003805461050a906113c1565b80601f0160208091040260200160405190810160405280929190818152602001828054610536906113c1565b80156105835780601f1061055857610100808354040283529160200191610583565b820191906000526020600020905b81548152906001019060200180831161056657829003601f168201915b5050505050905090565b600061059a338484610c44565b5060015b92915050565b6005546001600160a01b031633146105d75760405162461bcd60e51b81526004016105ce906113fb565b60405180910390fd5b6001600160a01b038216600081815260076020526040808220805460ff191685151590811790915590519092917f5a25e09a5dba33161281055e015f1279b6b10204d8f90dd56a8ce2b82322d43d91a35050565b6000610638848484610d68565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156106bd5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016105ce565b6106ca8533858403610c44565b60019150505b9392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161059a91859061070e908690611446565b610c44565b6005546001600160a01b0316331461073d5760405162461bcd60e51b81526004016105ce906113fb565b6107476000610f25565b565b6005546001600160a01b031633146107735760405162461bcd60e51b81526004016105ce906113fb565b60085460ff16156107c65760405162461bcd60e51b815260206004820152601a60248201527f54726164696e6720697320616c726561647920656e61626c656400000000000060448201526064016105ce565b6008805460ff1916600117905543600955565b60606004805461050a906113c1565b3360009081526001602090815260408083206001600160a01b03861684529091528120548281101561086a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105ce565b6108773385858403610c44565b5060019392505050565b600061059a338484610d68565b6005546001600160a01b031633146108b85760405162461bcd60e51b81526004016105ce906113fb565b306001600160a01b038216036109105760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e6e6f7420636c61696d206e617469766520746f6b656e7360448201526064016105ce565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610957573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097b9190611459565b9050600081116109cd5760405162461bcd60e51b815260206004820152601f60248201527f4e6f20746f6b656e7320617661696c61626c6520746f2077697468647261770060448201526064016105ce565b60405163a9059cbb60e01b8152336004820152602481018290526000906001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611472565b905080610a905760405162461bcd60e51b815260206004820152601b60248201527f7472616e7366657272696e6720746f6b656e73206661696c656421000000000060448201526064016105ce565b505050565b6005546001600160a01b03163314610abf5760405162461bcd60e51b81526004016105ce906113fb565b6001600160a01b038116610b245760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ce565b610b2d81610f25565b50565b6005546001600160a01b03163314610b5a5760405162461bcd60e51b81526004016105ce906113fb565b4780610ba85760405162461bcd60e51b815260206004820152601c60248201527f4e6f2045544820617661696c61626c6520746f2077697468647261770000000060448201526064016105ce565b604051600090339083908381818185875af1925050503d8060008114610bea576040519150601f19603f3d011682016040523d82523d6000602084013e610bef565b606091505b5050905080610c405760405162461bcd60e51b815260206004820152601760248201527f7472616e7366657272696e6720455448206661696c656400000000000000000060448201526064016105ce565b5050565b6001600160a01b038316610ca65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ce565b6001600160a01b038216610d075760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ce565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dbe5760405162461bcd60e51b815260206004820152601a60248201527f7472616e736665722066726f6d2061646472657373207a65726f00000000000060448201526064016105ce565b6001600160a01b038216610e145760405162461bcd60e51b815260206004820152601860248201527f7472616e7366657220746f2061646472657373207a65726f000000000000000060448201526064016105ce565b60008111610e765760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ce565b6000610e83848484610f77565b6001600160a01b03851660009081526007602052604090205490915060ff16158015610ec857506001600160a01b03831660009081526007602052604090205460ff16155b15610f145760085460ff16610f145760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b60448201526064016105ce565b610f1f848483611090565b50505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831660009081526007602052604081205460ff1680610fb657506001600160a01b03831660009081526007602052604090205460ff165b15610fc25750806106d0565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316036110065750600654611043565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b031603611043575060005b6000811561107c576064611057838661148f565b61106191906114a6565b600a5490915061107c9087906001600160a01b031683611090565b61108681856114c8565b9695505050505050565b6001600160a01b0383166110f45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ce565b6001600160a01b0382166111565760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ce565b6001600160a01b038316600090815260208190526040902054818110156111ce5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105ce565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611205908490611446565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161125191815260200190565b60405180910390a3610f1f565b600060208083528351808285015260005b8181101561128b5785810183015185820160400152820161126f565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146112c357600080fd5b919050565b600080604083850312156112db57600080fd5b6112e4836112ac565b946020939093013593505050565b8015158114610b2d57600080fd5b6000806040838503121561131357600080fd5b61131c836112ac565b9150602083013561132c816112f2565b809150509250929050565b60006020828403121561134957600080fd5b6106d0826112ac565b60008060006060848603121561136757600080fd5b611370846112ac565b925061137e602085016112ac565b9150604084013590509250925092565b600080604083850312156113a157600080fd5b6113aa836112ac565b91506113b8602084016112ac565b90509250929050565b600181811c908216806113d557607f821691505b6020821081036113f557634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561059e5761059e611430565b60006020828403121561146b57600080fd5b5051919050565b60006020828403121561148457600080fd5b81516106d0816112f2565b808202811582820484141761059e5761059e611430565b6000826114c357634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561059e5761059e61143056fea2646970667358221220b51549b430a71ee95bd43e60d213b1870592a5f193a6fa5dfb3d4abc7330e5f364736f6c63430008130033
Deployed Bytecode
0x60806040526004361061016a5760003560e01c8063735de9f7116100d1578063a8b089821161008a578063dd62ed3e11610064578063dd62ed3e1461046a578063f2fde38b146104b0578063f5648a4f146104d0578063f66895a3146104e557600080fd5b8063a8b08982146103f6578063a9059cbb1461042a578063cb9637281461044a57600080fd5b8063735de9f71461034457806376be96f3146103785780638a8c523c1461038e5780638da5cb5b146103a357806395d89b41146103c1578063a457c2d7146103d657600080fd5b8063313ce56711610123578063313ce5671461026b57806339509351146102875780634ada218b146102a757806370a08231146102c157806370d5ae05146102f7578063715018a61461032f57600080fd5b806306fdde0314610176578063095ea7b3146101a15780630c424284146101d157806318160ddd146101f35780631950c2181461021257806323b872dd1461024b57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104fb565b604051610198919061125e565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc3660046112c8565b61058d565b6040519015158152602001610198565b3480156101dd57600080fd5b506101f16101ec366004611300565b6105a4565b005b3480156101ff57600080fd5b506002545b604051908152602001610198565b34801561021e57600080fd5b506101c161022d366004611337565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561025757600080fd5b506101c1610266366004611352565b61062b565b34801561027757600080fd5b5060405160128152602001610198565b34801561029357600080fd5b506101c16102a23660046112c8565b6106d7565b3480156102b357600080fd5b506008546101c19060ff1681565b3480156102cd57600080fd5b506102046102dc366004611337565b6001600160a01b031660009081526020819052604090205490565b34801561030357600080fd5b50600a54610317906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b34801561033b57600080fd5b506101f1610713565b34801561035057600080fd5b506103177f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b34801561038457600080fd5b5061020460095481565b34801561039a57600080fd5b506101f1610749565b3480156103af57600080fd5b506005546001600160a01b0316610317565b3480156103cd57600080fd5b5061018b6107d9565b3480156103e257600080fd5b506101c16103f13660046112c8565b6107e8565b34801561040257600080fd5b506103177f000000000000000000000000c53be5b3e95b77085c3c10979ba6816c80c5268381565b34801561043657600080fd5b506101c16104453660046112c8565b610881565b34801561045657600080fd5b506101f1610465366004611337565b61088e565b34801561047657600080fd5b5061020461048536600461138e565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156104bc57600080fd5b506101f16104cb366004611337565b610a95565b3480156104dc57600080fd5b506101f1610b30565b3480156104f157600080fd5b5061020460065481565b60606003805461050a906113c1565b80601f0160208091040260200160405190810160405280929190818152602001828054610536906113c1565b80156105835780601f1061055857610100808354040283529160200191610583565b820191906000526020600020905b81548152906001019060200180831161056657829003601f168201915b5050505050905090565b600061059a338484610c44565b5060015b92915050565b6005546001600160a01b031633146105d75760405162461bcd60e51b81526004016105ce906113fb565b60405180910390fd5b6001600160a01b038216600081815260076020526040808220805460ff191685151590811790915590519092917f5a25e09a5dba33161281055e015f1279b6b10204d8f90dd56a8ce2b82322d43d91a35050565b6000610638848484610d68565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156106bd5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016105ce565b6106ca8533858403610c44565b60019150505b9392505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161059a91859061070e908690611446565b610c44565b6005546001600160a01b0316331461073d5760405162461bcd60e51b81526004016105ce906113fb565b6107476000610f25565b565b6005546001600160a01b031633146107735760405162461bcd60e51b81526004016105ce906113fb565b60085460ff16156107c65760405162461bcd60e51b815260206004820152601a60248201527f54726164696e6720697320616c726561647920656e61626c656400000000000060448201526064016105ce565b6008805460ff1916600117905543600955565b60606004805461050a906113c1565b3360009081526001602090815260408083206001600160a01b03861684529091528120548281101561086a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105ce565b6108773385858403610c44565b5060019392505050565b600061059a338484610d68565b6005546001600160a01b031633146108b85760405162461bcd60e51b81526004016105ce906113fb565b306001600160a01b038216036109105760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e6e6f7420636c61696d206e617469766520746f6b656e7360448201526064016105ce565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610957573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097b9190611459565b9050600081116109cd5760405162461bcd60e51b815260206004820152601f60248201527f4e6f20746f6b656e7320617661696c61626c6520746f2077697468647261770060448201526064016105ce565b60405163a9059cbb60e01b8152336004820152602481018290526000906001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610a1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a419190611472565b905080610a905760405162461bcd60e51b815260206004820152601b60248201527f7472616e7366657272696e6720746f6b656e73206661696c656421000000000060448201526064016105ce565b505050565b6005546001600160a01b03163314610abf5760405162461bcd60e51b81526004016105ce906113fb565b6001600160a01b038116610b245760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ce565b610b2d81610f25565b50565b6005546001600160a01b03163314610b5a5760405162461bcd60e51b81526004016105ce906113fb565b4780610ba85760405162461bcd60e51b815260206004820152601c60248201527f4e6f2045544820617661696c61626c6520746f2077697468647261770000000060448201526064016105ce565b604051600090339083908381818185875af1925050503d8060008114610bea576040519150601f19603f3d011682016040523d82523d6000602084013e610bef565b606091505b5050905080610c405760405162461bcd60e51b815260206004820152601760248201527f7472616e7366657272696e6720455448206661696c656400000000000000000060448201526064016105ce565b5050565b6001600160a01b038316610ca65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ce565b6001600160a01b038216610d075760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ce565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dbe5760405162461bcd60e51b815260206004820152601a60248201527f7472616e736665722066726f6d2061646472657373207a65726f00000000000060448201526064016105ce565b6001600160a01b038216610e145760405162461bcd60e51b815260206004820152601860248201527f7472616e7366657220746f2061646472657373207a65726f000000000000000060448201526064016105ce565b60008111610e765760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016105ce565b6000610e83848484610f77565b6001600160a01b03851660009081526007602052604090205490915060ff16158015610ec857506001600160a01b03831660009081526007602052604090205460ff16155b15610f145760085460ff16610f145760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b60448201526064016105ce565b610f1f848483611090565b50505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831660009081526007602052604081205460ff1680610fb657506001600160a01b03831660009081526007602052604090205460ff165b15610fc25750806106d0565b60007f000000000000000000000000c53be5b3e95b77085c3c10979ba6816c80c526836001600160a01b0316846001600160a01b0316036110065750600654611043565b7f000000000000000000000000c53be5b3e95b77085c3c10979ba6816c80c526836001600160a01b0316856001600160a01b031603611043575060005b6000811561107c576064611057838661148f565b61106191906114a6565b600a5490915061107c9087906001600160a01b031683611090565b61108681856114c8565b9695505050505050565b6001600160a01b0383166110f45760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ce565b6001600160a01b0382166111565760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ce565b6001600160a01b038316600090815260208190526040902054818110156111ce5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105ce565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611205908490611446565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161125191815260200190565b60405180910390a3610f1f565b600060208083528351808285015260005b8181101561128b5785810183015185820160400152820161126f565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146112c357600080fd5b919050565b600080604083850312156112db57600080fd5b6112e4836112ac565b946020939093013593505050565b8015158114610b2d57600080fd5b6000806040838503121561131357600080fd5b61131c836112ac565b9150602083013561132c816112f2565b809150509250929050565b60006020828403121561134957600080fd5b6106d0826112ac565b60008060006060848603121561136757600080fd5b611370846112ac565b925061137e602085016112ac565b9150604084013590509250925092565b600080604083850312156113a157600080fd5b6113aa836112ac565b91506113b8602084016112ac565b90509250929050565b600181811c908216806113d557607f821691505b6020821081036113f557634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561059e5761059e611430565b60006020828403121561146b57600080fd5b5051919050565b60006020828403121561148457600080fd5b81516106d0816112f2565b808202811582820484141761059e5761059e611430565b6000826114c357634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561059e5761059e61143056fea2646970667358221220b51549b430a71ee95bd43e60d213b1870592a5f193a6fa5dfb3d4abc7330e5f364736f6c63430008130033
Deployed Bytecode Sourcemap
10813:4172:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1610:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2524:169;;;;;;;;;;-1:-1:-1;2524:169:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;2524:169:0;1004:187:1;12437:195:0;;;;;;;;;;-1:-1:-1;12437:195:0;;;;;:::i;:::-;;:::i;:::-;;1931:108;;;;;;;;;;-1:-1:-1;2019:12:0;;1931:108;;;1785:25:1;;;1773:2;1758:18;1931:108:0;1639:177:1;12640:116:0;;;;;;;;;;-1:-1:-1;12640:116:0;;;;;:::i;:::-;-1:-1:-1;;;;;12728:20:0;12704:4;12728:20;;;:11;:20;;;;;;;;;12640:116;2701:490;;;;;;;;;;-1:-1:-1;2701:490:0;;;;;:::i;:::-;;:::i;1830:93::-;;;;;;;;;;-1:-1:-1;1830:93:0;;1913:2;2487:36:1;;2475:2;2460:18;1830:93:0;2345:184:1;3199:215:0;;;;;;;;;;-1:-1:-1;3199:215:0;;;;;:::i;:::-;;:::i;11204:34::-;;;;;;;;;;-1:-1:-1;11204:34:0;;;;;;;;2047:127;;;;;;;;;;-1:-1:-1;2047:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;2148:18:0;2121:7;2148:18;;;;;;;;;;;;2047:127;11301:71;;;;;;;;;;-1:-1:-1;11301:71:0;;;;-1:-1:-1;;;;;11301:71:0;;;;;;-1:-1:-1;;;;;2698:32:1;;;2680:51;;2668:2;2653:18;11301:71:0;2534:203:1;6694:94:0;;;;;;;;;;;;;:::i;10943:40::-;;;;;;;;;;;;;;;11245:32;;;;;;;;;;;;;;;;12237:192;;;;;;;;;;;;;:::i;6471:87::-;;;;;;;;;;-1:-1:-1;6544:6:0;;-1:-1:-1;;;;;6544:6:0;6471:87;;1718:104;;;;;;;;;;;;;:::i;3422:411::-;;;;;;;;;;-1:-1:-1;3422:411:0;;;;;:::i;:::-;;:::i;10990:36::-;;;;;;;;;;;;;;;2182:175;;;;;;;;;;-1:-1:-1;2182:175:0;;;;;:::i;:::-;;:::i;14517:428::-;;;;;;;;;;-1:-1:-1;14517:428:0;;;;;:::i;:::-;;:::i;2365:151::-;;;;;;;;;;-1:-1:-1;2365:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;2481:18:0;;;2454:7;2481:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2365:151;6796:192;;;;;;;;;;-1:-1:-1;6796:192:0;;;;;:::i;:::-;;:::i;14235:278::-;;;;;;;;;;;;;:::i;11049:28::-;;;;;;;;;;;;;;;;1610:100;1664:13;1697:5;1690:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1610:100;:::o;2524:169::-;2607:4;2624:39;1072:10;2647:7;2656:6;2624:8;:39::i;:::-;-1:-1:-1;2681:4:0;2524:169;;;;;:::o;12437:195::-;6544:6;;-1:-1:-1;;;;;6544:6:0;1072:10;6606:23;6598:68;;;;-1:-1:-1;;;6598:68:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;12551:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;:30;;-1:-1:-1;;12551:30:0::1;::::0;::::1;;::::0;;::::1;::::0;;;12597:27;;12551:30;;:20;12597:27:::1;::::0;::::1;12437:195:::0;;:::o;2701:490::-;2841:4;2858:36;2868:6;2876:9;2887:6;2858:9;:36::i;:::-;-1:-1:-1;;;;;2934:19:0;;2907:24;2934:19;;;:11;:19;;;;;;;;1072:10;2934:33;;;;;;;;2986:26;;;;2978:79;;;;-1:-1:-1;;;2978:79:0;;4181:2:1;2978:79:0;;;4163:21:1;4220:2;4200:18;;;4193:30;4259:34;4239:18;;;4232:62;-1:-1:-1;;;4310:18:1;;;4303:38;4358:19;;2978:79:0;3979:404:1;2978:79:0;3093:57;3102:6;1072:10;3143:6;3124:16;:25;3093:8;:57::i;:::-;3179:4;3172:11;;;2701:490;;;;;;:::o;3199:215::-;1072:10;3287:4;3336:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3336:34:0;;;;;;;;;;3287:4;;3304:80;;3327:7;;3336:47;;3373:10;;3336:47;:::i;:::-;3304:8;:80::i;6694:94::-;6544:6;;-1:-1:-1;;;;;6544:6:0;1072:10;6606:23;6598:68;;;;-1:-1:-1;;;6598:68:0;;;;;;;:::i;:::-;6759:21:::1;6777:1;6759:9;:21::i;:::-;6694:94::o:0;12237:192::-;6544:6;;-1:-1:-1;;;;;6544:6:0;1072:10;6606:23;6598:68;;;;-1:-1:-1;;;6598:68:0;;;;;;;:::i;:::-;12301:14:::1;::::0;::::1;;12300:15;12292:54;;;::::0;-1:-1:-1;;;12292:54:0;;4852:2:1;12292:54:0::1;::::0;::::1;4834:21:1::0;4891:2;4871:18;;;4864:30;4930:28;4910:18;;;4903:56;4976:18;;12292:54:0::1;4650:350:1::0;12292:54:0::1;12357:14;:21:::0;;-1:-1:-1;;12357:21:0::1;12374:4;12357:21;::::0;;12409:12:::1;12389:17;:32:::0;12237:192::o;1718:104::-;1774:13;1807:7;1800:14;;;;;:::i;3422:411::-;1072:10;3515:4;3559:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3559:34:0;;;;;;;;;;3612:35;;;;3604:85;;;;-1:-1:-1;;;3604:85:0;;5207:2:1;3604:85:0;;;5189:21:1;5246:2;5226:18;;;5219:30;5285:34;5265:18;;;5258:62;-1:-1:-1;;;5336:18:1;;;5329:35;5381:19;;3604:85:0;5005:401:1;3604:85:0;3725:67;1072:10;3748:7;3776:15;3757:16;:34;3725:8;:67::i;:::-;-1:-1:-1;3821:4:0;;3422:411;-1:-1:-1;;;3422:411:0:o;2182:175::-;2268:4;2285:42;1072:10;2309:9;2320:6;2285:9;:42::i;14517:428::-;6544:6;;-1:-1:-1;;;;;6544:6:0;1072:10;6606:23;6598:68;;;;-1:-1:-1;;;6598:68:0;;;;;;;:::i;:::-;14624:4:::1;-1:-1:-1::0;;;;;14601:28:0;::::1;::::0;14593:73:::1;;;::::0;-1:-1:-1;;;14593:73:0;;5613:2:1;14593:73:0::1;::::0;::::1;5595:21:1::0;;;5632:18;;;5625:30;5691:34;5671:18;;;5664:62;5743:18;;14593:73:0::1;5411:356:1::0;14593:73:0::1;14698:44;::::0;-1:-1:-1;;;14698:44:0;;14736:4:::1;14698:44;::::0;::::1;2680:51:1::0;14675:20:0::1;::::0;-1:-1:-1;;;;;14698:29:0;::::1;::::0;::::1;::::0;2653:18:1;;14698:44:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14675:67;;14772:1;14757:12;:16;14749:60;;;::::0;-1:-1:-1;;;14749:60:0;;6163:2:1;14749:60:0::1;::::0;::::1;6145:21:1::0;6202:2;6182:18;;;6175:30;6241:33;6221:18;;;6214:61;6292:18;;14749:60:0::1;5961:355:1::0;14749:60:0::1;14833:54;::::0;-1:-1:-1;;;14833:54:0;;14862:10:::1;14833:54;::::0;::::1;6495:51:1::0;6562:18;;;6555:34;;;14818:12:0::1;::::0;-1:-1:-1;;;;;14833:28:0;::::1;::::0;::::1;::::0;6468:18:1;;14833:54:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14818:69;;14902:7;14894:47;;;::::0;-1:-1:-1;;;14894:47:0;;7052:2:1;14894:47:0::1;::::0;::::1;7034:21:1::0;7091:2;7071:18;;;7064:30;7130:29;7110:18;;;7103:57;7177:18;;14894:47:0::1;6850:351:1::0;14894:47:0::1;14586:359;;14517:428:::0;:::o;6796:192::-;6544:6;;-1:-1:-1;;;;;6544:6:0;1072:10;6606:23;6598:68;;;;-1:-1:-1;;;6598:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6885:22:0;::::1;6877:73;;;::::0;-1:-1:-1;;;6877:73:0;;7408:2:1;6877:73:0::1;::::0;::::1;7390:21:1::0;7447:2;7427:18;;;7420:30;7486:34;7466:18;;;7459:62;-1:-1:-1;;;7537:18:1;;;7530:36;7583:19;;6877:73:0::1;7206:402:1::0;6877:73:0::1;6961:19;6971:8;6961:9;:19::i;:::-;6796:192:::0;:::o;14235:278::-;6544:6;;-1:-1:-1;;;;;6544:6:0;1072:10;6606:23;6598:68;;;;-1:-1:-1;;;6598:68:0;;;;;;;:::i;:::-;14307:21:::1;14343:11:::0;14335:52:::1;;;::::0;-1:-1:-1;;;14335:52:0;;7815:2:1;14335:52:0::1;::::0;::::1;7797:21:1::0;7854:2;7834:18;;;7827:30;7893;7873:18;;;7866:58;7941:18;;14335:52:0::1;7613:352:1::0;14335:52:0::1;14415:44;::::0;14397:12:::1;::::0;14423:10:::1;::::0;14447:7;;14397:12;14415:44;14397:12;14415:44;14447:7;14423:10;14415:44:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14396:63;;;14474:7;14466:43;;;::::0;-1:-1:-1;;;14466:43:0;;8382:2:1;14466:43:0::1;::::0;::::1;8364:21:1::0;8421:2;8401:18;;;8394:30;8460:25;8440:18;;;8433:53;8503:18;;14466:43:0::1;8180:347:1::0;14466:43:0::1;14282:231;;14235:278::o:0;5588:380::-;-1:-1:-1;;;;;5724:19:0;;5716:68;;;;-1:-1:-1;;;5716:68:0;;8734:2:1;5716:68:0;;;8716:21:1;8773:2;8753:18;;;8746:30;8812:34;8792:18;;;8785:62;-1:-1:-1;;;8863:18:1;;;8856:34;8907:19;;5716:68:0;8532:400:1;5716:68:0;-1:-1:-1;;;;;5803:21:0;;5795:68;;;;-1:-1:-1;;;5795:68:0;;9139:2:1;5795:68:0;;;9121:21:1;9178:2;9158:18;;;9151:30;9217:34;9197:18;;;9190:62;-1:-1:-1;;;9268:18:1;;;9261:32;9310:19;;5795:68:0;8937:398:1;5795:68:0;-1:-1:-1;;;;;5876:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5928:32;;1785:25:1;;;5928:32:0;;1758:18:1;5928:32:0;;;;;;;5588:380;;;:::o;13527:704::-;-1:-1:-1;;;;;13670:19:0;;13662:58;;;;-1:-1:-1;;;13662:58:0;;9542:2:1;13662:58:0;;;9524:21:1;9581:2;9561:18;;;9554:30;9620:28;9600:18;;;9593:56;9666:18;;13662:58:0;9340:350:1;13662:58:0;-1:-1:-1;;;;;13739:17:0;;13731:54;;;;-1:-1:-1;;;13731:54:0;;9897:2:1;13731:54:0;;;9879:21:1;9936:2;9916:18;;;9909:30;9975:26;9955:18;;;9948:54;10019:18;;13731:54:0;9695:348:1;13731:54:0;13814:1;13804:7;:11;13796:65;;;;-1:-1:-1;;;13796:65:0;;10250:2:1;13796:65:0;;;10232:21:1;10289:2;10269:18;;;10262:30;10328:34;10308:18;;;10301:62;-1:-1:-1;;;10379:18:1;;;10372:39;10428:19;;13796:65:0;10048:405:1;13796:65:0;13872:18;13893:29;13902:5;13909:3;13914:7;13893:8;:29::i;:::-;-1:-1:-1;;;;;13952:18:0;;;;;;:11;:18;;;;;;13872:50;;-1:-1:-1;13952:18:0;;13951:19;:53;;;;-1:-1:-1;;;;;;13988:16:0;;;;;;:11;:16;;;;;;;;13987:17;13951:53;13933:241;;;14039:14;;;;14031:45;;;;-1:-1:-1;;;14031:45:0;;10660:2:1;14031:45:0;;;10642:21:1;10699:2;10679:18;;;10672:30;-1:-1:-1;;;10718:18:1;;;10711:48;10776:18;;14031:45:0;10458:342:1;14031:45:0;14184:39;14200:5;14207:3;14212:10;14184:15;:39::i;:::-;13651:580;13527:704;;;:::o;6996:173::-;7071:6;;;-1:-1:-1;;;;;7088:17:0;;;-1:-1:-1;;;;;;7088:17:0;;;;;;;7121:40;;7071:6;;;7088:17;7071:6;;7121:40;;7052:16;;7121:40;7041:128;6996:173;:::o;12904:615::-;-1:-1:-1;;;;;13043:18:0;;13019:7;13043:18;;;:11;:18;;;;;;;;;:38;;-1:-1:-1;;;;;;13065:16:0;;;;;;:11;:16;;;;;;;;13043:38;13039:85;;;-1:-1:-1;13105:7:0;13098:14;;13039:85;13134:16;13178:11;-1:-1:-1;;;;;13171:18:0;:3;-1:-1:-1;;;;;13171:18:0;;13167:142;;-1:-1:-1;13217:9:0;;13167:142;;;13257:11;-1:-1:-1;;;;;13248:20:0;:5;-1:-1:-1;;;;;13248:20:0;;13244:65;;-1:-1:-1;13296:1:0;13244:65;13321:11;13351:12;;13347:132;;13409:3;13387:18;13397:8;13387:7;:18;:::i;:::-;13386:26;;;;:::i;:::-;13450:11;;13380:32;;-1:-1:-1;13427:40:0;;13443:5;;-1:-1:-1;;;;;13450:11:0;13380:32;13427:15;:40::i;:::-;13497:13;13507:3;13497:7;:13;:::i;:::-;13489:22;12904:615;-1:-1:-1;;;;;;12904:615:0:o;3841:733::-;-1:-1:-1;;;;;3981:20:0;;3973:70;;;;-1:-1:-1;;;3973:70:0;;11535:2:1;3973:70:0;;;11517:21:1;11574:2;11554:18;;;11547:30;11613:34;11593:18;;;11586:62;-1:-1:-1;;;11664:18:1;;;11657:35;11709:19;;3973:70:0;11333:401:1;3973:70:0;-1:-1:-1;;;;;4062:23:0;;4054:71;;;;-1:-1:-1;;;4054:71:0;;11941:2:1;4054:71:0;;;11923:21:1;11980:2;11960:18;;;11953:30;12019:34;11999:18;;;11992:62;-1:-1:-1;;;12070:18:1;;;12063:33;12113:19;;4054:71:0;11739:399:1;4054:71:0;-1:-1:-1;;;;;4222:17:0;;4198:21;4222:17;;;;;;;;;;;4258:23;;;;4250:74;;;;-1:-1:-1;;;4250:74:0;;12345:2:1;4250:74:0;;;12327:21:1;12384:2;12364:18;;;12357:30;12423:34;12403:18;;;12396:62;-1:-1:-1;;;12474:18:1;;;12467:36;12520:19;;4250:74:0;12143:402:1;4250:74:0;-1:-1:-1;;;;;4360:17:0;;;:9;:17;;;;;;;;;;;4380:22;;;4360:42;;4424:20;;;;;;;;:30;;4396:6;;4360:9;4424:30;;4396:6;;4424:30;:::i;:::-;;;;;;;;4489:9;-1:-1:-1;;;;;4472:35:0;4481:6;-1:-1:-1;;;;;4472:35:0;;4500:6;4472:35;;;;1785:25:1;;1773:2;1758:18;;1639:177;4472:35:0;;;;;;;;4520:46;14517:428;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:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1196:118::-;1282:5;1275:13;1268:21;1261:5;1258:32;1248:60;;1304:1;1301;1294:12;1319:315;1384:6;1392;1445:2;1433:9;1424:7;1420:23;1416:32;1413:52;;;1461:1;1458;1451:12;1413:52;1484:29;1503:9;1484:29;:::i;:::-;1474:39;;1563:2;1552:9;1548:18;1535:32;1576:28;1598:5;1576:28;:::i;:::-;1623:5;1613:15;;;1319:315;;;;;:::o;1821:186::-;1880:6;1933:2;1921:9;1912:7;1908:23;1904:32;1901:52;;;1949:1;1946;1939:12;1901:52;1972:29;1991:9;1972:29;:::i;2012:328::-;2089:6;2097;2105;2158:2;2146:9;2137:7;2133:23;2129:32;2126:52;;;2174:1;2171;2164:12;2126:52;2197:29;2216:9;2197:29;:::i;:::-;2187:39;;2245:38;2279:2;2268:9;2264:18;2245:38;:::i;:::-;2235:48;;2330:2;2319:9;2315:18;2302:32;2292:42;;2012:328;;;;;:::o;2968:260::-;3036:6;3044;3097:2;3085:9;3076:7;3072:23;3068:32;3065:52;;;3113:1;3110;3103:12;3065:52;3136:29;3155:9;3136:29;:::i;:::-;3126:39;;3184:38;3218:2;3207:9;3203:18;3184:38;:::i;:::-;3174:48;;2968:260;;;;;:::o;3233:380::-;3312:1;3308:12;;;;3355;;;3376:61;;3430:4;3422:6;3418:17;3408:27;;3376:61;3483:2;3475:6;3472:14;3452:18;3449:38;3446:161;;3529:10;3524:3;3520:20;3517:1;3510:31;3564:4;3561:1;3554:15;3592:4;3589:1;3582:15;3446:161;;3233:380;;;:::o;3618:356::-;3820:2;3802:21;;;3839:18;;;3832:30;3898:34;3893:2;3878:18;;3871:62;3965:2;3950:18;;3618:356::o;4388:127::-;4449:10;4444:3;4440:20;4437:1;4430:31;4480:4;4477:1;4470:15;4504:4;4501:1;4494:15;4520:125;4585:9;;;4606:10;;;4603:36;;;4619:18;;:::i;5772:184::-;5842:6;5895:2;5883:9;5874:7;5870:23;5866:32;5863:52;;;5911:1;5908;5901:12;5863:52;-1:-1:-1;5934:16:1;;5772:184;-1:-1:-1;5772:184:1:o;6600:245::-;6667:6;6720:2;6708:9;6699:7;6695:23;6691:32;6688:52;;;6736:1;6733;6726:12;6688:52;6768:9;6762:16;6787:28;6809:5;6787:28;:::i;10805:168::-;10878:9;;;10909;;10926:15;;;10920:22;;10906:37;10896:71;;10947:18;;:::i;10978:217::-;11018:1;11044;11034:132;;11088:10;11083:3;11079:20;11076:1;11069:31;11123:4;11120:1;11113:15;11151:4;11148:1;11141:15;11034:132;-1:-1:-1;11180:9:1;;10978:217::o;11200:128::-;11267:9;;;11288:11;;;11285:37;;;11302:18;;:::i
Swarm Source
ipfs://b51549b430a71ee95bd43e60d213b1870592a5f193a6fa5dfb3d4abc7330e5f3
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.