ERC-20
Overview
Max Total Supply
69,000,000,000 PAI
Holders
9
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.000000000154907521 PAIValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
CREAMPAI
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-11-27 */ // SPDX-License-Identifier: MIT //WEBSITE: https://creampaierc.wtf //TELEGRAM: https://t.me/creampaierc //TWITTER(X): https://twitter.com/CreampAI_Erc /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface PAI20 { 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 IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _setOwner(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the 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); } } 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; } } } enum TokenType { standard } pragma solidity =0.8.18; contract CREAMPAI is PAI20, Ownable { using SafeMath for uint256; uint256 private constant VERSION = 1; uint256 public burn = 9900; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromTax; uint256 public maxTxAmount; uint256 public tax = 0; // 0% address public PAIdeployer; address constant taxwallet = 0x7C702A2A0715Cb8dfdC9c447bBf435583787a4bB; event BurnAmount(uint256 oldAmount, uint256 newAmount); event TaxRate(uint256 oldRate, uint256 newRate); IUniswapV2Router02 private uniswapV2Router; address public uniswapV2Pair; bool private swapping = true; string private _name; string private _symbol; uint8 private _decimals; uint256 private _totalSupply; constructor() payable { _name = unicode"CreampAI"; _symbol = unicode"PAI"; _decimals = 18; _totalSupply = 69000000000 * (10 ** uint256(_decimals)); _balances[owner()] = _totalSupply; _isExcludedFromTax[taxwallet] = true; maxTxAmount = 69000000000 * (10 ** uint256(_decimals)); PAIdeployer = 0x1463c3Ad9dbeF4D086052D164a192D83419BD45d; _isExcludedFromTax[PAIdeployer] = true; uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); } function name() public view virtual returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return _decimals; } 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; } /** * @dev See {IERC20-allowance}. */ 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); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue) ); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].sub( subtractedValue, "ERC20: decreased allowance below zero" ) ); 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"); uint256 taxRate = 0; if (recipient == uniswapV2Pair && !_isExcludedFromTax[sender]) { taxRate = burn; } else if (sender == uniswapV2Pair && !_isExcludedFromTax[recipient]) { taxRate = tax; } uint256 taxAmount = amount.mul(taxRate).div(10000); uint256 newAmount = amount.sub(taxAmount); if (!_isExcludedFromTax[sender]) { require(newAmount <= maxTxAmount, "Amount after tax exceeds the maxTxAmount"); } _beforeTokenTransfer(sender, recipient, newAmount); if (taxAmount > 0) { _balances[sender] = _balances[sender].sub(taxAmount, "ERC20: tax amount exceeds balance"); _balances[taxwallet] = _balances[taxwallet].add(taxAmount); emit Transfer(sender, taxwallet, taxAmount); } _balances[sender] = _balances[sender].sub(newAmount, "ERC20: transfer amount exceeds balance"); _balances[recipient] = _balances[recipient].add(newAmount); emit Transfer(sender, recipient, newAmount); } function setTaxRate(uint256 newRate) external onlyOwner { require(newRate >= 0 && newRate <= 10000, "Invalid tax rate"); // 100% uint256 oldRate = tax; tax = newRate; emit TaxRate(oldRate, newRate); } function setMaxTxAmount(uint256 amount) external onlyOwner { require(_msgSender() == owner(), "Not authorized"); maxTxAmount = amount; } function burnFee(uint256 newAmount) external onlyOwner { require(newAmount >= 0 && newAmount <= 10000, "Burn to the Zero Address"); uint256 oldAmount = burn; burn = newAmount; emit BurnAmount(oldAmount, newAmount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); _balances[account] = _balances[account].sub( amount, "ERC20: burn amount exceeds balance" ); _totalSupply = _totalSupply.sub(amount); emit Transfer(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 _setupDecimals(uint8 decimals_) internal virtual { _decimals = decimals_; } function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"oldAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"BurnAmount","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":false,"internalType":"uint256","name":"oldRate","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newRate","type":"uint256"}],"name":"TaxRate","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":[],"name":"PAIdeployer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newAmount","type":"uint256"}],"name":"burnFee","outputs":[],"stateMutability":"nonpayable","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":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"uint256","name":"amount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newRate","type":"uint256"}],"name":"setTaxRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526126ac60015560006006556009805460ff60a01b1916600160a01b179055620000346200002e3390565b62000366565b604080518082019091526008815267437265616d70414960c01b6020820152600a906200006290826200045b565b5060408051808201909152600381526250414960e81b6020820152600b906200008c90826200045b565b50600c805460ff19166012908117909155620000aa90600a6200063c565b620000bb90641010b8720062000651565b600d81905560026000620000d76000546001600160a01b031690565b6001600160a01b03168152602080820192909252604001600090812092909255737c702a2a0715cb8dfdc9c447bbf435583787a4bb909152600490527fa8a1b9db2ae6a92af5600ed56614d1d73f7724e28a66cf13a4fbbfbbf6358f6e805460ff19166001179055600c54620001529060ff16600a6200063c565b6200016390641010b8720062000651565b60055560078054731463c3ad9dbef4d086052d164a192d83419bd45d6001600160a01b03199182168117909255600091909152600460208181527faaedd73b095ef615354078b19ced867ef24c180ca69b4cccd07fe7a9221200b9805460ff1916600117905560088054737a250d5630b4cf539739df2c5dacb4c659f2488d9416841790556040805163c45a015560e01b8152905163c45a01559382810193928290030181865afa1580156200021d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200024391906200066b565b6001600160a01b031663c9c6539630600860009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002a6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002cc91906200066b565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200031a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200034091906200066b565b600980546001600160a01b0319166001600160a01b039290921691909117905562000696565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003e157607f821691505b6020821081036200040257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200045657600081815260208120601f850160051c81016020861015620004315750805b601f850160051c820191505b8181101562000452578281556001016200043d565b5050505b505050565b81516001600160401b03811115620004775762000477620003b6565b6200048f81620004888454620003cc565b8462000408565b602080601f831160018114620004c75760008415620004ae5750858301515b600019600386901b1c1916600185901b17855562000452565b600085815260208120601f198616915b82811015620004f857888601518255948401946001909101908401620004d7565b5085821015620005175787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200057e57816000190482111562000562576200056262000527565b808516156200057057918102915b93841c939080029062000542565b509250929050565b600082620005975750600162000636565b81620005a65750600062000636565b8160018114620005bf5760028114620005ca57620005ea565b600191505062000636565b60ff841115620005de57620005de62000527565b50506001821b62000636565b5060208310610133831016604e8410600b84101617156200060f575081810a62000636565b6200061b83836200053d565b806000190482111562000632576200063262000527565b0290505b92915050565b60006200064a838362000586565b9392505050565b808202811582820484141762000636576200063662000527565b6000602082840312156200067e57600080fd5b81516001600160a01b03811681146200064a57600080fd5b61104c80620006a66000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c8063715018a6116100b8578063a457c2d71161007c578063a457c2d71461028d578063a9059cbb146102a0578063c6d69a30146102b3578063dd62ed3e146102c6578063ec28438a146102ff578063f2fde38b1461031257600080fd5b8063715018a61461025a5780638c0b5e22146102625780638da5cb5b1461026b57806395d89b411461027c57806399c8d5561461028457600080fd5b8063395093511161010a57806339509351146101c257806344df8e70146101d557806349ae028a146101de57806349bd5a5e146101f357806353d7e8211461021e57806370a082311461023157600080fd5b806306fdde0314610147578063095ea7b31461016557806318160ddd1461018857806323b872dd1461019a578063313ce567146101ad575b600080fd5b61014f610325565b60405161015c9190610d67565b60405180910390f35b610178610173366004610dd1565b6103b7565b604051901515815260200161015c565b600d545b60405190815260200161015c565b6101786101a8366004610dfb565b6103ce565b600c5460405160ff909116815260200161015c565b6101786101d0366004610dd1565b610437565b61018c60015481565b6101f16101ec366004610e37565b61046d565b005b600954610206906001600160a01b031681565b6040516001600160a01b03909116815260200161015c565b600754610206906001600160a01b031681565b61018c61023f366004610e50565b6001600160a01b031660009081526002602052604090205490565b6101f1610538565b61018c60055481565b6000546001600160a01b0316610206565b61014f61056e565b61018c60065481565b61017861029b366004610dd1565b61057d565b6101786102ae366004610dd1565b6105cc565b6101f16102c1366004610e37565b6105d9565b61018c6102d4366004610e6b565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6101f161030d366004610e37565b610686565b6101f1610320366004610e50565b610700565b6060600a805461033490610e9e565b80601f016020809104026020016040519081016040528092919081815260200182805461036090610e9e565b80156103ad5780601f10610382576101008083540402835291602001916103ad565b820191906000526020600020905b81548152906001019060200180831161039057829003601f168201915b5050505050905090565b60006103c433848461079b565b5060015b92915050565b60006103db8484846108bf565b61042d843361042885604051806060016040528060288152602001610fa9602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610cb4565b61079b565b5060019392505050565b3360008181526003602090815260408083206001600160a01b038716845290915281205490916103c49185906104289086610ce0565b6000546001600160a01b031633146104a05760405162461bcd60e51b815260040161049790610ed8565b60405180910390fd5b6127108111156104f25760405162461bcd60e51b815260206004820152601860248201527f4275726e20746f20746865205a65726f204164647265737300000000000000006044820152606401610497565b600180549082905560408051828152602081018490527f28d50d8e79f9b3e7e98b793ec2ce4c89095c23e2d7d5ac1511ffb345c684c7de91015b60405180910390a15050565b6000546001600160a01b031633146105625760405162461bcd60e51b815260040161049790610ed8565b61056c6000610cf3565b565b6060600b805461033490610e9e565b60006103c4338461042885604051806060016040528060258152602001610ff2602591393360009081526003602090815260408083206001600160a01b038d1684529091529020549190610cb4565b60006103c43384846108bf565b6000546001600160a01b031633146106035760405162461bcd60e51b815260040161049790610ed8565b6127108111156106485760405162461bcd60e51b815260206004820152601060248201526f496e76616c696420746178207261746560801b6044820152606401610497565b600680549082905560408051828152602081018490527f7927dc01e0e63778c47ab7e42d5af6555a774cc1707fc00433810f65d18e98c6910161052c565b6000546001600160a01b031633146106b05760405162461bcd60e51b815260040161049790610ed8565b6000546001600160a01b031633146106fb5760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606401610497565b600555565b6000546001600160a01b0316331461072a5760405162461bcd60e51b815260040161049790610ed8565b6001600160a01b03811661078f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610497565b61079881610cf3565b50565b6001600160a01b0383166107fd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610497565b6001600160a01b03821661085e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610497565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109235760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610497565b6001600160a01b0382166109855760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610497565b6009546000906001600160a01b0384811691161480156109be57506001600160a01b03841660009081526004602052604090205460ff16155b156109cc5750600154610a0c565b6009546001600160a01b038581169116148015610a0257506001600160a01b03831660009081526004602052604090205460ff16155b15610a0c57506006545b6000610a24612710610a1e8585610d43565b90610d4f565b90506000610a328483610d5b565b6001600160a01b03871660009081526004602052604090205490915060ff16610ab857600554811115610ab85760405162461bcd60e51b815260206004820152602860248201527f416d6f756e7420616674657220746178206578636565647320746865206d6178604482015267151e105b5bdd5b9d60c21b6064820152608401610497565b8115610be457610afb82604051806060016040528060218152602001610fd1602191396001600160a01b0389166000908152600260205260409020549190610cb4565b6001600160a01b038716600090815260026020526040812091909155737c702a2a0715cb8dfdc9c447bbf435583787a4bb90527faf4785bf08921748126450357115b6a68e2c63fe2b99c925487f4a5c2f56a09054610b5a9083610ce0565b737c702a2a0715cb8dfdc9c447bbf435583787a4bb600081905260026020527faf4785bf08921748126450357115b6a68e2c63fe2b99c925487f4a5c2f56a090919091556040516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bdb9086815260200190565b60405180910390a35b610c2181604051806060016040528060268152602001610f83602691396001600160a01b0389166000908152600260205260409020549190610cb4565b6001600160a01b038088166000908152600260205260408082209390935590871681522054610c509082610ce0565b6001600160a01b0380871660008181526002602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ca49085815260200190565b60405180910390a3505050505050565b60008184841115610cd85760405162461bcd60e51b81526004016104979190610d67565b505050900390565b6000610cec8284610f23565b9392505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610cec8284610f36565b6000610cec8284610f4d565b6000610cec8284610f6f565b600060208083528351808285015260005b81811015610d9457858101830151858201604001528201610d78565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610dcc57600080fd5b919050565b60008060408385031215610de457600080fd5b610ded83610db5565b946020939093013593505050565b600080600060608486031215610e1057600080fd5b610e1984610db5565b9250610e2760208501610db5565b9150604084013590509250925092565b600060208284031215610e4957600080fd5b5035919050565b600060208284031215610e6257600080fd5b610cec82610db5565b60008060408385031215610e7e57600080fd5b610e8783610db5565b9150610e9560208401610db5565b90509250929050565b600181811c90821680610eb257607f821691505b602082108103610ed257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156103c8576103c8610f0d565b80820281158282048414176103c8576103c8610f0d565b600082610f6a57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103c8576103c8610f0d56fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2074617820616d6f756e7420657863656564732062616c616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200fecc2d872e0dbbb506664035821ee455297435c0f529f6eb077ded5116a5ee164736f6c63430008120033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c8063715018a6116100b8578063a457c2d71161007c578063a457c2d71461028d578063a9059cbb146102a0578063c6d69a30146102b3578063dd62ed3e146102c6578063ec28438a146102ff578063f2fde38b1461031257600080fd5b8063715018a61461025a5780638c0b5e22146102625780638da5cb5b1461026b57806395d89b411461027c57806399c8d5561461028457600080fd5b8063395093511161010a57806339509351146101c257806344df8e70146101d557806349ae028a146101de57806349bd5a5e146101f357806353d7e8211461021e57806370a082311461023157600080fd5b806306fdde0314610147578063095ea7b31461016557806318160ddd1461018857806323b872dd1461019a578063313ce567146101ad575b600080fd5b61014f610325565b60405161015c9190610d67565b60405180910390f35b610178610173366004610dd1565b6103b7565b604051901515815260200161015c565b600d545b60405190815260200161015c565b6101786101a8366004610dfb565b6103ce565b600c5460405160ff909116815260200161015c565b6101786101d0366004610dd1565b610437565b61018c60015481565b6101f16101ec366004610e37565b61046d565b005b600954610206906001600160a01b031681565b6040516001600160a01b03909116815260200161015c565b600754610206906001600160a01b031681565b61018c61023f366004610e50565b6001600160a01b031660009081526002602052604090205490565b6101f1610538565b61018c60055481565b6000546001600160a01b0316610206565b61014f61056e565b61018c60065481565b61017861029b366004610dd1565b61057d565b6101786102ae366004610dd1565b6105cc565b6101f16102c1366004610e37565b6105d9565b61018c6102d4366004610e6b565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6101f161030d366004610e37565b610686565b6101f1610320366004610e50565b610700565b6060600a805461033490610e9e565b80601f016020809104026020016040519081016040528092919081815260200182805461036090610e9e565b80156103ad5780601f10610382576101008083540402835291602001916103ad565b820191906000526020600020905b81548152906001019060200180831161039057829003601f168201915b5050505050905090565b60006103c433848461079b565b5060015b92915050565b60006103db8484846108bf565b61042d843361042885604051806060016040528060288152602001610fa9602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610cb4565b61079b565b5060019392505050565b3360008181526003602090815260408083206001600160a01b038716845290915281205490916103c49185906104289086610ce0565b6000546001600160a01b031633146104a05760405162461bcd60e51b815260040161049790610ed8565b60405180910390fd5b6127108111156104f25760405162461bcd60e51b815260206004820152601860248201527f4275726e20746f20746865205a65726f204164647265737300000000000000006044820152606401610497565b600180549082905560408051828152602081018490527f28d50d8e79f9b3e7e98b793ec2ce4c89095c23e2d7d5ac1511ffb345c684c7de91015b60405180910390a15050565b6000546001600160a01b031633146105625760405162461bcd60e51b815260040161049790610ed8565b61056c6000610cf3565b565b6060600b805461033490610e9e565b60006103c4338461042885604051806060016040528060258152602001610ff2602591393360009081526003602090815260408083206001600160a01b038d1684529091529020549190610cb4565b60006103c43384846108bf565b6000546001600160a01b031633146106035760405162461bcd60e51b815260040161049790610ed8565b6127108111156106485760405162461bcd60e51b815260206004820152601060248201526f496e76616c696420746178207261746560801b6044820152606401610497565b600680549082905560408051828152602081018490527f7927dc01e0e63778c47ab7e42d5af6555a774cc1707fc00433810f65d18e98c6910161052c565b6000546001600160a01b031633146106b05760405162461bcd60e51b815260040161049790610ed8565b6000546001600160a01b031633146106fb5760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606401610497565b600555565b6000546001600160a01b0316331461072a5760405162461bcd60e51b815260040161049790610ed8565b6001600160a01b03811661078f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610497565b61079881610cf3565b50565b6001600160a01b0383166107fd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610497565b6001600160a01b03821661085e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610497565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109235760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610497565b6001600160a01b0382166109855760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610497565b6009546000906001600160a01b0384811691161480156109be57506001600160a01b03841660009081526004602052604090205460ff16155b156109cc5750600154610a0c565b6009546001600160a01b038581169116148015610a0257506001600160a01b03831660009081526004602052604090205460ff16155b15610a0c57506006545b6000610a24612710610a1e8585610d43565b90610d4f565b90506000610a328483610d5b565b6001600160a01b03871660009081526004602052604090205490915060ff16610ab857600554811115610ab85760405162461bcd60e51b815260206004820152602860248201527f416d6f756e7420616674657220746178206578636565647320746865206d6178604482015267151e105b5bdd5b9d60c21b6064820152608401610497565b8115610be457610afb82604051806060016040528060218152602001610fd1602191396001600160a01b0389166000908152600260205260409020549190610cb4565b6001600160a01b038716600090815260026020526040812091909155737c702a2a0715cb8dfdc9c447bbf435583787a4bb90527faf4785bf08921748126450357115b6a68e2c63fe2b99c925487f4a5c2f56a09054610b5a9083610ce0565b737c702a2a0715cb8dfdc9c447bbf435583787a4bb600081905260026020527faf4785bf08921748126450357115b6a68e2c63fe2b99c925487f4a5c2f56a090919091556040516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bdb9086815260200190565b60405180910390a35b610c2181604051806060016040528060268152602001610f83602691396001600160a01b0389166000908152600260205260409020549190610cb4565b6001600160a01b038088166000908152600260205260408082209390935590871681522054610c509082610ce0565b6001600160a01b0380871660008181526002602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ca49085815260200190565b60405180910390a3505050505050565b60008184841115610cd85760405162461bcd60e51b81526004016104979190610d67565b505050900390565b6000610cec8284610f23565b9392505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610cec8284610f36565b6000610cec8284610f4d565b6000610cec8284610f6f565b600060208083528351808285015260005b81811015610d9457858101830151858201604001528201610d78565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610dcc57600080fd5b919050565b60008060408385031215610de457600080fd5b610ded83610db5565b946020939093013593505050565b600080600060608486031215610e1057600080fd5b610e1984610db5565b9250610e2760208501610db5565b9150604084013590509250925092565b600060208284031215610e4957600080fd5b5035919050565b600060208284031215610e6257600080fd5b610cec82610db5565b60008060408385031215610e7e57600080fd5b610e8783610db5565b9150610e9560208401610db5565b90509250929050565b600181811c90821680610eb257607f821691505b602082108103610ed257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156103c8576103c8610f0d565b80820281158282048414176103c8576103c8610f0d565b600082610f6a57634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103c8576103c8610f0d56fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2074617820616d6f756e7420657863656564732062616c616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200fecc2d872e0dbbb506664035821ee455297435c0f529f6eb077ded5116a5ee164736f6c63430008120033
Deployed Bytecode Sourcemap
5617:7035:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7150:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8240:210;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;8240:210:0;1004:187:1;7451:108:0;7539:12;;7451:108;;;1342:25:1;;;1330:2;1315:18;7451:108:0;1196:177:1;8458:452:0;;;;;;:::i;:::-;;:::i;7352:91::-;7426:9;;7352:91;;7426:9;;;;1853:36:1;;1841:2;1826:18;7352:91:0;1711:184:1;8918:300:0;;;;;;:::i;:::-;;:::i;5738:26::-;;;;;;11314:245;;;;;;:::i;:::-;;:::i;:::-;;6303:28;;;;;-1:-1:-1;;;;;6303:28:0;;;;;;-1:-1:-1;;;;;2249:32:1;;;2231:51;;2219:2;2204:18;6303:28:0;2085:203:1;6025:26:0;;;;;-1:-1:-1;;;;;6025:26:0;;;7567:177;;;;;;:::i;:::-;-1:-1:-1;;;;;7718:18:0;7686:7;7718:18;;;:9;:18;;;;;;;7567:177;2420:94;;;:::i;5956:26::-;;;;;;2112:87;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;2112:87;;7249:95;;;:::i;5989:22::-;;;;;;9226:400;;;;;;:::i;:::-;;:::i;7752:216::-;;;;;;:::i;:::-;;:::i;10914:225::-;;;;;;:::i;:::-;;:::i;8031:201::-;;;;;;:::i;:::-;-1:-1:-1;;;;;8197:18:0;;;8165:7;8197:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8031:201;11147:155;;;;;;:::i;:::-;;:::i;2522:192::-;;;;;;:::i;:::-;;:::i;7150:91::-;7195:13;7228:5;7221:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7150:91;:::o;8240:210::-;8359:4;8381:39;1573:10;8404:7;8413:6;8381:8;:39::i;:::-;-1:-1:-1;8438:4:0;8240:210;;;;;:::o;8458:452::-;8598:4;8615:36;8625:6;8633:9;8644:6;8615:9;:36::i;:::-;8662:220;8685:6;1573:10;8733:138;8789:6;8733:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8733:19:0;;;;;;:11;:19;;;;;;;;1573:10;8733:33;;;;;;;;;;:37;:138::i;:::-;8662:8;:220::i;:::-;-1:-1:-1;8900:4:0;8458:452;;;;;:::o;8918:300::-;1573:10;9033:4;9127:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;9127:34:0;;;;;;;;;;9033:4;;9055:133;;9105:7;;9127:50;;9166:10;9127:38;:50::i;11314:245::-;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;1573:10;2332:23;2324:68;;;;-1:-1:-1;;;2324:68:0;;;;;;;:::i;:::-;;;;;;;;;11415:5:::1;11402:9;:18;;11376:73;;;::::0;-1:-1:-1;;;11376:73:0;;3697:2:1;11376:73:0::1;::::0;::::1;3679:21:1::0;3736:2;3716:18;;;3709:30;3775:26;3755:18;;;3748:54;3819:18;;11376:73:0::1;3495:348:1::0;11376:73:0::1;11476:4;::::0;;11491:16;;;;11519:32:::1;::::0;;4022:25:1;;;4078:2;4063:18;;4056:34;;;11519:32:0::1;::::0;3995:18:1;11519:32:0::1;;;;;;;;11369:190;11314:245:::0;:::o;2420:94::-;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;1573:10;2332:23;2324:68;;;;-1:-1:-1;;;2324:68:0;;;;;;;:::i;:::-;2485:21:::1;2503:1;2485:9;:21::i;:::-;2420:94::o:0;7249:95::-;7296:13;7329:7;7322:14;;;;;:::i;9226:400::-;9346:4;9368:228;1573:10;9418:7;9440:145;9497:15;9440:145;;;;;;;;;;;;;;;;;1573:10;9440:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;9440:34:0;;;;;;;;;;;;:38;:145::i;7752:216::-;7874:4;7896:42;1573:10;7920:9;7931:6;7896:9;:42::i;10914:225::-;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;1573:10;2332:23;2324:68;;;;-1:-1:-1;;;2324:68:0;;;;;;;:::i;:::-;11012:5:::1;11001:7;:16;;10977:61;;;::::0;-1:-1:-1;;;10977:61:0;;4303:2:1;10977:61:0::1;::::0;::::1;4285:21:1::0;4342:2;4322:18;;;4315:30;-1:-1:-1;;;4361:18:1;;;4354:46;4417:18;;10977:61:0::1;4101:340:1::0;10977:61:0::1;11071:3;::::0;;11081:13;;;;11106:25:::1;::::0;;4022::1;;;4078:2;4063:18;;4056:34;;;11106:25:0::1;::::0;3995:18:1;11106:25:0::1;3848:248:1::0;11147:155:0;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;1573:10;2332:23;2324:68;;;;-1:-1:-1;;;2324:68:0;;;;;;;:::i;:::-;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;1573:10;11221:23:::1;11213:50;;;::::0;-1:-1:-1;;;11213:50:0;;4648:2:1;11213:50:0::1;::::0;::::1;4630:21:1::0;4687:2;4667:18;;;4660:30;-1:-1:-1;;;4706:18:1;;;4699:44;4760:18;;11213:50:0::1;4446:338:1::0;11213:50:0::1;11274:11;:20:::0;11147:155::o;2522:192::-;2158:7;2185:6;-1:-1:-1;;;;;2185:6:0;1573:10;2332:23;2324:68;;;;-1:-1:-1;;;2324:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2611:22:0;::::1;2603:73;;;::::0;-1:-1:-1;;;2603:73:0;;4991:2:1;2603:73:0::1;::::0;::::1;4973:21:1::0;5030:2;5010:18;;;5003:30;5069:34;5049:18;;;5042:62;-1:-1:-1;;;5120:18:1;;;5113:36;5166:19;;2603:73:0::1;4789:402:1::0;2603:73:0::1;2687:19;2697:8;2687:9;:19::i;:::-;2522:192:::0;:::o;12030:380::-;-1:-1:-1;;;;;12166:19:0;;12158:68;;;;-1:-1:-1;;;12158:68:0;;5398:2:1;12158:68:0;;;5380:21:1;5437:2;5417:18;;;5410:30;5476:34;5456:18;;;5449:62;-1:-1:-1;;;5527:18:1;;;5520:34;5571:19;;12158:68:0;5196:400:1;12158:68:0;-1:-1:-1;;;;;12245:21:0;;12237:68;;;;-1:-1:-1;;;12237:68:0;;5803:2:1;12237:68:0;;;5785:21:1;5842:2;5822:18;;;5815:30;5881:34;5861:18;;;5854:62;-1:-1:-1;;;5932:18:1;;;5925:32;5974:19;;12237:68:0;5601:398:1;12237:68:0;-1:-1:-1;;;;;12318:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;12370:32;;1342:25:1;;;12370:32:0;;1315:18:1;12370:32:0;;;;;;;12030:380;;;:::o;9633:1273::-;-1:-1:-1;;;;;9753:20:0;;9745:70;;;;-1:-1:-1;;;9745:70:0;;6206:2:1;9745:70:0;;;6188:21:1;6245:2;6225:18;;;6218:30;6284:34;6264:18;;;6257:62;-1:-1:-1;;;6335:18:1;;;6328:35;6380:19;;9745:70:0;6004:401:1;9745:70:0;-1:-1:-1;;;;;9830:23:0;;9822:71;;;;-1:-1:-1;;;9822:71:0;;6612:2:1;9822:71:0;;;6594:21:1;6651:2;6631:18;;;6624:30;6690:34;6670:18;;;6663:62;-1:-1:-1;;;6741:18:1;;;6734:33;6784:19;;9822:71:0;6410:399:1;9822:71:0;9944:13;;9901:15;;-1:-1:-1;;;;;9931:26:0;;;9944:13;;9931:26;:57;;;;-1:-1:-1;;;;;;9962:26:0;;;;;;:18;:26;;;;;;;;9961:27;9931:57;9927:197;;;-1:-1:-1;10011:4:0;;9927:197;;;10043:13;;-1:-1:-1;;;;;10033:23:0;;;10043:13;;10033:23;:57;;;;-1:-1:-1;;;;;;10061:29:0;;;;;;:18;:29;;;;;;;;10060:30;10033:57;10029:95;;;-1:-1:-1;10113:3:0;;10029:95;10130:17;10150:30;10174:5;10150:19;:6;10161:7;10150:10;:19::i;:::-;:23;;:30::i;:::-;10130:50;-1:-1:-1;10187:17:0;10207:21;:6;10130:50;10207:10;:21::i;:::-;-1:-1:-1;;;;;10240:26:0;;;;;;:18;:26;;;;;;10187:41;;-1:-1:-1;10240:26:0;;10235:129;;10300:11;;10287:9;:24;;10279:77;;;;-1:-1:-1;;;10279:77:0;;7016:2:1;10279:77:0;;;6998:21:1;7055:2;7035:18;;;7028:30;7094:34;7074:18;;;7067:62;-1:-1:-1;;;7145:18:1;;;7138:38;7193:19;;10279:77:0;6814:404:1;10279:77:0;10435:13;;10431:250;;10481:69;10503:9;10481:69;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10481:17:0;;;;;;:9;:17;;;;;;;:69;:21;:69::i;:::-;-1:-1:-1;;;;;10461:17:0;;;;;;:9;:17;;;;;:89;;;;6087:42;10584:20;;;;:35;;10609:9;10584:24;:35::i;:::-;6087:42;10561:20;;;;:9;:20;;;:58;;;;:20;10635:38;-1:-1:-1;;;;;10635:38:0;;;;;;;10663:9;1342:25:1;;1330:2;1315:18;;1196:177;10635:38:0;;;;;;;;10431:250;10709:74;10731:9;10709:74;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10709:17:0;;;;;;:9;:17;;;;;;;:74;:21;:74::i;:::-;-1:-1:-1;;;;;10689:17:0;;;;;;;:9;:17;;;;;;:94;;;;10813:20;;;;;;;:35;;10838:9;10813:24;:35::i;:::-;-1:-1:-1;;;;;10790:20:0;;;;;;;:9;:20;;;;;;;:58;;;;10860:38;;;;;;;;;;10888:9;1342:25:1;;1330:2;1315:18;;1196:177;10860:38:0;;;;;;;;9738:1168;;;9633:1273;;;:::o;4811:240::-;4931:7;4992:12;4984:6;;;;4976:29;;;;-1:-1:-1;;;4976:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;5027:5:0;;;4811:240::o;4281:98::-;4339:7;4366:5;4370:1;4366;:5;:::i;:::-;4359:12;4281:98;-1:-1:-1;;;4281:98:0:o;2722:173::-;2778:16;2797:6;;-1:-1:-1;;;;;2814:17:0;;;-1:-1:-1;;;;;;2814:17:0;;;;;;2847:40;;2797:6;;;;;;;2847:40;;2778:16;2847:40;2767:128;2722:173;:::o;4493:98::-;4551:7;4578:5;4582:1;4578;:5;:::i;4599:98::-;4657:7;4684:5;4688:1;4684;:5;:::i;4387:98::-;4445:7;4472:5;4476:1;4472;:5;:::i;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;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1900:180::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;-1:-1:-1;2051:23:1;;1900:180;-1:-1:-1;1900:180:1:o;2293:186::-;2352:6;2405:2;2393:9;2384:7;2380:23;2376:32;2373:52;;;2421:1;2418;2411:12;2373:52;2444:29;2463:9;2444:29;:::i;2484:260::-;2552:6;2560;2613:2;2601:9;2592:7;2588:23;2584:32;2581:52;;;2629:1;2626;2619:12;2581:52;2652:29;2671:9;2652:29;:::i;:::-;2642:39;;2700:38;2734:2;2723:9;2719:18;2700:38;:::i;:::-;2690:48;;2484:260;;;;;:::o;2749:380::-;2828:1;2824:12;;;;2871;;;2892:61;;2946:4;2938:6;2934:17;2924:27;;2892:61;2999:2;2991:6;2988:14;2968:18;2965:38;2962:161;;3045:10;3040:3;3036:20;3033:1;3026:31;3080:4;3077:1;3070:15;3108:4;3105:1;3098:15;2962:161;;2749:380;;;:::o;3134:356::-;3336:2;3318:21;;;3355:18;;;3348:30;3414:34;3409:2;3394:18;;3387:62;3481:2;3466:18;;3134:356::o;7223:127::-;7284:10;7279:3;7275:20;7272:1;7265:31;7315:4;7312:1;7305:15;7339:4;7336:1;7329:15;7355:125;7420:9;;;7441:10;;;7438:36;;;7454:18;;:::i;7485:168::-;7558:9;;;7589;;7606:15;;;7600:22;;7586:37;7576:71;;7627:18;;:::i;7658:217::-;7698:1;7724;7714:132;;7768:10;7763:3;7759:20;7756:1;7749:31;7803:4;7800:1;7793:15;7831:4;7828:1;7821:15;7714:132;-1:-1:-1;7860:9:1;;7658:217::o;7880:128::-;7947:9;;;7968:11;;;7965:37;;;7982:18;;:::i
Swarm Source
ipfs://0fecc2d872e0dbbb506664035821ee455297435c0f529f6eb077ded5116a5ee1
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.