ETH Price: $2,015.31 (-1.86%)
Gas: 0.23 Gwei

Token

Roos Coin (Roos)
 

Overview

Max Total Supply

10,000,000,000,000 Roos

Holders

1

Transfers

-
0 (0%)

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

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:
RoosCoin

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2023-07-30
*/

// SPDX-License-Identifier: MIT


pragma solidity ^0.8.0;

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");
        uint256 c = a - b;
        return c;
    }

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

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;
        return c;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0, "SafeMath: modulo by zero");
        return a % b;
    }
}



pragma solidity ^0.8.0;


contract RoosCoin {
    using SafeMath for uint256;

    string private constant _name = "Roos Coin";
    string private constant _symbol = "Roos";
    uint8 private constant _decimals = 18;
    uint256 private _totalSupply = 10_000_000_000_000 * 10**_decimals;

    uint256 private _burnRate = 50; // 0.5% burn rate (0.5 * 100)
    uint256 private _liquidityFeeRate = 1; // 1% liquidity fee rate
    uint256 private _redistributionRate = 100; // 1% redistribution fee rate (1 * 100)
    uint256 private _buybackFeeRate = 5; // 0.5% buyback fee rate (0.5 * 10)

    address private _owner;
    address private _buybackWallet = 0x03f402c57EB6839CA70856756032080CAf1Ab58D;
    address private _liquidityPool;

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    address[] private _tokenHolders;

    mapping(address => bool) private _excludedFromFees; // Addresses excluded from paying fees
    mapping(address => bool) private _excludedFromRewards; // Addresses excluded from receiving rewards

    bool private _feesEnabled = true;

    modifier onlyOwner() {
        require(msg.sender == _owner, "Only the contract owner can call this function.");
        _;
    }

    constructor() {
        _owner = msg.sender;
        _balances[msg.sender] = _totalSupply;
        _tokenHolders.push(msg.sender);
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

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

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

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

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

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

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

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

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

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

    function setLiquidityPool(address liquidityPool) external onlyOwner {
        require(liquidityPool != address(0), "Invalid liquidity pool address");
        _liquidityPool = liquidityPool;
    }

    function renounceOwnership() external onlyOwner {
        _owner = address(0);
        emit OwnershipTransferred(msg.sender, address(0));
    }

    function setFeesEnabled(bool enabled) external onlyOwner {
        _feesEnabled = enabled;
    }

    // Function to add addresses to the excluded list for paying fees (only callable by the contract owner)
    function excludeFromFees(address account) external onlyOwner {
        require(account != address(0), "Invalid address");
        _excludedFromFees[account] = true;
    }

    // Function to remove addresses from the excluded list for paying fees (only callable by the contract owner)
    function includeInFees(address account) external onlyOwner {
        require(account != address(0), "Invalid address");
        _excludedFromFees[account] = false;
    }

    function isExcludedFromFees(address account) public view returns (bool) {
        return _excludedFromFees[account];
    }

    // Function to add addresses to the excluded list for receiving rewards (only callable by the contract owner)
    function excludeFromRewards(address account) external onlyOwner {
        require(account != address(0), "Invalid address");
        _excludedFromRewards[account] = true;
    }

    // Function to remove addresses from the excluded list for receiving rewards (only callable by the contract owner)
    function includeInRewards(address account) external onlyOwner {
        require(account != address(0), "Invalid address");
        _excludedFromRewards[account] = false;
    }

    function isExcludedFromRewards(address account) public view returns (bool) {
        return _excludedFromRewards[account];
    }

    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "ERC20: transfer amount must be greater than zero");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");

        uint256 burnAmount = amount.mul(_burnRate).div(10000); // divide by 10000 to convert from 0.5% (50 / 10000)
        uint256 liquidityFee = amount.mul(_liquidityFeeRate).div(100);
        uint256 redistributionFee = amount.mul(_redistributionRate).div(10000); // divide by 10000 to convert from 1% (100 / 10000)
        uint256 buybackFee = amount.mul(_buybackFeeRate).div(1000); // divide by 1000 to convert from 0.5% (5 / 1000)

        uint256 transferAmount = amount.sub(burnAmount).sub(liquidityFee).sub(redistributionFee).sub(buybackFee);

        _balances[sender] = senderBalance.sub(amount);
        _balances[recipient] = _balances[recipient].add(transferAmount);

        // Apply fees if enabled and the sender is not excluded from fees
        if (_feesEnabled && !_excludedFromFees[sender]) {
            _balances[address(this)] = _balances[address(this)].add(liquidityFee).add(redistributionFee);

            // Transfer buyback fee to the buyback wallet
            _balances[_buybackWallet] = _balances[_buybackWallet].add(buybackFee);

            // Update token holders if recipient is a new address
            if (_balances[recipient] == 0) {
                _tokenHolders.push(recipient);
            }

            emit Transfer(sender, recipient, transferAmount);
            emit Transfer(sender, address(0), burnAmount);
            emit Transfer(sender, _buybackWallet, buybackFee);

            // Transfer liquidity fee to the liquidity pool
            if (_liquidityPool != address(0) && liquidityFee > 0) {
                _balances[_liquidityPool] = _balances[_liquidityPool].add(liquidityFee);
                emit Transfer(sender, _liquidityPool, liquidityFee);
            }

            // Distribute redistribution fee to token holders
            if (redistributionFee > 0) {
                _distributeRedistributionFee(redistributionFee);
            }
        } else {
            // Fees are disabled or the sender is excluded, transfer the full amount without applying fees
            _balances[recipient] = _balances[recipient].add(amount);
            _balances[sender] = _balances[sender].sub(amount);
            emit Transfer(sender, recipient, amount);
        }
    }

    function _distributeRedistributionFee(uint256 amount) internal {
        uint256 numTokenHolders = _tokenHolders.length;
        if (numTokenHolders > 0) {
            uint256 feePerHolder = amount.div(numTokenHolders);
            for (uint256 i = 0; i < numTokenHolders; i++) {
                address holder = _tokenHolders[i];
                if (!_excludedFromRewards[holder]) {
                    _balances[holder] = _balances[holder].add(feePerHolder);
                    emit Transfer(address(this), holder, feePerHolder);
                }
            }
        }
    }

    function _approve(address owner, address spender, uint256 amount) internal {
        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);
    }

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromRewards","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setFeesEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"liquidityPool","type":"address"}],"name":"setLiquidityPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"}]

6080604052620000126012600a6200022a565b62000024906509184e72a00062000241565b5f5560326001908155600281905560646003556005600455600680546001600160a01b0319167303f402c57eb6839ca70856756032080caf1ab58d179055600d805460ff191690911790553480156200007b575f80fd5b5060058054336001600160a01b031991821681179092555f805483825260086020908152604080842092909255600a80546001810182559084527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a801805490941685179093558154905190815290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36200025b565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200016f57815f19048211156200015357620001536200011b565b808516156200016157918102915b93841c939080029062000134565b509250929050565b5f82620001875750600162000224565b816200019557505f62000224565b8160018114620001ae5760028114620001b957620001d9565b600191505062000224565b60ff841115620001cd57620001cd6200011b565b50506001821b62000224565b5060208310610133831016604e8410600b8410161715620001fe575081810a62000224565b6200020a83836200012f565b805f19048211156200022057620002206200011b565b0290505b92915050565b5f6200023a60ff84168362000177565b9392505050565b80820281158282048414176200022457620002246200011b565b61123280620002695f395ff3fe608060405234801561000f575f80fd5b5060043610610111575f3560e01c80634fbee1931161009e578063a901dd921161006e578063a901dd9214610283578063a9059cbb14610296578063b609995e146102a9578063dd62ed3e146102bc578063e57f14e1146102f4575f80fd5b80634fbee1931461020857806370a0823114610233578063715018a61461025b57806395d89b4114610263575f80fd5b8063111e0376116100e4578063111e0376146101af57806316a2f82a146101c257806318160ddd146101d557806323b872dd146101e6578063313ce567146101f9575f80fd5b8063018770201461011557806306fdde031461012a578063095ea7b3146101615780630e83227314610184575b5f80fd5b610128610123366004610fb3565b610307565b005b6040805180820190915260098152682937b7b99021b7b4b760b91b60208201525b6040516101589190610fcc565b60405180910390f35b61017461016f366004611017565b6103b2565b6040519015158152602001610158565b610174610192366004610fb3565b6001600160a01b03165f908152600c602052604090205460ff1690565b6101286101bd366004610fb3565b6103c8565b6101286101d0366004610fb3565b61043b565b5f545b604051908152602001610158565b6101746101f436600461103f565b6104ab565b60405160128152602001610158565b610174610216366004610fb3565b6001600160a01b03165f908152600b602052604090205460ff1690565b6101d8610241366004610fb3565b6001600160a01b03165f9081526008602052604090205490565b6101286104fa565b604080518082019091526004815263526f6f7360e01b602082015261014b565b610128610291366004611078565b610562565b6101746102a4366004611017565b61059f565b6101286102b7366004610fb3565b6105ab565b6101d86102ca366004611097565b6001600160a01b039182165f90815260096020908152604080832093909416825291909152205490565b610128610302366004610fb3565b61061b565b6005546001600160a01b0316331461033a5760405162461bcd60e51b8152600401610331906110c8565b60405180910390fd5b6001600160a01b0381166103905760405162461bcd60e51b815260206004820152601e60248201527f496e76616c6964206c697175696469747920706f6f6c206164647265737300006044820152606401610331565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b5f6103be33848461068e565b5060015b92915050565b6005546001600160a01b031633146103f25760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b0381166104185760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600c60205260409020805460ff19166001179055565b6005546001600160a01b031633146104655760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b03811661048b5760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600b60205260409020805460ff19169055565b5f6104b78484846107b1565b6001600160a01b0384165f908152600960209081526040808320338085529252909120546104f09186916104eb9086610d12565b61068e565b5060019392505050565b6005546001600160a01b031633146105245760405162461bcd60e51b8152600401610331906110c8565b600580546001600160a01b03191690556040515f9033907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3565b6005546001600160a01b0316331461058c5760405162461bcd60e51b8152600401610331906110c8565b600d805460ff1916911515919091179055565b5f6103be3384846107b1565b6005546001600160a01b031633146105d55760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b0381166105fb5760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600c60205260409020805460ff19169055565b6005546001600160a01b031633146106455760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b03811661066b5760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600b60205260409020805460ff19166001179055565b6001600160a01b0383166106f05760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610331565b6001600160a01b0382166107515760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610331565b6001600160a01b038381165f8181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108155760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610331565b6001600160a01b0382166108775760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610331565b5f81116108df5760405162461bcd60e51b815260206004820152603060248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b6064820152608401610331565b6001600160a01b0383165f90815260086020526040902054818110156109565760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610331565b5f61097861271061097260015486610d7690919063ffffffff16565b90610dfb565b90505f610995606461097260025487610d7690919063ffffffff16565b90505f6109b361271061097260035488610d7690919063ffffffff16565b90505f6109d16103e861097260045489610d7690919063ffffffff16565b90505f6109ec826109e6858188818d8c610d12565b90610d12565b90506109f88688610d12565b6001600160a01b03808b165f9081526008602052604080822093909355908a1681522054610a269082610e56565b6001600160a01b0389165f90815260086020526040902055600d5460ff168015610a6857506001600160a01b0389165f908152600b602052604090205460ff16155b15610c7457305f90815260086020526040902054610a92908490610a8c9087610e56565b90610e56565b305f90815260086020526040808220929092556006546001600160a01b031681522054610abf9083610e56565b6006546001600160a01b039081165f9081526008602052604080822093909355908a168152908120549003610b3957600a80546001810182555f919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80180546001600160a01b0319166001600160a01b038a161790555b876001600160a01b0316896001600160a01b03165f805160206111dd83398151915283604051610b6b91815260200190565b60405180910390a36040518581525f906001600160a01b038b16905f805160206111dd8339815191529060200160405180910390a36006546040518381526001600160a01b03918216918b16905f805160206111dd8339815191529060200160405180910390a36007546001600160a01b031615801590610beb57505f84115b15610c60576007546001600160a01b03165f90815260086020526040902054610c149085610e56565b600780546001600160a01b039081165f90815260086020908152604091829020949094559154915187815291811692908c16915f805160206111dd833981519152910160405180910390a35b8215610c6f57610c6f83610eb4565b610d07565b6001600160a01b0388165f90815260086020526040902054610c969088610e56565b6001600160a01b03808a165f9081526008602052604080822093909355908b1681522054610cc49088610d12565b6001600160a01b038a81165f8181526008602090815260409182902094909455518a8152918b169290915f805160206111dd833981519152910160405180910390a35b505050505050505050565b5f82821115610d635760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401610331565b5f610d6e8385611154565b949350505050565b5f825f03610d8557505f6103c2565b5f610d908385611167565b905082610d9d858361117e565b14610df45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610331565b9392505050565b5f808211610e4b5760405162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f0000000000006044820152606401610331565b5f610d6e838561117e565b5f80610e62838561119d565b905083811015610df45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610331565b600a548015610f94575f610ec88383610dfb565b90505f5b82811015610f91575f600a8281548110610ee857610ee86111b0565b5f9182526020808320909101546001600160a01b0316808352600c90915260409091205490915060ff16610f7e576001600160a01b0381165f90815260086020526040902054610f389084610e56565b6001600160a01b0382165f818152600860205260409081902092909255905130905f805160206111dd83398151915290610f759087815260200190565b60405180910390a35b5080610f89816111c4565b915050610ecc565b50505b5050565b80356001600160a01b0381168114610fae575f80fd5b919050565b5f60208284031215610fc3575f80fd5b610df482610f98565b5f6020808352835180828501525f5b81811015610ff757858101830151858201604001528201610fdb565b505f604082860101526040601f19601f8301168501019250505092915050565b5f8060408385031215611028575f80fd5b61103183610f98565b946020939093013593505050565b5f805f60608486031215611051575f80fd5b61105a84610f98565b925061106860208501610f98565b9150604084013590509250925092565b5f60208284031215611088575f80fd5b81358015158114610df4575f80fd5b5f80604083850312156110a8575f80fd5b6110b183610f98565b91506110bf60208401610f98565b90509250929050565b6020808252602f908201527f4f6e6c792074686520636f6e7472616374206f776e65722063616e2063616c6c60408201526e103a3434b990333ab731ba34b7b71760891b606082015260800190565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103c2576103c2611140565b80820281158282048414176103c2576103c2611140565b5f8261119857634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103c2576103c2611140565b634e487b7160e01b5f52603260045260245ffd5b5f600182016111d5576111d5611140565b506001019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122029a0b91a13c52d7e9e9dc505be4b267f53bc1ae37c9eafceb7b5c390a43499e564736f6c63430008140033

Deployed Bytecode

0x608060405234801561000f575f80fd5b5060043610610111575f3560e01c80634fbee1931161009e578063a901dd921161006e578063a901dd9214610283578063a9059cbb14610296578063b609995e146102a9578063dd62ed3e146102bc578063e57f14e1146102f4575f80fd5b80634fbee1931461020857806370a0823114610233578063715018a61461025b57806395d89b4114610263575f80fd5b8063111e0376116100e4578063111e0376146101af57806316a2f82a146101c257806318160ddd146101d557806323b872dd146101e6578063313ce567146101f9575f80fd5b8063018770201461011557806306fdde031461012a578063095ea7b3146101615780630e83227314610184575b5f80fd5b610128610123366004610fb3565b610307565b005b6040805180820190915260098152682937b7b99021b7b4b760b91b60208201525b6040516101589190610fcc565b60405180910390f35b61017461016f366004611017565b6103b2565b6040519015158152602001610158565b610174610192366004610fb3565b6001600160a01b03165f908152600c602052604090205460ff1690565b6101286101bd366004610fb3565b6103c8565b6101286101d0366004610fb3565b61043b565b5f545b604051908152602001610158565b6101746101f436600461103f565b6104ab565b60405160128152602001610158565b610174610216366004610fb3565b6001600160a01b03165f908152600b602052604090205460ff1690565b6101d8610241366004610fb3565b6001600160a01b03165f9081526008602052604090205490565b6101286104fa565b604080518082019091526004815263526f6f7360e01b602082015261014b565b610128610291366004611078565b610562565b6101746102a4366004611017565b61059f565b6101286102b7366004610fb3565b6105ab565b6101d86102ca366004611097565b6001600160a01b039182165f90815260096020908152604080832093909416825291909152205490565b610128610302366004610fb3565b61061b565b6005546001600160a01b0316331461033a5760405162461bcd60e51b8152600401610331906110c8565b60405180910390fd5b6001600160a01b0381166103905760405162461bcd60e51b815260206004820152601e60248201527f496e76616c6964206c697175696469747920706f6f6c206164647265737300006044820152606401610331565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b5f6103be33848461068e565b5060015b92915050565b6005546001600160a01b031633146103f25760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b0381166104185760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600c60205260409020805460ff19166001179055565b6005546001600160a01b031633146104655760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b03811661048b5760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600b60205260409020805460ff19169055565b5f6104b78484846107b1565b6001600160a01b0384165f908152600960209081526040808320338085529252909120546104f09186916104eb9086610d12565b61068e565b5060019392505050565b6005546001600160a01b031633146105245760405162461bcd60e51b8152600401610331906110c8565b600580546001600160a01b03191690556040515f9033907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3565b6005546001600160a01b0316331461058c5760405162461bcd60e51b8152600401610331906110c8565b600d805460ff1916911515919091179055565b5f6103be3384846107b1565b6005546001600160a01b031633146105d55760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b0381166105fb5760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600c60205260409020805460ff19169055565b6005546001600160a01b031633146106455760405162461bcd60e51b8152600401610331906110c8565b6001600160a01b03811661066b5760405162461bcd60e51b815260040161033190611117565b6001600160a01b03165f908152600b60205260409020805460ff19166001179055565b6001600160a01b0383166106f05760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610331565b6001600160a01b0382166107515760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610331565b6001600160a01b038381165f8181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108155760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610331565b6001600160a01b0382166108775760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610331565b5f81116108df5760405162461bcd60e51b815260206004820152603060248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b6064820152608401610331565b6001600160a01b0383165f90815260086020526040902054818110156109565760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610331565b5f61097861271061097260015486610d7690919063ffffffff16565b90610dfb565b90505f610995606461097260025487610d7690919063ffffffff16565b90505f6109b361271061097260035488610d7690919063ffffffff16565b90505f6109d16103e861097260045489610d7690919063ffffffff16565b90505f6109ec826109e6858188818d8c610d12565b90610d12565b90506109f88688610d12565b6001600160a01b03808b165f9081526008602052604080822093909355908a1681522054610a269082610e56565b6001600160a01b0389165f90815260086020526040902055600d5460ff168015610a6857506001600160a01b0389165f908152600b602052604090205460ff16155b15610c7457305f90815260086020526040902054610a92908490610a8c9087610e56565b90610e56565b305f90815260086020526040808220929092556006546001600160a01b031681522054610abf9083610e56565b6006546001600160a01b039081165f9081526008602052604080822093909355908a168152908120549003610b3957600a80546001810182555f919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80180546001600160a01b0319166001600160a01b038a161790555b876001600160a01b0316896001600160a01b03165f805160206111dd83398151915283604051610b6b91815260200190565b60405180910390a36040518581525f906001600160a01b038b16905f805160206111dd8339815191529060200160405180910390a36006546040518381526001600160a01b03918216918b16905f805160206111dd8339815191529060200160405180910390a36007546001600160a01b031615801590610beb57505f84115b15610c60576007546001600160a01b03165f90815260086020526040902054610c149085610e56565b600780546001600160a01b039081165f90815260086020908152604091829020949094559154915187815291811692908c16915f805160206111dd833981519152910160405180910390a35b8215610c6f57610c6f83610eb4565b610d07565b6001600160a01b0388165f90815260086020526040902054610c969088610e56565b6001600160a01b03808a165f9081526008602052604080822093909355908b1681522054610cc49088610d12565b6001600160a01b038a81165f8181526008602090815260409182902094909455518a8152918b169290915f805160206111dd833981519152910160405180910390a35b505050505050505050565b5f82821115610d635760405162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f7700006044820152606401610331565b5f610d6e8385611154565b949350505050565b5f825f03610d8557505f6103c2565b5f610d908385611167565b905082610d9d858361117e565b14610df45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610331565b9392505050565b5f808211610e4b5760405162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f0000000000006044820152606401610331565b5f610d6e838561117e565b5f80610e62838561119d565b905083811015610df45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610331565b600a548015610f94575f610ec88383610dfb565b90505f5b82811015610f91575f600a8281548110610ee857610ee86111b0565b5f9182526020808320909101546001600160a01b0316808352600c90915260409091205490915060ff16610f7e576001600160a01b0381165f90815260086020526040902054610f389084610e56565b6001600160a01b0382165f818152600860205260409081902092909255905130905f805160206111dd83398151915290610f759087815260200190565b60405180910390a35b5080610f89816111c4565b915050610ecc565b50505b5050565b80356001600160a01b0381168114610fae575f80fd5b919050565b5f60208284031215610fc3575f80fd5b610df482610f98565b5f6020808352835180828501525f5b81811015610ff757858101830151858201604001528201610fdb565b505f604082860101526040601f19601f8301168501019250505092915050565b5f8060408385031215611028575f80fd5b61103183610f98565b946020939093013593505050565b5f805f60608486031215611051575f80fd5b61105a84610f98565b925061106860208501610f98565b9150604084013590509250925092565b5f60208284031215611088575f80fd5b81358015158114610df4575f80fd5b5f80604083850312156110a8575f80fd5b6110b183610f98565b91506110bf60208401610f98565b90509250929050565b6020808252602f908201527f4f6e6c792074686520636f6e7472616374206f776e65722063616e2063616c6c60408201526e103a3434b990333ab731ba34b7b71760891b606082015260800190565b6020808252600f908201526e496e76616c6964206164647265737360881b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103c2576103c2611140565b80820281158282048414176103c2576103c2611140565b5f8261119857634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103c2576103c2611140565b634e487b7160e01b5f52603260045260245ffd5b5f600182016111d5576111d5611140565b506001019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122029a0b91a13c52d7e9e9dc505be4b267f53bc1ae37c9eafceb7b5c390a43499e564736f6c63430008140033

Deployed Bytecode Sourcemap

1096:8581:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3807:198;;;;;;:::i;:::-;;:::i;:::-;;2585:83;2655:5;;;;;;;;;;;;-1:-1:-1;;;2655:5:0;;;;2585:83;;;;;;;:::i;:::-;;;;;;;;3385:150;;;;;;:::i;:::-;;:::i;:::-;;;1360:14:1;;1353:22;1335:41;;1323:2;1308:18;3385:150:0;1195:187:1;5597:130:0;;;;;;:::i;:::-;-1:-1:-1;;;;;5690:29:0;5666:4;5690:29;;;:20;:29;;;;;;;;;5597:130;5104:179;;;;;;:::i;:::-;;:::i;4677:172::-;;;;;;:::i;:::-;;:::i;2862:91::-;2906:7;2933:12;2862:91;;;1533:25:1;;;1521:2;1506:18;2862:91:0;1387:177:1;3543:256:0;;;;;;:::i;:::-;;:::i;2771:83::-;;;1288:2;2044:36:1;;2032:2;2017:18;2771:83:0;1902:184:1;4857:124:0;;;;;;:::i;:::-;-1:-1:-1;;;;;4947:26:0;4923:4;4947:26;;;:17;:26;;;;;;;;;4857:124;2961:110;;;;;;:::i;:::-;-1:-1:-1;;;;;3045:18:0;3018:7;3045:18;;;:9;:18;;;;;;;2961:110;4013:146;;;:::i;2676:87::-;2748:7;;;;;;;;;;;;-1:-1:-1;;;2748:7:0;;;;2676:87;;4167:98;;;;;;:::i;:::-;;:::i;3079:156::-;;;;;;:::i;:::-;;:::i;5411:178::-;;;;;;:::i;:::-;;:::i;3243:134::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3342:18:0;;;3315:7;3342:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3243:134;4382:173;;;;;;:::i;:::-;;:::i;3807:198::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;3894:27:0;::::1;3886:70;;;::::0;-1:-1:-1;;;3886:70:0;;3252:2:1;3886:70:0::1;::::0;::::1;3234:21:1::0;3291:2;3271:18;;;3264:30;3330:32;3310:18;;;3303:60;3380:18;;3886:70:0::1;3050:354:1::0;3886:70:0::1;3967:14;:30:::0;;-1:-1:-1;;;;;;3967:30:0::1;-1:-1:-1::0;;;;;3967:30:0;;;::::1;::::0;;;::::1;::::0;;3807:198::o;3385:150::-;3451:4;3468:37;3477:10;3489:7;3498:6;3468:8;:37::i;:::-;-1:-1:-1;3523:4:0;3385:150;;;;;:::o;5104:179::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5187:21:0;::::1;5179:49;;;;-1:-1:-1::0;;;5179:49:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5239:29:0::1;;::::0;;;:20:::1;:29;::::0;;;;:36;;-1:-1:-1;;5239:36:0::1;5271:4;5239:36;::::0;;5104:179::o;4677:172::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4755:21:0;::::1;4747:49;;;;-1:-1:-1::0;;;4747:49:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4807:26:0::1;4836:5;4807:26:::0;;;:17:::1;:26;::::0;;;;:34;;-1:-1:-1;;4807:34:0::1;::::0;;4677:172::o;3543:256::-;3632:4;3649:36;3659:6;3667:9;3678:6;3649:9;:36::i;:::-;-1:-1:-1;;;;;3725:19:0;;;;;;:11;:19;;;;;;;;3713:10;3725:31;;;;;;;;;3696:73;;3705:6;;3725:43;;3761:6;3725:35;:43::i;:::-;3696:8;:73::i;:::-;-1:-1:-1;3787:4:0;3543:256;;;;;:::o;4013:146::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;4072:6:::1;:19:::0;;-1:-1:-1;;;;;;4072:19:0::1;::::0;;4107:44:::1;::::0;4089:1:::1;::::0;4128:10:::1;::::0;4107:44:::1;::::0;4089:1;;4107:44:::1;4013:146::o:0;4167:98::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;4235:12:::1;:22:::0;;-1:-1:-1;;4235:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;4167:98::o;3079:156::-;3148:4;3165:40;3175:10;3187:9;3198:6;3165:9;:40::i;5411:178::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5492:21:0;::::1;5484:49;;;;-1:-1:-1::0;;;5484:49:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5544:29:0::1;5576:5;5544:29:::0;;;:20:::1;:29;::::0;;;;:37;;-1:-1:-1;;5544:37:0::1;::::0;;5411:178::o;4382:173::-;2289:6;;-1:-1:-1;;;;;2289:6:0;2275:10;:20;2267:80;;;;-1:-1:-1;;;2267:80:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;4462:21:0;::::1;4454:49;;;;-1:-1:-1::0;;;4454:49:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;4514:26:0::1;;::::0;;;:17:::1;:26;::::0;;;;:33;;-1:-1:-1;;4514:33:0::1;4543:4;4514:33;::::0;;4382:173::o;9082:338::-;-1:-1:-1;;;;;9176:19:0;;9168:68;;;;-1:-1:-1;;;9168:68:0;;3955:2:1;9168:68:0;;;3937:21:1;3994:2;3974:18;;;3967:30;4033:34;4013:18;;;4006:62;-1:-1:-1;;;4084:18:1;;;4077:34;4128:19;;9168:68:0;3753:400:1;9168:68:0;-1:-1:-1;;;;;9255:21:0;;9247:68;;;;-1:-1:-1;;;9247:68:0;;4360:2:1;9247:68:0;;;4342:21:1;4399:2;4379:18;;;4372:30;4438:34;4418:18;;;4411:62;-1:-1:-1;;;4489:18:1;;;4482:32;4531:19;;9247:68:0;4158:398:1;9247:68:0;-1:-1:-1;;;;;9328:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9380:32;;1533:25:1;;;9380:32:0;;1506:18:1;9380:32:0;;;;;;;9082:338;;;:::o;5735:2739::-;-1:-1:-1;;;;;5833:20:0;;5825:70;;;;-1:-1:-1;;;5825:70:0;;4763:2:1;5825:70:0;;;4745:21:1;4802:2;4782:18;;;4775:30;4841:34;4821:18;;;4814:62;-1:-1:-1;;;4892:18:1;;;4885:35;4937:19;;5825:70:0;4561:401:1;5825:70:0;-1:-1:-1;;;;;5914:23:0;;5906:71;;;;-1:-1:-1;;;5906:71:0;;5169:2:1;5906:71:0;;;5151:21:1;5208:2;5188:18;;;5181:30;5247:34;5227:18;;;5220:62;-1:-1:-1;;;5298:18:1;;;5291:33;5341:19;;5906:71:0;4967:399:1;5906:71:0;6005:1;5996:6;:10;5988:71;;;;-1:-1:-1;;;5988:71:0;;5573:2:1;5988:71:0;;;5555:21:1;5612:2;5592:18;;;5585:30;5651:34;5631:18;;;5624:62;-1:-1:-1;;;5702:18:1;;;5695:46;5758:19;;5988:71:0;5371:412:1;5988:71:0;-1:-1:-1;;;;;6096:17:0;;6072:21;6096:17;;;:9;:17;;;;;;6132:23;;;;6124:74;;;;-1:-1:-1;;;6124:74:0;;5990:2:1;6124:74:0;;;5972:21:1;6029:2;6009:18;;;6002:30;6068:34;6048:18;;;6041:62;-1:-1:-1;;;6119:18:1;;;6112:36;6165:19;;6124:74:0;5788:402:1;6124:74:0;6211:18;6232:32;6258:5;6232:21;6243:9;;6232:6;:10;;:21;;;;:::i;:::-;:25;;:32::i;:::-;6211:53;;6328:20;6351:38;6385:3;6351:29;6362:17;;6351:6;:10;;:29;;;;:::i;:38::-;6328:61;;6400:25;6428:42;6464:5;6428:31;6439:19;;6428:6;:10;;:31;;;;:::i;:42::-;6400:70;;6533:18;6554:37;6586:4;6554:27;6565:15;;6554:6;:10;;:27;;;;:::i;:37::-;6533:58;-1:-1:-1;6654:22:0;6679:79;6533:58;6679:63;6724:17;6679:63;6706:12;6679:63;:6;6690:10;6679;:22::i;:::-;:26;;:40::i;:79::-;6654:104;-1:-1:-1;6791:25:0;:13;6809:6;6791:17;:25::i;:::-;-1:-1:-1;;;;;6771:17:0;;;;;;;:9;:17;;;;;;:45;;;;6850:20;;;;;;;:40;;6875:14;6850:24;:40::i;:::-;-1:-1:-1;;;;;6827:20:0;;;;;;:9;:20;;;;;:63;6982:12;;;;:42;;;;-1:-1:-1;;;;;;6999:25:0;;;;;;:17;:25;;;;;;;;6998:26;6982:42;6978:1489;;;7086:4;7068:24;;;;:9;:24;;;;;;:65;;7115:17;;7068:42;;7097:12;7068:28;:42::i;:::-;:46;;:65::i;:::-;7059:4;7041:24;;;;:9;:24;;;;;;:92;;;;7247:14;;-1:-1:-1;;;;;7247:14:0;7237:25;;;;:41;;7267:10;7237:29;:41::i;:::-;7219:14;;-1:-1:-1;;;;;7219:14:0;;;7209:25;;;;:9;:25;;;;;;:69;;;;7366:20;;;;;;;;;:25;;7362:95;;7412:13;:29;;;;;;;-1:-1:-1;7412:29:0;;;;;;;;-1:-1:-1;;;;;;7412:29:0;-1:-1:-1;;;;;7412:29:0;;;;;7362:95;7495:9;-1:-1:-1;;;;;7478:43:0;7487:6;-1:-1:-1;;;;;7478:43:0;-1:-1:-1;;;;;;;;;;;7506:14:0;7478:43;;;;1533:25:1;;1521:2;1506:18;;1387:177;7478:43:0;;;;;;;;7541:40;;1533:25:1;;;7566:1:0;;-1:-1:-1;;;;;7541:40:0;;;-1:-1:-1;;;;;;;;;;;7541:40:0;1521:2:1;1506:18;7541:40:0;;;;;;;7618:14;;7601:44;;1533:25:1;;;-1:-1:-1;;;;;7618:14:0;;;;7601:44;;;-1:-1:-1;;;;;;;;;;;7601:44:0;1521:2:1;1506:18;7601:44:0;;;;;;;7727:14;;-1:-1:-1;;;;;7727:14:0;:28;;;;:48;;;7774:1;7759:12;:16;7727:48;7723:230;;;7834:14;;-1:-1:-1;;;;;7834:14:0;7824:25;;;;:9;:25;;;;;;:43;;7854:12;7824:29;:43::i;:::-;7806:14;;;-1:-1:-1;;;;;7806:14:0;;;7796:25;;;;:9;:25;;;;;;;;;:71;;;;7908:14;;7891:46;;1533:25:1;;;7908:14:0;;;;7891:46;;;;-1:-1:-1;;;;;;;;;;;7891:46:0;1506:18:1;7891:46:0;;;;;;;7723:230;8036:21;;8032:109;;8078:47;8107:17;8078:28;:47::i;:::-;6978:1489;;;-1:-1:-1;;;;;8304:20:0;;;;;;:9;:20;;;;;;:32;;8329:6;8304:24;:32::i;:::-;-1:-1:-1;;;;;8281:20:0;;;;;;;:9;:20;;;;;;:55;;;;8371:17;;;;;;;:29;;8393:6;8371:21;:29::i;:::-;-1:-1:-1;;;;;8351:17:0;;;;;;;:9;:17;;;;;;;;;:49;;;;8420:35;1533:25:1;;;8420:35:0;;;;8351:17;;-1:-1:-1;;;;;;;;;;;8420:35:0;1506:18:1;8420:35:0;;;;;;;6978:1489;5814:2660;;;;;;5735:2739;;;:::o;275:182::-;333:7;366:1;361;:6;;353:49;;;;-1:-1:-1;;;353:49:0;;6397:2:1;353:49:0;;;6379:21:1;6436:2;6416:18;;;6409:30;6475:32;6455:18;;;6448:60;6525:18;;353:49:0;6195:354:1;353:49:0;413:9;425:5;429:1;425;:5;:::i;:::-;413:17;275:182;-1:-1:-1;;;;275:182:0:o;465:246::-;523:7;547:1;552;547:6;543:47;;-1:-1:-1;577:1:0;570:8;;543:47;600:9;612:5;616:1;612;:5;:::i;:::-;600:17;-1:-1:-1;645:1:0;636:5;640:1;600:17;636:5;:::i;:::-;:10;628:56;;;;-1:-1:-1;;;628:56:0;;7416:2:1;628:56:0;;;7398:21:1;7455:2;7435:18;;;7428:30;7494:34;7474:18;;;7467:62;-1:-1:-1;;;7545:18:1;;;7538:31;7586:19;;628:56:0;7214:397:1;628:56:0;702:1;465:246;-1:-1:-1;;;465:246:0:o;719:177::-;777:7;809:1;805;:5;797:44;;;;-1:-1:-1;;;797:44:0;;7818:2:1;797:44:0;;;7800:21:1;7857:2;7837:18;;;7830:30;7896:28;7876:18;;;7869:56;7942:18;;797:44:0;7616:350:1;797:44:0;852:9;864:5;868:1;864;:5;:::i;88:179::-;146:7;;178:5;182:1;178;:5;:::i;:::-;166:17;;207:1;202;:6;;194:46;;;;-1:-1:-1;;;194:46:0;;8303:2:1;194:46:0;;;8285:21:1;8342:2;8322:18;;;8315:30;8381:29;8361:18;;;8354:57;8428:18;;194:46:0;8101:351:1;8482:592:0;8582:13;:20;8617:19;;8613:454;;8653:20;8676:27;:6;8687:15;8676:10;:27::i;:::-;8653:50;;8723:9;8718:338;8742:15;8738:1;:19;8718:338;;;8783:14;8800:13;8814:1;8800:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8800:16:0;8840:28;;;:20;:28;;;;;;;;8800:16;;-1:-1:-1;8840:28:0;;8835:206;;-1:-1:-1;;;;;8913:17:0;;;;;;:9;:17;;;;;;:35;;8935:12;8913:21;:35::i;:::-;-1:-1:-1;;;;;8893:17:0;;;;;;:9;:17;;;;;;;:55;;;;8976:45;;8993:4;;-1:-1:-1;;;;;;;;;;;8976:45:0;;;9008:12;1533:25:1;;1521:2;1506:18;;1387:177;8976:45:0;;;;;;;;8835:206;-1:-1:-1;8759:3:0;;;;:::i;:::-;;;;8718:338;;;;8638:429;8613:454;8545:529;8482:592;:::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;383:548::-;495:4;524:2;553;542:9;535:21;585:6;579:13;628:6;623:2;612:9;608:18;601:34;653:1;663:140;677:6;674:1;671:13;663:140;;;772:14;;;768:23;;762:30;738:17;;;757:2;734:26;727:66;692:10;;663:140;;;667:3;852:1;847:2;838:6;827:9;823:22;819:31;812:42;922:2;915;911:7;906:2;898:6;894:15;890:29;879:9;875:45;871:54;863:62;;;;383:548;;;;:::o;936:254::-;1004:6;1012;1065:2;1053:9;1044:7;1040:23;1036:32;1033:52;;;1081:1;1078;1071:12;1033:52;1104:29;1123:9;1104:29;:::i;:::-;1094:39;1180:2;1165:18;;;;1152:32;;-1:-1:-1;;;936:254:1:o;1569:328::-;1646:6;1654;1662;1715:2;1703:9;1694:7;1690:23;1686:32;1683:52;;;1731:1;1728;1721:12;1683:52;1754:29;1773:9;1754:29;:::i;:::-;1744:39;;1802:38;1836:2;1825:9;1821:18;1802:38;:::i;:::-;1792:48;;1887:2;1876:9;1872:18;1859:32;1849:42;;1569:328;;;;;:::o;2091:273::-;2147:6;2200:2;2188:9;2179:7;2175:23;2171:32;2168:52;;;2216:1;2213;2206:12;2168:52;2255:9;2242:23;2308:5;2301:13;2294:21;2287:5;2284:32;2274:60;;2330:1;2327;2320:12;2369:260;2437:6;2445;2498:2;2486:9;2477:7;2473:23;2469:32;2466:52;;;2514:1;2511;2504:12;2466:52;2537:29;2556:9;2537:29;:::i;:::-;2527:39;;2585:38;2619:2;2608:9;2604:18;2585:38;:::i;:::-;2575:48;;2369:260;;;;;:::o;2634:411::-;2836:2;2818:21;;;2875:2;2855:18;;;2848:30;2914:34;2909:2;2894:18;;2887:62;-1:-1:-1;;;2980:2:1;2965:18;;2958:45;3035:3;3020:19;;2634:411::o;3409:339::-;3611:2;3593:21;;;3650:2;3630:18;;;3623:30;-1:-1:-1;;;3684:2:1;3669:18;;3662:45;3739:2;3724:18;;3409:339::o;6554:127::-;6615:10;6610:3;6606:20;6603:1;6596:31;6646:4;6643:1;6636:15;6670:4;6667:1;6660:15;6686:128;6753:9;;;6774:11;;;6771:37;;;6788:18;;:::i;6819:168::-;6892:9;;;6923;;6940:15;;;6934:22;;6920:37;6910:71;;6961:18;;:::i;6992:217::-;7032:1;7058;7048:132;;7102:10;7097:3;7093:20;7090:1;7083:31;7137:4;7134:1;7127:15;7165:4;7162:1;7155:15;7048:132;-1:-1:-1;7194:9:1;;6992:217::o;7971:125::-;8036:9;;;8057:10;;;8054:36;;;8070:18;;:::i;8457:127::-;8518:10;8513:3;8509:20;8506:1;8499:31;8549:4;8546:1;8539:15;8573:4;8570:1;8563:15;8589:135;8628:3;8649:17;;;8646:43;;8669:18;;:::i;:::-;-1:-1:-1;8716:1:1;8705:13;;8589:135::o

Swarm Source

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