ETH Price: $2,394.64 (-3.70%)

Token

HarryPotterObamaKnuckles9Inu (ETHEREUM)
 

Overview

Max Total Supply

1,000,000,000 ETHEREUM

Holders

85

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
543,569.69097882 ETHEREUM

Value
$0.00
0xe367666be314f541ed1c9a21817115fae2c7ea2d
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:
ETHEREUM

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-11-19
*/

// SPDX-License-Identifier: MIT

/*
Telegram: https://hpok9inu.com 

Twitter: https://twitter.com/hpok_erc 

Website: https://hpokinu.com 
*/

pragma solidity 0.8.21;

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(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 transferFrom(address sender, address recipient, 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 IUniswapFactory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

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

interface IUniswapRouter {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract Ownable is Context {
    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 ETHEREUM is Context, IERC20, Ownable {
    using SafeMath for uint256;
    
    string private constant _name= "HarryPotterObamaKnuckles9Inu";
    string private constant _symbol= "ETHEREUM";

    uint8 private constant _decimals= 9;
    uint256 private constant _totalSupply = 10 ** 9 * 10**_decimals;

    uint256 private _firstBuyFee=12;
    uint256 private _firstSellFee=28;
    uint256 private _lastBuyFee=1;
    uint256 private _lastSellFee=1;
    uint256 private _decreaseBuyFeeAfter=16;
    uint256 private _decreaseSellFeeAfter=26;
    uint256 private _preventSwapBefore=15;
    uint256 private _buyersCount=0;

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

    IUniswapRouter private _router;
    address private _pair;
    bool private _tradeStarted;
    bool private swapping= false;
    bool private _swapEnabled= false;

    uint256 public maxTxAmount = 20 * 10 ** 6 * 10**_decimals;
    uint256 public maxWalletSize = 20 * 10 ** 6 * 10**_decimals;
    uint256 public swapThreshold = 10 ** 5 * 10**_decimals;
    uint256 public swapLimit = 10 ** 7 * 10**_decimals;
    address payable private _feeAddress;

    event MaxTxAmountUpdated(uint maxTxAmount);
    modifier lockTheSwap {
        swapping = true;
        _;
        swapping = false;
    }

    constructor () {
        _feeAddress = payable(0x38Ed1C2f88d6A6BA2ebf45256B01327F4D698776);
        _balances[address(this)] = _totalSupply;
        _isExcluded[owner()] = true;
        _isExcluded[_feeAddress] = true;

        emit Transfer(address(0), address(this), _totalSupply);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

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

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    
    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }
    
    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    
    function openTrading() external onlyOwner() {
        require(!_tradeStarted, "Trading is already open");
        _router = IUniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(_router), _totalSupply);
        _pair = IUniswapFactory(_router.factory()).createPair(address(this), _router.WETH());
        _router.addLiquidityETH{value: address(this).balance}(address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp);
        IERC20(_pair).approve(address(_router), type(uint).max);
        _swapEnabled = true;
        _tradeStarted = true;
    }
    
    receive() external payable {}
    
    function min(uint256 a, uint256 b) private pure returns (uint256) {
      return (a > b) ? b : a;
    }
    
    function sendETHToFee(uint256 amount) private {
        _feeAddress.transfer(amount);
    }

    function removeLimits() external onlyOwner {
        maxWalletSize = maxTxAmount = _totalSupply;
        emit MaxTxAmountUpdated(_totalSupply);
    }
    
    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _router.WETH();
        _approve(address(this), address(_router), tokenAmount);
        _router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
        
    function _approve(address owner, address spender, uint256 amount) private {
        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 balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }
    
    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 feeAmount = 0;
        if (from != owner() && to != owner() && !_isExcluded[from]) {
            feeAmount = amount.mul((_buyersCount > _decreaseBuyFeeAfter) ? _lastBuyFee  :_firstBuyFee).div(100);

            if (from == _pair && to != address(_router) && !_isExcluded[to]) {
                require(amount <= maxTxAmount, "Exceeds the maxTxAmount.");
                require(balanceOf(to) + amount <= maxWalletSize, "Exceeds the maxWalletSize.");
                _buyersCount++;
            }

            if (to == _pair && from != address(this)) {
                feeAmount = amount.mul((_buyersCount>_decreaseSellFeeAfter) ? _lastSellFee : _firstSellFee).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!swapping && to == _pair && _swapEnabled && contractTokenBalance > swapThreshold && _buyersCount > _preventSwapBefore && amount > swapThreshold) {
                swapTokensForEth(min(amount, min(contractTokenBalance, swapLimit)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if (feeAmount > 0) {
          _balances[address(this)] = _balances[address(this)].add(feeAmount);
          _balances[from] = _balances[from].sub(amount);
          emit Transfer(from, address(this), feeAmount);
        }
        _balances[to] = _balances[to].add(amount.sub(feeAmount));
        emit Transfer(from, to, amount.sub(feeAmount));
    }
    
    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
}

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":false,"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]

6080604052600c6001908155601c60025560038190556004556010600555601a600655600f6007555f600855600d805461ffff60a81b19169055620000476009600a62000304565b62000057906301312d006200031b565b600e55620000686009600a62000304565b62000078906301312d006200031b565b600f55620000896009600a62000304565b6200009890620186a06200031b565b601055620000a96009600a62000304565b620000b890629896806200031b565b601155348015620000c7575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601280546001600160a01b0319167338ed1c2f88d6a6ba2ebf45256b01327f4d6987761790556200013c6009600a62000304565b6200014c90633b9aca006200031b565b305f8181526009602081815260408084209590955582546001600160a01b039081168452600b9091528483208054600160ff1991821681179092556012549092168452948320805490911690941790935590917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90620001ce90600a62000304565b620001de90633b9aca006200031b565b60405190815260200160405180910390a362000335565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200024957815f19048211156200022d576200022d620001f5565b808516156200023b57918102915b93841c93908002906200020e565b509250929050565b5f826200026157506001620002fe565b816200026f57505f620002fe565b81600181146200028857600281146200029357620002b3565b6001915050620002fe565b60ff841115620002a757620002a7620001f5565b50506001821b620002fe565b5060208310610133831016604e8410600b8410161715620002d8575081810a620002fe565b620002e4838362000209565b805f1904821115620002fa57620002fa620001f5565b0290505b92915050565b5f6200031460ff84168362000251565b9392505050565b8082028115828204841417620002fe57620002fe620001f5565b61168480620003435f395ff3fe6080604052600436106100fd575f3560e01c8063715018a6116100925780638f3fa860116100625780638f3fa860146102a957806395d89b41146102be578063a9059cbb146102ee578063c9567bf91461030d578063dd62ed3e14610321575f80fd5b8063715018a614610244578063751039fc1461025a5780638c0b5e221461026e5780638da5cb5b14610283575f80fd5b806323b872dd116100cd57806323b872dd146101c1578063313ce567146101e05780636a01f09c146101fb57806370a0823114610210575f80fd5b80630445b6671461010857806306fdde0314610130578063095ea7b31461017e57806318160ddd146101ad575f80fd5b3661010457005b5f80fd5b348015610113575f80fd5b5061011d60105481565b6040519081526020015b60405180910390f35b34801561013b575f80fd5b5060408051808201909152601c81527f4861727279506f747465724f62616d614b6e75636b6c657339496e750000000060208201525b6040516101279190611277565b348015610189575f80fd5b5061019d6101983660046112d9565b610365565b6040519015158152602001610127565b3480156101b8575f80fd5b5061011d61037b565b3480156101cc575f80fd5b5061019d6101db366004611303565b61039b565b3480156101eb575f80fd5b5060405160098152602001610127565b348015610206575f80fd5b5061011d60115481565b34801561021b575f80fd5b5061011d61022a366004611341565b6001600160a01b03165f9081526009602052604090205490565b34801561024f575f80fd5b50610258610402565b005b348015610265575f80fd5b5061025861047c565b348015610279575f80fd5b5061011d600e5481565b34801561028e575f80fd5b505f546040516001600160a01b039091168152602001610127565b3480156102b4575f80fd5b5061011d600f5481565b3480156102c9575f80fd5b50604080518082019091526008815267455448455245554d60c01b6020820152610171565b3480156102f9575f80fd5b5061019d6103083660046112d9565b610515565b348015610318575f80fd5b50610258610521565b34801561032c575f80fd5b5061011d61033b36600461135c565b6001600160a01b039182165f908152600a6020908152604080832093909416825291909152205490565b5f6103713384846108ca565b5060015b92915050565b5f6103886009600a611487565b61039690633b9aca00611495565b905090565b5f6103a78484846109ed565b6103f884336103f385604051806060016040528060288152602001611627602891396001600160a01b038a165f908152600a602090815260408083203384529091529020549190610eef565b6108ca565b5060019392505050565b5f546001600160a01b031633146104345760405162461bcd60e51b815260040161042b906114ac565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104a55760405162461bcd60e51b815260040161042b906114ac565b6104b16009600a611487565b6104bf90633b9aca00611495565b600e819055600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6104f46009600a611487565b61050290633b9aca00611495565b60405190815260200160405180910390a1565b5f6103713384846109ed565b5f546001600160a01b0316331461054a5760405162461bcd60e51b815260040161042b906114ac565b600d54600160a01b900460ff16156105a45760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161042b565b600c80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105ed9030906105df6009600a611487565b6103f390633b9aca00611495565b600c5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561063d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061066191906114e1565b6001600160a01b031663c9c6539630600c5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e491906114e1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561072e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075291906114e1565b600d80546001600160a01b039283166001600160a01b0319909116179055600c541663f305d7194730610799816001600160a01b03165f9081526009602052604090205490565b5f806107ac5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610812573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061083791906114fc565b5050600d54600c5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561088c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b09190611527565b50600d805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b03831661092c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042b565b6001600160a01b03821661098d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042b565b6001600160a01b038381165f818152600a602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a515760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161042b565b6001600160a01b038216610ab35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042b565b5f8111610b145760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161042b565b5f80546001600160a01b03858116911614801590610b3f57505f546001600160a01b03848116911614155b8015610b6357506001600160a01b0384165f908152600b602052604090205460ff16155b15610dc957610b946064610b8e60055460085411610b8357600154610b87565b6003545b8590610f27565b90610fac565b600d549091506001600160a01b038581169116148015610bc25750600c546001600160a01b03848116911614155b8015610be657506001600160a01b0383165f908152600b602052604090205460ff16155b15610ccc57600e54821115610c3d5760405162461bcd60e51b815260206004820152601860248201527f4578636565647320746865206d61785478416d6f756e742e0000000000000000604482015260640161042b565b600f5482610c5f856001600160a01b03165f9081526009602052604090205490565b610c699190611546565b1115610cb75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161042b565b60088054905f610cc683611559565b91905055505b600d546001600160a01b038481169116148015610cf257506001600160a01b0384163014155b15610d1f57610d1c6064610b8e60065460085411610d1257600254610b87565b6004548590610f27565b90505b305f90815260096020526040902054600d54600160a81b900460ff16158015610d555750600d546001600160a01b038581169116145b8015610d6a5750600d54600160b01b900460ff165b8015610d77575060105481115b8015610d865750600754600854115b8015610d93575060105483115b15610dc757610db5610db084610dab84601154610fed565b610fed565b611001565b478015610dc557610dc547611171565b505b505b8015610e6457305f90815260096020526040902054610de890826111ac565b305f90815260096020526040808220929092556001600160a01b03861681522054610e13908361120a565b6001600160a01b0385165f81815260096020908152604091829020939093555183815230927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b610e8f610e71838361120a565b6001600160a01b0385165f90815260096020526040902054906111ac565b6001600160a01b038085165f8181526009602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610ed8858561120a565b60405190815260200160405180910390a350505050565b5f8184841115610f125760405162461bcd60e51b815260040161042b9190611277565b505f610f1e8486611571565b95945050505050565b5f825f03610f3657505f610375565b5f610f418385611495565b905082610f4e8583611584565b14610fa55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161042b565b9392505050565b5f610fa583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061124b565b5f818311610ffb5782610fa5565b50919050565b600d805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611047576110476115a3565b6001600160a01b03928316602091820292909201810191909152600c54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561109e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c291906114e1565b816001815181106110d5576110d56115a3565b6001600160a01b039283166020918202929092010152600c546110fb91309116846108ca565b600c5460405163791ac94760e01b81526001600160a01b039091169063791ac947906111339085905f908690309042906004016115b7565b5f604051808303815f87803b15801561114a575f80fd5b505af115801561115c573d5f803e3d5ffd5b5050600d805460ff60a81b1916905550505050565b6012546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156111a8573d5f803e3d5ffd5b5050565b5f806111b88385611546565b905083811015610fa55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161042b565b5f610fa583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610eef565b5f818361126b5760405162461bcd60e51b815260040161042b9190611277565b505f610f1e8486611584565b5f6020808352835180828501525f5b818110156112a257858101830151858201604001528201611286565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146112d6575f80fd5b50565b5f80604083850312156112ea575f80fd5b82356112f5816112c2565b946020939093013593505050565b5f805f60608486031215611315575f80fd5b8335611320816112c2565b92506020840135611330816112c2565b929592945050506040919091013590565b5f60208284031215611351575f80fd5b8135610fa5816112c2565b5f806040838503121561136d575f80fd5b8235611378816112c2565b91506020830135611388816112c2565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156113e157815f19048211156113c7576113c7611393565b808516156113d457918102915b93841c93908002906113ac565b509250929050565b5f826113f757506001610375565b8161140357505f610375565b816001811461141957600281146114235761143f565b6001915050610375565b60ff84111561143457611434611393565b50506001821b610375565b5060208310610133831016604e8410600b8410161715611462575081810a610375565b61146c83836113a7565b805f190482111561147f5761147f611393565b029392505050565b5f610fa560ff8416836113e9565b808202811582820484141761037557610375611393565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156114f1575f80fd5b8151610fa5816112c2565b5f805f6060848603121561150e575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611537575f80fd5b81518015158114610fa5575f80fd5b8082018082111561037557610375611393565b5f6001820161156a5761156a611393565b5060010190565b8181038181111561037557610375611393565b5f8261159e57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156116055784516001600160a01b0316835293830193918301916001016115e0565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220aa657e4f1c60d793ef50c330271ca24320c4e687d082fa1985b5d5fb130b194964736f6c63430008150033

Deployed Bytecode

0x6080604052600436106100fd575f3560e01c8063715018a6116100925780638f3fa860116100625780638f3fa860146102a957806395d89b41146102be578063a9059cbb146102ee578063c9567bf91461030d578063dd62ed3e14610321575f80fd5b8063715018a614610244578063751039fc1461025a5780638c0b5e221461026e5780638da5cb5b14610283575f80fd5b806323b872dd116100cd57806323b872dd146101c1578063313ce567146101e05780636a01f09c146101fb57806370a0823114610210575f80fd5b80630445b6671461010857806306fdde0314610130578063095ea7b31461017e57806318160ddd146101ad575f80fd5b3661010457005b5f80fd5b348015610113575f80fd5b5061011d60105481565b6040519081526020015b60405180910390f35b34801561013b575f80fd5b5060408051808201909152601c81527f4861727279506f747465724f62616d614b6e75636b6c657339496e750000000060208201525b6040516101279190611277565b348015610189575f80fd5b5061019d6101983660046112d9565b610365565b6040519015158152602001610127565b3480156101b8575f80fd5b5061011d61037b565b3480156101cc575f80fd5b5061019d6101db366004611303565b61039b565b3480156101eb575f80fd5b5060405160098152602001610127565b348015610206575f80fd5b5061011d60115481565b34801561021b575f80fd5b5061011d61022a366004611341565b6001600160a01b03165f9081526009602052604090205490565b34801561024f575f80fd5b50610258610402565b005b348015610265575f80fd5b5061025861047c565b348015610279575f80fd5b5061011d600e5481565b34801561028e575f80fd5b505f546040516001600160a01b039091168152602001610127565b3480156102b4575f80fd5b5061011d600f5481565b3480156102c9575f80fd5b50604080518082019091526008815267455448455245554d60c01b6020820152610171565b3480156102f9575f80fd5b5061019d6103083660046112d9565b610515565b348015610318575f80fd5b50610258610521565b34801561032c575f80fd5b5061011d61033b36600461135c565b6001600160a01b039182165f908152600a6020908152604080832093909416825291909152205490565b5f6103713384846108ca565b5060015b92915050565b5f6103886009600a611487565b61039690633b9aca00611495565b905090565b5f6103a78484846109ed565b6103f884336103f385604051806060016040528060288152602001611627602891396001600160a01b038a165f908152600a602090815260408083203384529091529020549190610eef565b6108ca565b5060019392505050565b5f546001600160a01b031633146104345760405162461bcd60e51b815260040161042b906114ac565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146104a55760405162461bcd60e51b815260040161042b906114ac565b6104b16009600a611487565b6104bf90633b9aca00611495565b600e819055600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6104f46009600a611487565b61050290633b9aca00611495565b60405190815260200160405180910390a1565b5f6103713384846109ed565b5f546001600160a01b0316331461054a5760405162461bcd60e51b815260040161042b906114ac565b600d54600160a01b900460ff16156105a45760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161042b565b600c80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556105ed9030906105df6009600a611487565b6103f390633b9aca00611495565b600c5f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561063d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061066191906114e1565b6001600160a01b031663c9c6539630600c5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e491906114e1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561072e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075291906114e1565b600d80546001600160a01b039283166001600160a01b0319909116179055600c541663f305d7194730610799816001600160a01b03165f9081526009602052604090205490565b5f806107ac5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610812573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061083791906114fc565b5050600d54600c5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561088c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b09190611527565b50600d805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b03831661092c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042b565b6001600160a01b03821661098d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042b565b6001600160a01b038381165f818152600a602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a515760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161042b565b6001600160a01b038216610ab35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042b565b5f8111610b145760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161042b565b5f80546001600160a01b03858116911614801590610b3f57505f546001600160a01b03848116911614155b8015610b6357506001600160a01b0384165f908152600b602052604090205460ff16155b15610dc957610b946064610b8e60055460085411610b8357600154610b87565b6003545b8590610f27565b90610fac565b600d549091506001600160a01b038581169116148015610bc25750600c546001600160a01b03848116911614155b8015610be657506001600160a01b0383165f908152600b602052604090205460ff16155b15610ccc57600e54821115610c3d5760405162461bcd60e51b815260206004820152601860248201527f4578636565647320746865206d61785478416d6f756e742e0000000000000000604482015260640161042b565b600f5482610c5f856001600160a01b03165f9081526009602052604090205490565b610c699190611546565b1115610cb75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161042b565b60088054905f610cc683611559565b91905055505b600d546001600160a01b038481169116148015610cf257506001600160a01b0384163014155b15610d1f57610d1c6064610b8e60065460085411610d1257600254610b87565b6004548590610f27565b90505b305f90815260096020526040902054600d54600160a81b900460ff16158015610d555750600d546001600160a01b038581169116145b8015610d6a5750600d54600160b01b900460ff165b8015610d77575060105481115b8015610d865750600754600854115b8015610d93575060105483115b15610dc757610db5610db084610dab84601154610fed565b610fed565b611001565b478015610dc557610dc547611171565b505b505b8015610e6457305f90815260096020526040902054610de890826111ac565b305f90815260096020526040808220929092556001600160a01b03861681522054610e13908361120a565b6001600160a01b0385165f81815260096020908152604091829020939093555183815230927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b610e8f610e71838361120a565b6001600160a01b0385165f90815260096020526040902054906111ac565b6001600160a01b038085165f8181526009602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610ed8858561120a565b60405190815260200160405180910390a350505050565b5f8184841115610f125760405162461bcd60e51b815260040161042b9190611277565b505f610f1e8486611571565b95945050505050565b5f825f03610f3657505f610375565b5f610f418385611495565b905082610f4e8583611584565b14610fa55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161042b565b9392505050565b5f610fa583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061124b565b5f818311610ffb5782610fa5565b50919050565b600d805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611047576110476115a3565b6001600160a01b03928316602091820292909201810191909152600c54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561109e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c291906114e1565b816001815181106110d5576110d56115a3565b6001600160a01b039283166020918202929092010152600c546110fb91309116846108ca565b600c5460405163791ac94760e01b81526001600160a01b039091169063791ac947906111339085905f908690309042906004016115b7565b5f604051808303815f87803b15801561114a575f80fd5b505af115801561115c573d5f803e3d5ffd5b5050600d805460ff60a81b1916905550505050565b6012546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156111a8573d5f803e3d5ffd5b5050565b5f806111b88385611546565b905083811015610fa55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161042b565b5f610fa583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610eef565b5f818361126b5760405162461bcd60e51b815260040161042b9190611277565b505f610f1e8486611584565b5f6020808352835180828501525f5b818110156112a257858101830151858201604001528201611286565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146112d6575f80fd5b50565b5f80604083850312156112ea575f80fd5b82356112f5816112c2565b946020939093013593505050565b5f805f60608486031215611315575f80fd5b8335611320816112c2565b92506020840135611330816112c2565b929592945050506040919091013590565b5f60208284031215611351575f80fd5b8135610fa5816112c2565b5f806040838503121561136d575f80fd5b8235611378816112c2565b91506020830135611388816112c2565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156113e157815f19048211156113c7576113c7611393565b808516156113d457918102915b93841c93908002906113ac565b509250929050565b5f826113f757506001610375565b8161140357505f610375565b816001811461141957600281146114235761143f565b6001915050610375565b60ff84111561143457611434611393565b50506001821b610375565b5060208310610133831016604e8410600b8410161715611462575081810a610375565b61146c83836113a7565b805f190482111561147f5761147f611393565b029392505050565b5f610fa560ff8416836113e9565b808202811582820484141761037557610375611393565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156114f1575f80fd5b8151610fa5816112c2565b5f805f6060848603121561150e575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611537575f80fd5b81518015158114610fa5575f80fd5b8082018082111561037557610375611393565b5f6001820161156a5761156a611393565b5060010190565b8181038181111561037557610375611393565b5f8261159e57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156116055784516001600160a01b0316835293830193918301916001016115e0565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220aa657e4f1c60d793ef50c330271ca24320c4e687d082fa1985b5d5fb130b194964736f6c63430008150033

Deployed Bytecode Sourcemap

3583:6899:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4722:54;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;4722:54:0;;;;;;;;5339:83;;;;;;;;;;-1:-1:-1;5409:5:0;;;;;;;;;;;;;;;;;5339:83;;;;;;;:::i;5724:161::-;;;;;;;;;;-1:-1:-1;5724:161:0;;;;;:::i;:::-;;:::i;:::-;;;1370:14:1;;1363:22;1345:41;;1333:2;1318:18;5724:161:0;1205:187:1;5616:100:0;;;;;;;;;;;;;:::i;6052:313::-;;;;;;;;;;-1:-1:-1;6052:313:0;;;;;:::i;:::-;;:::i;5525:83::-;;;;;;;;;;-1:-1:-1;5525:83:0;;3829:1;2000:36:1;;1988:2;1973:18;5525:83:0;1858:184:1;4783:50:0;;;;;;;;;;;;;;;;8247:119;;;;;;;;;;-1:-1:-1;8247:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;8340:18:0;8313:7;8340:18;;;:9;:18;;;;;;;8247:119;3426:148;;;;;;;;;;;;;:::i;:::-;;7265:152;;;;;;;;;;;;;:::i;4592:57::-;;;;;;;;;;;;;;;;3212:79;;;;;;;;;;-1:-1:-1;3250:7:0;3277:6;3212:79;;-1:-1:-1;;;;;3277:6:0;;;2445:51:1;;2433:2;2418:18;3212:79:0;2299:203:1;4656:59:0;;;;;;;;;;;;;;;;5430:87;;;;;;;;;;-1:-1:-1;5502:7:0;;;;;;;;;;;;-1:-1:-1;;;5502:7:0;;;;5430:87;;10312:167;;;;;;;;;;-1:-1:-1;10312:167:0;;;;;:::i;:::-;;:::i;6377:617::-;;;;;;;;;;;;;:::i;5897:143::-;;;;;;;;;;-1:-1:-1;5897:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6005:18:0;;;5978:7;6005:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5897:143;5724:161;5799:4;5816:39;2237:10;5839:7;5848:6;5816:8;:39::i;:::-;-1:-1:-1;5873:4:0;5724:161;;;;;:::o;5616:100::-;5669:7;3887:13;3829:1;3887:2;:13;:::i;:::-;3877:23;;:7;:23;:::i;:::-;5689:19;;5616:100;:::o;6052:313::-;6150:4;6167:36;6177:6;6185:9;6196:6;6167:9;:36::i;:::-;6214:121;6223:6;2237:10;6245:89;6283:6;6245:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6245:19:0;;;;;;:11;:19;;;;;;;;2237:10;6245:33;;;;;;;;;;:37;:89::i;:::-;6214:8;:121::i;:::-;-1:-1:-1;6353:4:0;6052:313;;;;;:::o;3426:148::-;3339:6;;-1:-1:-1;;;;;3339:6:0;2237:10;3339:22;3331:67;;;;-1:-1:-1;;;3331:67:0;;;;;;;:::i;:::-;;;;;;;;;3533:1:::1;3517:6:::0;;3496:40:::1;::::0;-1:-1:-1;;;;;3517:6:0;;::::1;::::0;3496:40:::1;::::0;3533:1;;3496:40:::1;3564:1;3547:19:::0;;-1:-1:-1;;;;;;3547:19:0::1;::::0;;3426:148::o;7265:152::-;3339:6;;-1:-1:-1;;;;;3339:6:0;2237:10;3339:22;3331:67;;;;-1:-1:-1;;;3331:67:0;;;;;;;:::i;:::-;3887:13:::1;3829:1;3887:2;:13;:::i;:::-;3877:23;::::0;:7:::1;:23;:::i;:::-;7335:11;:26:::0;;;7319:13:::1;:42:::0;7377:32:::1;3887:13;3829:1;3887:2;:13;:::i;:::-;3877:23;::::0;:7:::1;:23;:::i;:::-;7377:32;::::0;160:25:1;;;148:2;133:18;7377:32:0::1;;;;;;;7265:152::o:0;10312:167::-;10390:4;10407:42;2237:10;10431:9;10442:6;10407:9;:42::i;6377:617::-;3339:6;;-1:-1:-1;;;;;3339:6:0;2237:10;3339:22;3331:67;;;;-1:-1:-1;;;3331:67:0;;;;;;;:::i;:::-;6441:13:::1;::::0;-1:-1:-1;;;6441:13:0;::::1;;;6440:14;6432:50;;;::::0;-1:-1:-1;;;6432:50:0;;5151:2:1;6432:50:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;5229:25;5209:18;;;5202:53;5272:18;;6432:50:0::1;4949:347:1::0;6432:50:0::1;6493:7;:68:::0;;-1:-1:-1;;;;;;6493:68:0::1;6518:42;6493:68:::0;;::::1;::::0;;;6572:55:::1;::::0;6589:4:::1;::::0;3887:13:::1;3829:1;3887:2;:13;:::i;:::-;3877:23;::::0;:7:::1;:23;:::i;6572:55::-;6662:7;;;;;;;;;-1:-1:-1::0;;;;;6662:7:0::1;-1:-1:-1::0;;;;;6662:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6646:45:0::1;;6700:4;6707:7;;;;;;;;;-1:-1:-1::0;;;;;6707:7:0::1;-1:-1:-1::0;;;;;6707:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6646:76;::::0;-1:-1:-1;;;;;;6646:76:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;6646:76:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;6646:76:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6638:5;:84:::0;;-1:-1:-1;;;;;6638:84:0;;::::1;-1:-1:-1::0;;;;;;6638:84:0;;::::1;;::::0;;6733:7:::1;::::0;::::1;:23;6764:21;6795:4;6802:24;6795:4:::0;-1:-1:-1;;;;;8340:18:0;8313:7;8340:18;;;:9;:18;;;;;;;8247:119;6802:24:::1;6828:1;6831::::0;6834:7:::1;3250::::0;3277:6;-1:-1:-1;;;;;3277:6:0;;3212:79;6834:7:::1;6733:126;::::0;::::1;::::0;;;-1:-1:-1;;;;;;6733:126:0;;;-1:-1:-1;;;;;6225:15:1;;;6733:126:0::1;::::0;::::1;6207:34:1::0;6257:18;;;6250:34;;;;6300:18;;;6293:34;;;;6343:18;;;6336:34;6407:15;;;6386:19;;;6379:44;6843:15:0::1;6439:19:1::0;;;6432:35;6141:19;;6733:126:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6877:5:0::1;::::0;6900:7:::1;::::0;6870:55:::1;::::0;-1:-1:-1;;;6870:55:0;;-1:-1:-1;;;;;6900:7:0;;::::1;6870:55;::::0;::::1;6963:51:1::0;-1:-1:-1;;7030:18:1;;;7023:34;6877:5:0;::::1;::::0;-1:-1:-1;6870:21:0::1;::::0;6936:18:1;;6870:55:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;6936:12:0::1;:19:::0;;-1:-1:-1;;;;6966:20:0;-1:-1:-1;;;6966:20:0;;;6377:617::o;7904:335::-;-1:-1:-1;;;;;7997:19:0;;7989:68;;;;-1:-1:-1;;;7989:68:0;;7552:2:1;7989:68:0;;;7534:21:1;7591:2;7571:18;;;7564:30;7630:34;7610:18;;;7603:62;-1:-1:-1;;;7681:18:1;;;7674:34;7725:19;;7989:68:0;7350:400:1;7989:68:0;-1:-1:-1;;;;;8076:21:0;;8068:68;;;;-1:-1:-1;;;8068:68:0;;7957:2:1;8068:68:0;;;7939:21:1;7996:2;7976:18;;;7969:30;8035:34;8015:18;;;8008:62;-1:-1:-1;;;8086:18:1;;;8079:32;8128:19;;8068:68:0;7755:398:1;8068:68:0;-1:-1:-1;;;;;8147:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8199:32;;160:25:1;;;8199:32:0;;133:18:1;8199:32:0;;;;;;;7904:335;;;:::o;8378:1922::-;-1:-1:-1;;;;;8466:18:0;;8458:68;;;;-1:-1:-1;;;8458:68:0;;8360:2:1;8458:68:0;;;8342:21:1;8399:2;8379:18;;;8372:30;8438:34;8418:18;;;8411:62;-1:-1:-1;;;8489:18:1;;;8482:35;8534:19;;8458:68:0;8158:401:1;8458:68:0;-1:-1:-1;;;;;8545:16:0;;8537:64;;;;-1:-1:-1;;;8537:64:0;;8766:2:1;8537:64:0;;;8748:21:1;8805:2;8785:18;;;8778:30;8844:34;8824:18;;;8817:62;-1:-1:-1;;;8895:18:1;;;8888:33;8938:19;;8537:64:0;8564:399:1;8537:64:0;8629:1;8620:6;:10;8612:64;;;;-1:-1:-1;;;8612:64:0;;9170:2:1;8612:64:0;;;9152:21:1;9209:2;9189:18;;;9182:30;9248:34;9228:18;;;9221:62;-1:-1:-1;;;9299:18:1;;;9292:39;9348:19;;8612:64:0;8968:405:1;8612:64:0;8687:17;3277:6;;-1:-1:-1;;;;;8723:15:0;;;3277:6;;8723:15;;;;:32;;-1:-1:-1;3250:7:0;3277:6;-1:-1:-1;;;;;8742:13:0;;;3277:6;;8742:13;;8723:32;:54;;;;-1:-1:-1;;;;;;8760:17:0;;;;;;:11;:17;;;;;;;;8759:18;8723:54;8719:1212;;;8806:87;8889:3;8806:78;8833:20;;8818:12;;:35;8817:66;;8871:12;;8817:66;;;8857:11;;8817:66;8806:6;;:10;:78::i;:::-;:82;;:87::i;:::-;8922:5;;8794:99;;-1:-1:-1;;;;;;8914:13:0;;;8922:5;;8914:13;:39;;;;-1:-1:-1;8945:7:0;;-1:-1:-1;;;;;8931:22:0;;;8945:7;;8931:22;;8914:39;:59;;;;-1:-1:-1;;;;;;8958:15:0;;;;;;:11;:15;;;;;;;;8957:16;8914:59;8910:288;;;9012:11;;9002:6;:21;;8994:58;;;;-1:-1:-1;;;8994:58:0;;9580:2:1;8994:58:0;;;9562:21:1;9619:2;9599:18;;;9592:30;9658:26;9638:18;;;9631:54;9702:18;;8994:58:0;9378:348:1;8994:58:0;9105:13;;9095:6;9079:13;9089:2;-1:-1:-1;;;;;8340:18:0;8313:7;8340:18;;;:9;:18;;;;;;;8247:119;9079:13;:22;;;;:::i;:::-;:39;;9071:78;;;;-1:-1:-1;;;9071:78:0;;10063:2:1;9071:78:0;;;10045:21:1;10102:2;10082:18;;;10075:30;10141:28;10121:18;;;10114:56;10187:18;;9071:78:0;9861:350:1;9071:78:0;9168:12;:14;;;:12;:14;;;:::i;:::-;;;;;;8910:288;9224:5;;-1:-1:-1;;;;;9218:11:0;;;9224:5;;9218:11;:36;;;;-1:-1:-1;;;;;;9233:21:0;;9249:4;9233:21;;9218:36;9214:177;;;9287:88;9371:3;9287:79;9312:21;;9299:12;;:34;9298:67;;9352:13;;9298:67;;;9337:12;;9287:6;;:10;:79::i;:88::-;9275:100;;9214:177;9456:4;9407:28;8340:18;;;:9;:18;;;;;;9482:8;;-1:-1:-1;;;9482:8:0;;;;9481:9;:24;;;;-1:-1:-1;9500:5:0;;-1:-1:-1;;;;;9494:11:0;;;9500:5;;9494:11;9481:24;:40;;;;-1:-1:-1;9509:12:0;;-1:-1:-1;;;9509:12:0;;;;9481:40;:80;;;;;9548:13;;9525:20;:36;9481:80;:117;;;;;9580:18;;9565:12;;:33;9481:117;:143;;;;;9611:13;;9602:6;:22;9481:143;9477:443;;;9645:67;9662:49;9666:6;9674:36;9678:20;9700:9;;9674:3;:36::i;:::-;9662:3;:49::i;:::-;9645:16;:67::i;:::-;9760:21;9803:22;;9800:105;;9850:35;9863:21;9850:12;:35::i;:::-;9626:294;9477:443;8779:1152;8719:1212;9947:13;;9943:226;;10020:4;10002:24;;;;:9;:24;;;;;;:39;;10031:9;10002:28;:39::i;:::-;9993:4;9975:24;;;;:9;:24;;;;;;:66;;;;-1:-1:-1;;;;;10072:15:0;;;;;;:27;;10092:6;10072:19;:27::i;:::-;-1:-1:-1;;;;;10054:15:0;;;;;;:9;:15;;;;;;;;;:45;;;;10117:40;160:25:1;;;10140:4:0;;10117:40;;133:18:1;10117:40:0;;;;;;;9943:226;10195:40;10213:21;:6;10224:9;10213:10;:21::i;:::-;-1:-1:-1;;;;;10195:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10179:13:0;;;;;;;:9;:13;;;;;:56;;;;10251:41;;;10270:21;:6;10281:9;10270:10;:21::i;:::-;10251:41;;160:25:1;;;148:2;133:18;10251:41:0;;;;;;;8447:1853;8378:1922;;;:::o;535:190::-;621:7;657:12;649:6;;;;641:29;;;;-1:-1:-1;;;641:29:0;;;;;;;;:::i;:::-;-1:-1:-1;681:9:0;693:5;697:1;693;:5;:::i;:::-;681:17;535:190;-1:-1:-1;;;;;535:190:0:o;733:246::-;791:7;815:1;820;815:6;811:47;;-1:-1:-1;845:1:0;838:8;;811:47;868:9;880:5;884:1;880;:5;:::i;:::-;868:17;-1:-1:-1;913:1:0;904:5;908:1;868:17;904:5;:::i;:::-;:10;896:56;;;;-1:-1:-1;;;896:56:0;;10913:2:1;896:56:0;;;10895:21:1;10952:2;10932:18;;;10925:30;10991:34;10971:18;;;10964:62;-1:-1:-1;;;11042:18:1;;;11035:31;11083:19;;896:56:0;10711:397:1;896:56:0;970:1;733:246;-1:-1:-1;;;733:246:0:o;987:132::-;1045:7;1072:39;1076:1;1079;1072:39;;;;;;;;;;;;;;;;;:3;:39::i;7047:105::-;7104:7;7134:1;7130;:5;7129:15;;7143:1;7129:15;;;-1:-1:-1;7139:1:0;7047:105;-1:-1:-1;7047:105:0:o;7429:459::-;4965:8;:15;;-1:-1:-1;;;;4965:15:0;-1:-1:-1;;;4965:15:0;;;7531:16:::1;::::0;;7545:1:::1;7531:16:::0;;;;;::::1;::::0;;-1:-1:-1;;7531:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;7531:16:0::1;7507:40;;7576:4;7558;7563:1;7558:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7558:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;7602:7:::1;::::0;:14:::1;::::0;;-1:-1:-1;;;7602:14:0;;;;:7;;;::::1;::::0;:12:::1;::::0;:14:::1;::::0;;::::1;::::0;7558:7;;7602:14;;;;;:7;:14:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7592:4;7597:1;7592:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7592:24:0;;::::1;:7;::::0;;::::1;::::0;;;;;:24;7659:7:::1;::::0;7627:54:::1;::::0;7644:4:::1;::::0;7659:7:::1;7669:11:::0;7627:8:::1;:54::i;:::-;7692:7;::::0;:188:::1;::::0;-1:-1:-1;;;7692:188:0;;-1:-1:-1;;;;;7692:7:0;;::::1;::::0;:58:::1;::::0;:188:::1;::::0;7765:11;;7692:7:::1;::::0;7807:4;;7834::::1;::::0;7854:15:::1;::::0;7692:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5003:8:0;:16;;-1:-1:-1;;;;5003:16:0;;;-1:-1:-1;;;;7429:459:0:o;7164:93::-;7221:11;;:28;;-1:-1:-1;;;;;7221:11:0;;;;:28;;;;;7242:6;;7221:11;:28;:11;:28;7242:6;7221:11;:28;;;;;;;;;;;;;;;;;;;;;7164:93;:::o;204:179::-;262:7;;294:5;298:1;294;:5;:::i;:::-;282:17;;323:1;318;:6;;310:46;;;;-1:-1:-1;;;310:46:0;;12564:2:1;310:46:0;;;12546:21:1;12603:2;12583:18;;;12576:30;12642:29;12622:18;;;12615:57;12689:18;;310:46:0;12362:351:1;391:136:0;449:7;476:43;480:1;483;476:43;;;;;;;;;;;;;;;;;:3;:43::i;1127:189::-;1213:7;1248:12;1241:5;1233:28;;;;-1:-1:-1;;;1233:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1272:9:0;1284:5;1288:1;1284;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;804:70;749:131;:::o;885:315::-;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5301:251::-;5371:6;5424:2;5412:9;5403:7;5399:23;5395:32;5392:52;;;5440:1;5437;5430:12;5392:52;5472:9;5466:16;5491:31;5516:5;5491:31;:::i;6478:306::-;6566:6;6574;6582;6635:2;6623:9;6614:7;6610:23;6606:32;6603:52;;;6651:1;6648;6641:12;6603:52;6680:9;6674:16;6664:26;;6730:2;6719:9;6715:18;6709:25;6699:35;;6774:2;6763:9;6759:18;6753:25;6743:35;;6478:306;;;;;:::o;7068:277::-;7135:6;7188:2;7176:9;7167:7;7163:23;7159:32;7156:52;;;7204:1;7201;7194:12;7156:52;7236:9;7230:16;7289:5;7282:13;7275:21;7268:5;7265:32;7255:60;;7311:1;7308;7301:12;9731:125;9796:9;;;9817:10;;;9814:36;;;9830:18;;:::i;10216:135::-;10255:3;10276:17;;;10273:43;;10296:18;;:::i;:::-;-1:-1:-1;10343:1:1;10332:13;;10216:135::o;10356:128::-;10423:9;;;10444:11;;;10441:37;;;10458:18;;:::i;10489:217::-;10529:1;10555;10545:132;;10599:10;10594:3;10590:20;10587:1;10580:31;10634:4;10631:1;10624:15;10662:4;10659:1;10652:15;10545:132;-1:-1:-1;10691:9:1;;10489:217::o;11245:127::-;11306:10;11301:3;11297:20;11294:1;11287:31;11337:4;11334:1;11327:15;11361:4;11358:1;11351:15;11377:980;11639:4;11687:3;11676:9;11672:19;11718:6;11707:9;11700:25;11744:2;11782:6;11777:2;11766:9;11762:18;11755:34;11825:3;11820:2;11809:9;11805:18;11798:31;11849:6;11884;11878:13;11915:6;11907;11900:22;11953:3;11942:9;11938:19;11931:26;;11992:2;11984:6;11980:15;11966:29;;12013:1;12023:195;12037:6;12034:1;12031:13;12023:195;;;12102:13;;-1:-1:-1;;;;;12098:39:1;12086:52;;12193:15;;;;12158:12;;;;12134:1;12052:9;12023:195;;;-1:-1:-1;;;;;;;12274:32:1;;;;12269:2;12254:18;;12247:60;-1:-1:-1;;;12338:3:1;12323:19;12316:35;12235:3;11377:980;-1:-1:-1;;;11377:980:1:o

Swarm Source

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