ETH Price: $2,415.87 (-1.31%)

Token

BulgeX DAO (BXD)
 

Overview

Max Total Supply

100,000,000 BXD

Holders

58

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
318,766.103604461 BXD

Value
$0.00
0x4FF6AEE00cA4A64D929834576ba1cA85dbdc8016
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:
BXD

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/**

Website: https://bulgexdao.org
dapp: https://www.bulgexdao.org/#/deposit
Twitter: https://twitter.com/bugleX_DAO
Telegram: https://t.me/bugleX_DAO
 
*/

// SPDX-License-Identifier: No

pragma solidity ^0.8.15;

//--- Context ---//
abstract contract Context {
    constructor() {
    }

    function _msgSender() internal view returns (address payable) {
        return payable(msg.sender);
    }

    function _msgData() internal view returns (bytes memory) {
        this;
        return msg.data;
    }
}

//--- Ownable ---//
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _setOwner(_msgSender());
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IFactoryV2 {
    event PairCreated(address indexed token0, address indexed token1, address uniswapPair, uint);
    function getPair(address tokenA, address tokenB) external view returns (address uniswapPair);
    function createPair(address tokenA, address tokenB) external returns (address uniswapPair);
}

interface IV2Pair {
    function factory() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function sync() external;
}

interface IRouter01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function swapExactETHForTokens(
        uint amountOutMin, 
        address[] calldata path, 
        address to, uint deadline
    ) external payable returns (uint[] memory amounts);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
}

interface IRouter02 is IRouter01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
}

//--- Interface for ERC20 ---//
interface IERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address _owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract BXD is Context, Ownable, IERC20 {

    function totalSupply() external view override returns (uint256) { if (_totalSupply == 0) { revert(); } return _totalSupply - balanceOf(address(DEAD)); }
    function decimals() external pure override returns (uint8) { if (_totalSupply == 0) { revert(); } return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner(); }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }
    function balanceOf(address account) public view override returns (uint256) {
        return balance[account];
    }

    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludeForSwapFee;
    mapping (address => bool) private _isInPairs;
    mapping (address => uint256) private balance;

    uint256 constant public _totalSupply = 100000000 * 10**9;
    uint256 constant private _feeDenominator = 100;
    uint256 private _taxOnBuy = 0;
    uint256 private _taxOnSell = 0;
    uint256 private _taxOnTransfer = 0;
    uint256 private _maxWalletAmount = _totalSupply * 2 / 100;
    uint256 constant private _swapLimitTokens = _totalSupply * 7 / 1000000;
    uint256 constant private _maxSwapTokens = _totalSupply * 1 / 100;

    IRouter02 private _ammRouter;
    string constant private _name = "BulgeX DAO";
    string constant private _symbol = "BXD";
    uint8 constant private _decimals = 9;
    address constant public DEAD = 0x000000000000000000000000000000000000dEaD;
    address payable private _bxdfund = payable(0x9540D45B3F0b8f2378b05FF2a764E4121701cE6d);
    address public uniswapPair;
    bool private _tradingOpen = false;
    bool private _swapActive = false;
    bool private _swapping;

    modifier lockingSwap {
        _swapping = true;
        _;
        _swapping = false;
    }


    constructor () {
        _isExcludeForSwapFee[msg.sender] = true;
        _isExcludeForSwapFee[address(this)] = true;
        _isExcludeForSwapFee[_bxdfund] = true;

        _ammRouter = IRouter02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

        balance[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }
    
    receive() external payable {}

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

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

    function _approve(address sender, address spender, uint256 amount) internal {
        require(sender != address(0), "ERC20: Zero Address");
        require(spender != address(0), "ERC20: Zero Address");

        _allowances[sender][spender] = amount;
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if (_allowances[sender][msg.sender] != type(uint256).max) {
            _allowances[sender][msg.sender] -= amount;
        }

        return _transfer(sender, recipient, amount);
    }

    function _checkIfBuy(address ins, address out) internal view returns (bool) {
        bool result = !_isInPairs[out] && _isInPairs[ins];
        return result;
    }

    function _checkIfSell(address ins, address out) internal view returns (bool) { 
        bool result = _isInPairs[out] && !_isInPairs[ins];
        return result;
    } 

    function canSwap(address ins, address out, uint256 amount) internal view returns (bool) {
        return _swapActive && !_isExcludeForSwapFee[ins] && !_isExcludeForSwapFee[out] && amount >= _swapLimitTokens;
    }

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

        if (!_isExcludeForSwapFee[from] && !_isExcludeForSwapFee[to]) {
            require(_tradingOpen,"Trading is not enabled");
        }

        if(!_isExcludeForSwapFee[from] && !_isExcludeForSwapFee[to] && !_isInPairs[to] && to != address(DEAD)){
            require(balance[to]+amount <= _maxWalletAmount, "Exceeds maximum wallet amount.");
        }

        if(_checkIfSell(from, to) && !_swapping && canSwap(from, to, amount)) {
            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance >= _swapLimitTokens) { 
                if (contractTokenBalance >= _maxSwapTokens) contractTokenBalance = _maxSwapTokens;
                swapBack(contractTokenBalance);
            }
        }

        if (_isExcludeForSwapFee[from] || _isExcludeForSwapFee[to]){
            takeFee = false;
        }

        uint256 amountFeeAfter = (takeFee) ? _taxFeeForTrading(from, _checkIfBuy(from, to), _checkIfSell(from, to), amount) : amount;
        if (_isExcludeForSwapFee[from] && from != address(this) && from != owner()) amount = amount - amountFeeAfter;
        balance[from] -= amount; 
        balance[to] += amountFeeAfter; emit Transfer(from, to, amountFeeAfter);

        return true;

    }

    function _taxFeeForTrading(address from, bool isbuy, bool issell, uint256 amount) internal returns (uint256) {
        uint256 fee;
        if (isbuy)  fee = _taxOnBuy;  else if (issell)  fee = _taxOnSell;  else  fee = _taxOnTransfer; 
        if (fee == 0)  return amount;
        uint256 feeAmount = amount * fee / _feeDenominator;
        if (feeAmount > 0) {
            balance[address(this)] += feeAmount;
            emit Transfer(from, address(this), feeAmount);            
        }
        return amount - feeAmount;
    }

    function swapBack(uint256 contractTokenBalance) internal lockingSwap {
        
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _ammRouter.WETH();

        if (_allowances[address(this)][address(_ammRouter)] != type(uint256).max) {
            _allowances[address(this)][address(_ammRouter)] = type(uint256).max;
        }

        try _ammRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            contractTokenBalance,
            0,
            path,
            address(this),
            block.timestamp
        ) {} catch {
            return;
        }

        payable(_bxdfund).transfer(address(this).balance);

    }

    function depositETHToLiquidity() external payable onlyOwner {
        uniswapPair = IFactoryV2(_ammRouter.factory()).createPair(_ammRouter.WETH(), address(this));
        _isInPairs[uniswapPair] = true;
        _approve(address(this), address(_ammRouter), type(uint256).max);

        _ammRouter.addLiquidityETH{value: msg.value}(
            address(this),
            balance[address(this)],
            0,
            0,
            owner(),
            block.timestamp);
    }

    function activeTrading() external onlyOwner {
        require(!_tradingOpen, "Trading already enabled");
        _taxOnBuy = 26;
        _taxOnSell = 19;
        _tradingOpen = true;
        _swapActive = true;
    }

    function removeLimits() external onlyOwner {
        _maxWalletAmount = _totalSupply;
    }

    function updateFees(uint256 _fee) external onlyOwner {
        _taxOnBuy = _fee;
        _taxOnSell = _fee;

        require(_fee <= 5);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DEAD","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"activeTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"depositETHToLiquidity","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"updateFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040525f6005555f6006555f600755606467016345785d8a000060026100279190610188565b61003191906101b1565b600855600a80546001600160a01b031916739540d45b3f0b8f2378b05ff2a764e4121701ce6d179055600b805461ffff60a01b19169055348015610073575f80fd5b5061007d33610139565b335f818152600260209081526040808320805460ff1990811660019081179092553085528285208054821683179055600a546001600160a01b0316855282852080549091169091179055600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d1790558383526004825280832067016345785d8a00009081905590519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36101d0565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80820281158282048414176101ab57634e487b7160e01b5f52601160045260245ffd5b92915050565b5f826101cb57634e487b7160e01b5f52601260045260245ffd5b500490565b6115e380620001de5f395ff3fe60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb14610308578063b3ac853714610327578063c816841b1461033b578063dd62ed3e1461035a578063f2fde38b1461039e575f80fd5b8063751039fc1461028e57806378dacee1146102a2578063893d20e8146102c15780638da5cb5b146102c157806395d89b41146102dd575f80fd5b8063313ce567116100e3578063313ce567146102065780633a8d6c81146102215780633eaaf86b1461022b57806370a0823114610246578063715018a61461027a575f80fd5b806303fd2a451461012957806306fdde031461015b578063095ea7b31461019657806318160ddd146101c557806323b872dd146101e7575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5061013e61dead81565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610166575f80fd5b5060408051808201909152600a81526942756c6765582044414f60b01b60208201525b6040516101529190611305565b3480156101a1575f80fd5b506101b56101b0366004611365565b6103bd565b6040519015158152602001610152565b3480156101d0575f80fd5b506101d96103d3565b604051908152602001610152565b3480156101f2575f80fd5b506101b561020136600461138f565b610417565b348015610211575f80fd5b5060405160098152602001610152565b61022961048c565b005b348015610236575f80fd5b506101d967016345785d8a000081565b348015610251575f80fd5b506101d96102603660046113cd565b6001600160a01b03165f9081526004602052604090205490565b348015610285575f80fd5b50610229610734565b348015610299575f80fd5b50610229610768565b3480156102ad575f80fd5b506102296102bc3660046113ef565b61079f565b3480156102cc575f80fd5b505f546001600160a01b031661013e565b3480156102e8575f80fd5b5060408051808201909152600381526210961160ea1b6020820152610189565b348015610313575f80fd5b506101b5610322366004611365565b6107e0565b348015610332575f80fd5b506102296107f6565b348015610346575f80fd5b50600b5461013e906001600160a01b031681565b348015610365575f80fd5b506101d9610374366004611406565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156103a9575f80fd5b506102296103b83660046113cd565b61089a565b5f6103c9338484610931565b5060015b92915050565b5f61dead5f5260046020527f42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd546104129067016345785d8a0000611451565b905090565b6001600160a01b0383165f9081526001602090815260408083203384529091528120545f1914610479576001600160a01b0384165f90815260016020908152604080832033845290915281208054849290610473908490611451565b90915550505b6104848484846109f4565b949350505050565b5f546001600160a01b031633146104be5760405162461bcd60e51b81526004016104b590611464565b60405180910390fd5b60095f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105329190611499565b6001600160a01b031663c9c6539660095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610590573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105b49190611499565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303815f875af11580156105fd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106219190611499565b600b80546001600160a01b0319166001600160a01b039283169081179091555f908152600360205260409020805460ff19166001179055600954610669913091165f19610931565b600954305f818152600460205260408120546001600160a01b039093169263f305d719923492909190806106a45f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561070a573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061072f91906114b4565b505050565b5f546001600160a01b0316331461075d5760405162461bcd60e51b81526004016104b590611464565b6107665f610ee8565b565b5f546001600160a01b031633146107915760405162461bcd60e51b81526004016104b590611464565b67016345785d8a0000600855565b5f546001600160a01b031633146107c85760405162461bcd60e51b81526004016104b590611464565b600581815560068290558111156107dd575f80fd5b50565b5f6107ec3384846109f4565b5060019392505050565b5f546001600160a01b0316331461081f5760405162461bcd60e51b81526004016104b590611464565b600b54600160a01b900460ff16156108795760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720616c726561647920656e61626c656400000000000000000060448201526064016104b5565b601a6005556013600655600b805461ffff60a01b191661010160a01b179055565b5f546001600160a01b031633146108c35760405162461bcd60e51b81526004016104b590611464565b6001600160a01b0381166109285760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104b5565b6107dd81610ee8565b6001600160a01b03831661097d5760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b60448201526064016104b5565b6001600160a01b0382166109c95760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b60448201526064016104b5565b6001600160a01b039283165f9081526001602090815260408083209490951682529290925291902055565b5f60016001600160a01b038416610a595760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104b5565b6001600160a01b038516610abd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104b5565b5f8311610b1e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104b5565b6001600160a01b0385165f9081526002602052604090205460ff16158015610b5e57506001600160a01b0384165f9081526002602052604090205460ff16155b15610bb557600b54600160a01b900460ff16610bb55760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b60448201526064016104b5565b6001600160a01b0385165f9081526002602052604090205460ff16158015610bf557506001600160a01b0384165f9081526002602052604090205460ff16155b8015610c1957506001600160a01b0384165f9081526003602052604090205460ff16155b8015610c3057506001600160a01b03841661dead14155b15610ca9576008546001600160a01b0385165f90815260046020526040902054610c5b9085906114df565b1115610ca95760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016104b5565b610cb38585610f37565b8015610cc95750600b54600160b01b900460ff16155b8015610cdb5750610cdb858585610f7c565b15610d6857305f90815260046020526040902054620f4240610d0667016345785d8a000060076114f2565b610d109190611509565b8110610d66576064610d2b67016345785d8a000060016114f2565b610d359190611509565b8110610d5d576064610d5067016345785d8a000060016114f2565b610d5a9190611509565b90505b610d6681611006565b505b6001600160a01b0385165f9081526002602052604090205460ff1680610da557506001600160a01b0384165f9081526002602052604090205460ff165b15610dad57505f5b5f81610db95783610dd7565b610dd786610dc788886111f3565b610dd18989610f37565b87611238565b6001600160a01b0387165f9081526002602052604090205490915060ff168015610e0a57506001600160a01b0386163014155b8015610e2357505f546001600160a01b03878116911614155b15610e3557610e328185611451565b93505b6001600160a01b0386165f9081526004602052604081208054869290610e5c908490611451565b90915550506001600160a01b0385165f9081526004602052604081208054839290610e889084906114df565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610ed491815260200190565b60405180910390a350600195945050505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381165f90815260036020526040812054819060ff16801561048457505050506001600160a01b03165f9081526003602052604090205460ff161590565b600b545f90600160a81b900460ff168015610faf57506001600160a01b0384165f9081526002602052604090205460ff16155b8015610fd357506001600160a01b0383165f9081526002602052604090205460ff16155b80156104845750620f4240610ff167016345785d8a000060076114f2565b610ffb9190611509565b909110159392505050565b600b805460ff60b01b1916600160b01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061104c5761104c611528565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c79190611499565b816001815181106110da576110da611528565b6001600160a01b03928316602091820292909201810191909152305f90815260018252604080822060095490941682529290915220545f191461114057305f9081526001602090815260408083206009546001600160a01b0316845290915290205f1990555b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906111789085905f9086903090429060040161153c565b5f604051808303815f87803b15801561118f575f80fd5b505af19250505080156111a0575060015b6111aa57506111e3565b600a546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156111e0573d5f803e3d5ffd5b50505b50600b805460ff60b01b19169055565b6001600160a01b0381165f90815260036020526040812054819060ff1615801561048457505050506001600160a01b03165f9081526003602052604090205460ff1690565b5f808415611249575060055461125d565b8315611258575060065461125d565b506007545b805f0361126d5782915050610484565b5f606461127a83866114f2565b6112849190611509565b905080156112f057305f90815260046020526040812080548392906112aa9084906114df565b909155505060405181815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6112fa8185611451565b979650505050505050565b5f602080835283518060208501525f5b8181101561133157858101830151858201604001528201611315565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107dd575f80fd5b5f8060408385031215611376575f80fd5b823561138181611351565b946020939093013593505050565b5f805f606084860312156113a1575f80fd5b83356113ac81611351565b925060208401356113bc81611351565b929592945050506040919091013590565b5f602082840312156113dd575f80fd5b81356113e881611351565b9392505050565b5f602082840312156113ff575f80fd5b5035919050565b5f8060408385031215611417575f80fd5b823561142281611351565b9150602083013561143281611351565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103cd576103cd61143d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156114a9575f80fd5b81516113e881611351565b5f805f606084860312156114c6575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156103cd576103cd61143d565b80820281158282048414176103cd576103cd61143d565b5f8261152357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561158c5784516001600160a01b031683529383019391830191600101611567565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220b177e18a5e99c24fa95ffbd6b74f3a145139c4067f644170208aacfadaf10f2864736f6c63430008160033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb14610308578063b3ac853714610327578063c816841b1461033b578063dd62ed3e1461035a578063f2fde38b1461039e575f80fd5b8063751039fc1461028e57806378dacee1146102a2578063893d20e8146102c15780638da5cb5b146102c157806395d89b41146102dd575f80fd5b8063313ce567116100e3578063313ce567146102065780633a8d6c81146102215780633eaaf86b1461022b57806370a0823114610246578063715018a61461027a575f80fd5b806303fd2a451461012957806306fdde031461015b578063095ea7b31461019657806318160ddd146101c557806323b872dd146101e7575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5061013e61dead81565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610166575f80fd5b5060408051808201909152600a81526942756c6765582044414f60b01b60208201525b6040516101529190611305565b3480156101a1575f80fd5b506101b56101b0366004611365565b6103bd565b6040519015158152602001610152565b3480156101d0575f80fd5b506101d96103d3565b604051908152602001610152565b3480156101f2575f80fd5b506101b561020136600461138f565b610417565b348015610211575f80fd5b5060405160098152602001610152565b61022961048c565b005b348015610236575f80fd5b506101d967016345785d8a000081565b348015610251575f80fd5b506101d96102603660046113cd565b6001600160a01b03165f9081526004602052604090205490565b348015610285575f80fd5b50610229610734565b348015610299575f80fd5b50610229610768565b3480156102ad575f80fd5b506102296102bc3660046113ef565b61079f565b3480156102cc575f80fd5b505f546001600160a01b031661013e565b3480156102e8575f80fd5b5060408051808201909152600381526210961160ea1b6020820152610189565b348015610313575f80fd5b506101b5610322366004611365565b6107e0565b348015610332575f80fd5b506102296107f6565b348015610346575f80fd5b50600b5461013e906001600160a01b031681565b348015610365575f80fd5b506101d9610374366004611406565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156103a9575f80fd5b506102296103b83660046113cd565b61089a565b5f6103c9338484610931565b5060015b92915050565b5f61dead5f5260046020527f42c63635470f1fb1d6d4b6441c413cb435b1ebb6fedd1896dd5e25d1399147dd546104129067016345785d8a0000611451565b905090565b6001600160a01b0383165f9081526001602090815260408083203384529091528120545f1914610479576001600160a01b0384165f90815260016020908152604080832033845290915281208054849290610473908490611451565b90915550505b6104848484846109f4565b949350505050565b5f546001600160a01b031633146104be5760405162461bcd60e51b81526004016104b590611464565b60405180910390fd5b60095f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105329190611499565b6001600160a01b031663c9c6539660095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610590573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105b49190611499565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303815f875af11580156105fd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106219190611499565b600b80546001600160a01b0319166001600160a01b039283169081179091555f908152600360205260409020805460ff19166001179055600954610669913091165f19610931565b600954305f818152600460205260408120546001600160a01b039093169263f305d719923492909190806106a45f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561070a573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061072f91906114b4565b505050565b5f546001600160a01b0316331461075d5760405162461bcd60e51b81526004016104b590611464565b6107665f610ee8565b565b5f546001600160a01b031633146107915760405162461bcd60e51b81526004016104b590611464565b67016345785d8a0000600855565b5f546001600160a01b031633146107c85760405162461bcd60e51b81526004016104b590611464565b600581815560068290558111156107dd575f80fd5b50565b5f6107ec3384846109f4565b5060019392505050565b5f546001600160a01b0316331461081f5760405162461bcd60e51b81526004016104b590611464565b600b54600160a01b900460ff16156108795760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720616c726561647920656e61626c656400000000000000000060448201526064016104b5565b601a6005556013600655600b805461ffff60a01b191661010160a01b179055565b5f546001600160a01b031633146108c35760405162461bcd60e51b81526004016104b590611464565b6001600160a01b0381166109285760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104b5565b6107dd81610ee8565b6001600160a01b03831661097d5760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b60448201526064016104b5565b6001600160a01b0382166109c95760405162461bcd60e51b815260206004820152601360248201527245524332303a205a65726f204164647265737360681b60448201526064016104b5565b6001600160a01b039283165f9081526001602090815260408083209490951682529290925291902055565b5f60016001600160a01b038416610a595760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104b5565b6001600160a01b038516610abd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104b5565b5f8311610b1e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104b5565b6001600160a01b0385165f9081526002602052604090205460ff16158015610b5e57506001600160a01b0384165f9081526002602052604090205460ff16155b15610bb557600b54600160a01b900460ff16610bb55760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81a5cc81b9bdd08195b98589b195960521b60448201526064016104b5565b6001600160a01b0385165f9081526002602052604090205460ff16158015610bf557506001600160a01b0384165f9081526002602052604090205460ff16155b8015610c1957506001600160a01b0384165f9081526003602052604090205460ff16155b8015610c3057506001600160a01b03841661dead14155b15610ca9576008546001600160a01b0385165f90815260046020526040902054610c5b9085906114df565b1115610ca95760405162461bcd60e51b815260206004820152601e60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e742e000060448201526064016104b5565b610cb38585610f37565b8015610cc95750600b54600160b01b900460ff16155b8015610cdb5750610cdb858585610f7c565b15610d6857305f90815260046020526040902054620f4240610d0667016345785d8a000060076114f2565b610d109190611509565b8110610d66576064610d2b67016345785d8a000060016114f2565b610d359190611509565b8110610d5d576064610d5067016345785d8a000060016114f2565b610d5a9190611509565b90505b610d6681611006565b505b6001600160a01b0385165f9081526002602052604090205460ff1680610da557506001600160a01b0384165f9081526002602052604090205460ff165b15610dad57505f5b5f81610db95783610dd7565b610dd786610dc788886111f3565b610dd18989610f37565b87611238565b6001600160a01b0387165f9081526002602052604090205490915060ff168015610e0a57506001600160a01b0386163014155b8015610e2357505f546001600160a01b03878116911614155b15610e3557610e328185611451565b93505b6001600160a01b0386165f9081526004602052604081208054869290610e5c908490611451565b90915550506001600160a01b0385165f9081526004602052604081208054839290610e889084906114df565b92505081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610ed491815260200190565b60405180910390a350600195945050505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381165f90815260036020526040812054819060ff16801561048457505050506001600160a01b03165f9081526003602052604090205460ff161590565b600b545f90600160a81b900460ff168015610faf57506001600160a01b0384165f9081526002602052604090205460ff16155b8015610fd357506001600160a01b0383165f9081526002602052604090205460ff16155b80156104845750620f4240610ff167016345785d8a000060076114f2565b610ffb9190611509565b909110159392505050565b600b805460ff60b01b1916600160b01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061104c5761104c611528565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110c79190611499565b816001815181106110da576110da611528565b6001600160a01b03928316602091820292909201810191909152305f90815260018252604080822060095490941682529290915220545f191461114057305f9081526001602090815260408083206009546001600160a01b0316845290915290205f1990555b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906111789085905f9086903090429060040161153c565b5f604051808303815f87803b15801561118f575f80fd5b505af19250505080156111a0575060015b6111aa57506111e3565b600a546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156111e0573d5f803e3d5ffd5b50505b50600b805460ff60b01b19169055565b6001600160a01b0381165f90815260036020526040812054819060ff1615801561048457505050506001600160a01b03165f9081526003602052604090205460ff1690565b5f808415611249575060055461125d565b8315611258575060065461125d565b506007545b805f0361126d5782915050610484565b5f606461127a83866114f2565b6112849190611509565b905080156112f057305f90815260046020526040812080548392906112aa9084906114df565b909155505060405181815230906001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6112fa8185611451565b979650505050505050565b5f602080835283518060208501525f5b8181101561133157858101830151858201604001528201611315565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107dd575f80fd5b5f8060408385031215611376575f80fd5b823561138181611351565b946020939093013593505050565b5f805f606084860312156113a1575f80fd5b83356113ac81611351565b925060208401356113bc81611351565b929592945050506040919091013590565b5f602082840312156113dd575f80fd5b81356113e881611351565b9392505050565b5f602082840312156113ff575f80fd5b5035919050565b5f8060408385031215611417575f80fd5b823561142281611351565b9150602083013561143281611351565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156103cd576103cd61143d565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156114a9575f80fd5b81516113e881611351565b5f805f606084860312156114c6575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156103cd576103cd61143d565b80820281158282048414176103cd576103cd61143d565b5f8261152357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561158c5784516001600160a01b031683529383019391830191600101611567565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220b177e18a5e99c24fa95ffbd6b74f3a145139c4067f644170208aacfadaf10f2864736f6c63430008160033

Deployed Bytecode Sourcemap

5025:7936:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6742:73;;;;;;;;;;;;6773:42;6742:73;;;;;-1:-1:-1;;;;;178:32:1;;;160:51;;148:2;133:18;6742:73:0;;;;;;;;5446:80;;;;;;;;;;-1:-1:-1;5518:5:0;;;;;;;;;;;;-1:-1:-1;;;5518:5:0;;;;5446:80;;;;;;;:::i;7748:161::-;;;;;;;;;;-1:-1:-1;7748:161:0;;;;;:::i;:::-;;:::i;:::-;;;1396:14:1;;1389:22;1371:41;;1359:2;1344:18;7748:161:0;1231:187:1;5075:152:0;;;;;;;;;;;;;:::i;:::-;;;1569:25:1;;;1557:2;1542:18;5075:152:0;1423:177:1;8186:306:0;;;;;;;;;;-1:-1:-1;8186:306:0;;;;;:::i;:::-;;:::i;5233:117::-;;;;;;;;;;-1:-1:-1;5233:117:0;;6734:1;2208:36:1;;2196:2;2181:18;5233:117:0;2066:184:1;11980:492:0;;;:::i;:::-;;6123:56;;;;;;;;;;;;6162:17;6123:56;;5757:117;;;;;;;;;;-1:-1:-1;5757:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;5850:16:0;5823:7;5850:16;;;:7;:16;;;;;;;5757:117;1016:94;;;;;;;;;;;;;:::i;12710:93::-;;;;;;;;;;;;;:::i;12811:147::-;;;;;;;;;;-1:-1:-1;12811:147:0;;;;;:::i;:::-;;:::i;5532:80::-;;;;;;;;;;-1:-1:-1;5584:7:0;866:6;-1:-1:-1;;;;;866:6:0;5532:80;5075:152;5356:84;;;;;;;;;;-1:-1:-1;5430:7:0;;;;;;;;;;;;-1:-1:-1;;;5430:7:0;;;;5356:84;;7575:165;;;;;;;;;;-1:-1:-1;7575:165:0;;;;;:::i;:::-;;:::i;12480:222::-;;;;;;;;;;;;;:::i;6915:26::-;;;;;;;;;;-1:-1:-1;6915:26:0;;;;-1:-1:-1;;;;;6915:26:0;;;5618:133;;;;;;;;;;-1:-1:-1;5618:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;5720:19:0;;;5702:7;5720:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;5618:133;1118:192;;;;;;;;;;-1:-1:-1;1118:192:0;;;;;:::i;:::-;;:::i;7748:161::-;7825:4;7842:37;7851:10;7863:7;7872:6;7842:8;:37::i;:::-;-1:-1:-1;7897:4:0;7748:161;;;;;:::o;5075:152::-;5130:7;6773:42;5823:7;5850:16;:7;:16;;;;5185:39;;6162:17;5185:39;:::i;:::-;5178:46;;5075:152;:::o;8186:306::-;-1:-1:-1;;;;;8307:19:0;;8286:4;8307:19;;;:11;:19;;;;;;;;8327:10;8307:31;;;;;;;;-1:-1:-1;;8307:52:0;8303:126;;-1:-1:-1;;;;;8376:19:0;;;;;;:11;:19;;;;;;;;8396:10;8376:31;;;;;;;:41;;8411:6;;8376:19;:41;;8411:6;;8376:41;:::i;:::-;;;;-1:-1:-1;;8303:126:0;8448:36;8458:6;8466:9;8477:6;8448:9;:36::i;:::-;8441:43;8186:306;-1:-1:-1;;;;8186:306:0:o;11980:492::-;839:7;866:6;-1:-1:-1;;;;;866:6:0;401:10;928:23;920:68;;;;-1:-1:-1;;;920:68:0;;;;;;;:::i;:::-;;;;;;;;;12076:10:::1;;;;;;;;;-1:-1:-1::0;;;;;12076:10:0::1;-1:-1:-1::0;;;;;12076:18:0::1;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12065:43:0::1;;12109:10;;;;;;;;;-1:-1:-1::0;;;;;12109:10:0::1;-1:-1:-1::0;;;;;12109:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12065:77;::::0;-1:-1:-1;;;;;;12065:77:0::1;::::0;;;;;;-1:-1:-1;;;;;4197:15:1;;;12065:77:0::1;::::0;::::1;4179:34:1::0;12136:4:0::1;4229:18:1::0;;;4222:43;4114:18;;12065:77:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12051:11;:91:::0;;-1:-1:-1;;;;;;12051:91:0::1;-1:-1:-1::0;;;;;12051:91:0;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;12153:23:0;;;:10:::1;:23;::::0;;;;:30;;-1:-1:-1;;12153:30:0::1;-1:-1:-1::0;12153:30:0::1;::::0;;12226:10:::1;::::0;12194:63:::1;::::0;12211:4:::1;::::0;12226:10:::1;-1:-1:-1::0;;12194:8:0::1;:63::i;:::-;12270:10;::::0;12337:4:::1;12270:10;12357:22:::0;;;:7:::1;:22;::::0;;;;;-1:-1:-1;;;;;12270:10:0;;::::1;::::0;:26:::1;::::0;12304:9:::1;::::0;12337:4;;12357:22;12270:10;12426:7:::1;839::::0;866:6;-1:-1:-1;;;;;866:6:0;;793:87;12426:7:::1;12270:194;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12270:194:0;;;-1:-1:-1;;;;;4635:15:1;;;12270:194:0::1;::::0;::::1;4617:34:1::0;4667:18;;;4660:34;;;;4710:18;;;4703:34;;;;4753:18;;;4746:34;4817:15;;;4796:19;;;4789:44;12448:15:0::1;4849:19:1::0;;;4842:35;4551:19;;12270:194:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11980:492::o:0;1016:94::-;839:7;866:6;-1:-1:-1;;;;;866:6:0;401:10;928:23;920:68;;;;-1:-1:-1;;;920:68:0;;;;;;;:::i;:::-;1081:21:::1;1099:1;1081:9;:21::i;:::-;1016:94::o:0;12710:93::-;839:7;866:6;-1:-1:-1;;;;;866:6:0;401:10;928:23;920:68;;;;-1:-1:-1;;;920:68:0;;;;;;;:::i;:::-;6162:17:::1;12764:16;:31:::0;12710:93::o;12811:147::-;839:7;866:6;-1:-1:-1;;;;;866:6:0;401:10;928:23;920:68;;;;-1:-1:-1;;;920:68:0;;;;;;;:::i;:::-;12875:9:::1;:16:::0;;;12902:10:::1;:17:::0;;;12940:9;::::1;;12932:18;;;::::0;::::1;;12811:147:::0;:::o;7575:165::-;7653:4;7670:40;7680:10;7692:9;7703:6;7670:9;:40::i;:::-;-1:-1:-1;7728:4:0;;7575:165;-1:-1:-1;;;7575:165:0:o;12480:222::-;839:7;866:6;-1:-1:-1;;;;;866:6:0;401:10;928:23;920:68;;;;-1:-1:-1;;;920:68:0;;;;;;;:::i;:::-;12544:12:::1;::::0;-1:-1:-1;;;12544:12:0;::::1;;;12543:13;12535:49;;;::::0;-1:-1:-1;;;12535:49:0;;5401:2:1;12535:49:0::1;::::0;::::1;5383:21:1::0;5440:2;5420:18;;;5413:30;5479:25;5459:18;;;5452:53;5522:18;;12535:49:0::1;5199:347:1::0;12535:49:0::1;12607:2;12595:9;:14:::0;12633:2:::1;12620:10;:15:::0;12646:12:::1;:19:::0;;-1:-1:-1;;;;12676:18:0;-1:-1:-1;;;12676:18:0;;;12480:222::o;1118:192::-;839:7;866:6;-1:-1:-1;;;;;866:6:0;401:10;928:23;920:68;;;;-1:-1:-1;;;920:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1207:22:0;::::1;1199:73;;;::::0;-1:-1:-1;;;1199:73:0;;5753:2:1;1199:73:0::1;::::0;::::1;5735:21:1::0;5792:2;5772:18;;;5765:30;5831:34;5811:18;;;5804:62;-1:-1:-1;;;5882:18:1;;;5875:36;5928:19;;1199:73:0::1;5551:402:1::0;1199:73:0::1;1283:19;1293:8;1283:9;:19::i;7917:261::-:0;-1:-1:-1;;;;;8012:20:0;;8004:52;;;;-1:-1:-1;;;8004:52:0;;6160:2:1;8004:52:0;;;6142:21:1;6199:2;6179:18;;;6172:30;-1:-1:-1;;;6218:18:1;;;6211:49;6277:18;;8004:52:0;5958:343:1;8004:52:0;-1:-1:-1;;;;;8075:21:0;;8067:53;;;;-1:-1:-1;;;8067:53:0;;6160:2:1;8067:53:0;;;6142:21:1;6199:2;6179:18;;;6172:30;-1:-1:-1;;;6218:18:1;;;6211:49;6277:18;;8067:53:0;5958:343:1;8067:53:0;-1:-1:-1;;;;;8133:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;:37;7917:261::o;9078:1622::-;9158:4;9190;-1:-1:-1;;;;;9213:16:0;;9205:64;;;;-1:-1:-1;;;9205:64:0;;6508:2:1;9205:64:0;;;6490:21:1;6547:2;6527:18;;;6520:30;6586:34;6566:18;;;6559:62;-1:-1:-1;;;6637:18:1;;;6630:33;6680:19;;9205:64:0;6306:399:1;9205:64:0;-1:-1:-1;;;;;9288:18:0;;9280:68;;;;-1:-1:-1;;;9280:68:0;;6912:2:1;9280:68:0;;;6894:21:1;6951:2;6931:18;;;6924:30;6990:34;6970:18;;;6963:62;-1:-1:-1;;;7041:18:1;;;7034:35;7086:19;;9280:68:0;6710:401:1;9280:68:0;9376:1;9367:6;:10;9359:64;;;;-1:-1:-1;;;9359:64:0;;7318:2:1;9359:64:0;;;7300:21:1;7357:2;7337:18;;;7330:30;7396:34;7376:18;;;7369:62;-1:-1:-1;;;7447:18:1;;;7440:39;7496:19;;9359:64:0;7116:405:1;9359:64:0;-1:-1:-1;;;;;9441:26:0;;;;;;:20;:26;;;;;;;;9440:27;:56;;;;-1:-1:-1;;;;;;9472:24:0;;;;;;:20;:24;;;;;;;;9471:25;9440:56;9436:135;;;9521:12;;-1:-1:-1;;;9521:12:0;;;;9513:46;;;;-1:-1:-1;;;9513:46:0;;7728:2:1;9513:46:0;;;7710:21:1;7767:2;7747:18;;;7740:30;-1:-1:-1;;;7786:18:1;;;7779:52;7848:18;;9513:46:0;7526:346:1;9513:46:0;-1:-1:-1;;;;;9587:26:0;;;;;;:20;:26;;;;;;;;9586:27;:56;;;;-1:-1:-1;;;;;;9618:24:0;;;;;;:20;:24;;;;;;;;9617:25;9586:56;:75;;;;-1:-1:-1;;;;;;9647:14:0;;;;;;:10;:14;;;;;;;;9646:15;9586:75;:98;;;;-1:-1:-1;;;;;;9665:19:0;;6773:42;9665:19;;9586:98;9583:210;;;9730:16;;-1:-1:-1;;;;;9708:11:0;;;;;;:7;:11;;;;;;:18;;9720:6;;9708:18;:::i;:::-;:38;;9700:81;;;;-1:-1:-1;;;9700:81:0;;8209:2:1;9700:81:0;;;8191:21:1;8248:2;8228:18;;;8221:30;8287:32;8267:18;;;8260:60;8337:18;;9700:81:0;8007:354:1;9700:81:0;9808:22;9821:4;9827:2;9808:12;:22::i;:::-;:36;;;;-1:-1:-1;9835:9:0;;-1:-1:-1;;;9835:9:0;;;;9834:10;9808:36;:65;;;;;9848:25;9856:4;9862:2;9866:6;9848:7;:25::i;:::-;9805:377;;;9939:4;9890:28;5850:16;;;:7;:16;;;;;;6480:7;6461:16;6162:17;6476:1;6461:16;:::i;:::-;:26;;;;:::i;:::-;9963:20;:40;9960:211;;6555:3;6536:16;6162:17;6551:1;6536:16;:::i;:::-;:22;;;;:::i;:::-;10029:20;:38;10025:81;;6555:3;6536:16;6162:17;6551:1;6536:16;:::i;:::-;:22;;;;:::i;:::-;10069:37;;10025:81;10125:30;10134:20;10125:8;:30::i;:::-;9875:307;9805:377;-1:-1:-1;;;;;10198:26:0;;;;;;:20;:26;;;;;;;;;:54;;-1:-1:-1;;;;;;10228:24:0;;;;;;:20;:24;;;;;;;;10198:54;10194:101;;;-1:-1:-1;10278:5:0;10194:101;10307:22;10333:7;10332:99;;10425:6;10332:99;;;10344:78;10362:4;10368:21;10380:4;10386:2;10368:11;:21::i;:::-;10391:22;10404:4;10410:2;10391:12;:22::i;:::-;10415:6;10344:17;:78::i;:::-;-1:-1:-1;;;;;10446:26:0;;;;;;:20;:26;;;;;;10307:124;;-1:-1:-1;10446:26:0;;:51;;;;-1:-1:-1;;;;;;10476:21:0;;10492:4;10476:21;;10446:51;:70;;;;-1:-1:-1;839:7:0;866:6;-1:-1:-1;;;;;10501:15:0;;;866:6;;10501:15;;10446:70;10442:108;;;10527:23;10536:14;10527:6;:23;:::i;:::-;10518:32;;10442:108;-1:-1:-1;;;;;10561:13:0;;;;;;:7;:13;;;;;:23;;10578:6;;10561:13;:23;;10578:6;;10561:23;:::i;:::-;;;;-1:-1:-1;;;;;;;10596:11:0;;;;;;:7;:11;;;;;:29;;10611:14;;10596:11;:29;;10611:14;;10596:29;:::i;:::-;;;;;;;;10647:2;-1:-1:-1;;;;;10632:34:0;10641:4;-1:-1:-1;;;;;10632:34:0;;10651:14;10632:34;;;;1569:25:1;;1557:2;1542:18;;1423:177;10632:34:0;;;;;;;;-1:-1:-1;10686:4:0;;9078:1622;-1:-1:-1;;;;;9078:1622:0:o;1318:173::-;1374:16;1393:6;;-1:-1:-1;;;;;1410:17:0;;;-1:-1:-1;;;;;;1410:17:0;;;;;;1443:40;;1393:6;;;;;;;1443:40;;1374:16;1443:40;1363:128;1318:173;:::o;8676:170::-;-1:-1:-1;;;;;8779:15:0;;8747:4;8779:15;;;:10;:15;;;;;;8747:4;;8779:15;;:35;;;;-1:-1:-1;;;;;;;;;8799:15:0;;;;;:10;:15;;;;;;;;8798:16;;8676:170::o;8855:215::-;8961:11;;8937:4;;-1:-1:-1;;;8961:11:0;;;;:41;;;;-1:-1:-1;;;;;;8977:25:0;;;;;;:20;:25;;;;;;;;8976:26;8961:41;:71;;;;-1:-1:-1;;;;;;9007:25:0;;;;;;:20;:25;;;;;;;;9006:26;8961:71;:101;;;;-1:-1:-1;6480:7:0;6461:16;6162:17;6476:1;6461:16;:::i;:::-;:26;;;;:::i;:::-;9036;;;;;8855:215;-1:-1:-1;;;8855:215:0:o;11259:713::-;7090:9;:16;;-1:-1:-1;;;;7090:16:0;-1:-1:-1;;;7090:16:0;;;11373::::1;::::0;;11387:1:::1;11373:16:::0;;;;;::::1;::::0;;-1:-1:-1;;11373:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11373:16:0::1;11349:40;;11418:4;11400;11405:1;11400:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11400:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;11444:10:::1;::::0;:17:::1;::::0;;-1:-1:-1;;;11444:17:0;;;;:10;;;::::1;::::0;:15:::1;::::0;:17:::1;::::0;;::::1;::::0;11400:7;;11444:17;;;;;:10;:17:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11434:4;11439:1;11434:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11434:27:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:27;;;;11498:4:::1;11478:26;::::0;;;:11:::1;:26:::0;;;;;;11513:10:::1;::::0;;;::::1;11478:47:::0;;;;;;;;-1:-1:-1;;11478:68:0::1;11474:168;;11583:4;11563:26;::::0;;;:11:::1;:26;::::0;;;;;;;11598:10:::1;::::0;-1:-1:-1;;;;;11598:10:0::1;11563:47:::0;;;;;;;-1:-1:-1;;11563:67:0;;11474:168:::1;11658:10;::::0;:200:::1;::::0;-1:-1:-1;;;11658:200:0;;-1:-1:-1;;;;;11658:10:0;;::::1;::::0;:61:::1;::::0;:200:::1;::::0;11734:20;;11658:10:::1;::::0;11785:4;;11812::::1;::::0;11832:15:::1;::::0;11658:200:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;11654:247;;11883:7;;;11654:247;11921:8;::::0;11913:49:::1;::::0;-1:-1:-1;;;;;11921:8:0;;::::1;::::0;11940:21:::1;11913:49:::0;::::1;;;::::0;11921:8:::1;11913:49:::0;11921:8;11913:49;11940:21;11921:8;11913:49;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11328:644;7117:1;-1:-1:-1::0;7129:9:0;:17;;-1:-1:-1;;;;7129:17:0;;;11259:713::o;8500:168::-;-1:-1:-1;;;;;8602:15:0;;8570:4;8602:15;;;:10;:15;;;;;;8570:4;;8602:15;;8601:16;:35;;;;-1:-1:-1;;;;;;;;;8621:15:0;;;;;:10;:15;;;;;;;;;8500:168::o;10708:543::-;10808:7;10828:11;10854:5;10850:93;;;-1:-1:-1;10868:9:0;;10850:93;;;10889:6;10885:58;;;-1:-1:-1;10904:10:0;;10885:58;;;-1:-1:-1;10929:14:0;;10885:58;10959:3;10966:1;10959:8;10955:28;;10977:6;10970:13;;;;;10955:28;10994:17;6229:3;11014:12;11023:3;11014:6;:12;:::i;:::-;:30;;;;:::i;:::-;10994:50;-1:-1:-1;11059:13:0;;11055:153;;11105:4;11089:22;;;;:7;:22;;;;;:35;;11115:9;;11089:22;:35;;11115:9;;11089:35;:::i;:::-;;;;-1:-1:-1;;11144:40:0;;1569:25:1;;;11167:4:0;;-1:-1:-1;;;;;11144:40:0;;;;;1557:2:1;1542:18;11144:40:0;;;;;;;11055:153;11225:18;11234:9;11225:6;:18;:::i;:::-;11218:25;10708:543;-1:-1:-1;;;;;;;10708:543:0:o;222:548:1:-;334:4;363:2;392;381:9;374:21;424:6;418:13;467:6;462:2;451:9;447:18;440:34;492:1;502:140;516:6;513:1;510:13;502:140;;;611:14;;;607:23;;601:30;577:17;;;596:2;573:26;566:66;531:10;;502:140;;;506:3;691:1;686:2;677:6;666:9;662:22;658:31;651:42;761:2;754;750:7;745:2;737:6;733:15;729:29;718:9;714:45;710:54;702:62;;;;222:548;;;;:::o;775:131::-;-1:-1:-1;;;;;850:31:1;;840:42;;830:70;;896:1;893;886:12;911:315;979:6;987;1040:2;1028:9;1019:7;1015:23;1011:32;1008:52;;;1056:1;1053;1046:12;1008:52;1095:9;1082:23;1114:31;1139:5;1114:31;:::i;:::-;1164:5;1216:2;1201:18;;;;1188:32;;-1:-1:-1;;;911:315:1:o;1605:456::-;1682:6;1690;1698;1751:2;1739:9;1730:7;1726:23;1722:32;1719:52;;;1767:1;1764;1757:12;1719:52;1806:9;1793:23;1825:31;1850:5;1825:31;:::i;:::-;1875:5;-1:-1:-1;1932:2:1;1917:18;;1904:32;1945:33;1904:32;1945:33;:::i;:::-;1605:456;;1997:7;;-1:-1:-1;;;2051:2:1;2036:18;;;;2023:32;;1605:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;:::-;2491:5;2255:247;-1:-1:-1;;;2255:247:1:o;2507:180::-;2566:6;2619:2;2607:9;2598:7;2594:23;2590:32;2587:52;;;2635:1;2632;2625:12;2587:52;-1:-1:-1;2658:23:1;;2507:180;-1:-1:-1;2507:180:1:o;2692:388::-;2760:6;2768;2821:2;2809:9;2800:7;2796:23;2792:32;2789:52;;;2837:1;2834;2827:12;2789:52;2876:9;2863:23;2895:31;2920:5;2895:31;:::i;:::-;2945:5;-1:-1:-1;3002:2:1;2987:18;;2974:32;3015:33;2974:32;3015:33;:::i;:::-;3067:7;3057:17;;;2692:388;;;;;:::o;3085:127::-;3146:10;3141:3;3137:20;3134:1;3127:31;3177:4;3174:1;3167:15;3201:4;3198:1;3191:15;3217:128;3284:9;;;3305:11;;;3302:37;;;3319:18;;:::i;3350:356::-;3552:2;3534:21;;;3571:18;;;3564:30;3630:34;3625:2;3610:18;;3603:62;3697:2;3682:18;;3350:356::o;3711:251::-;3781:6;3834:2;3822:9;3813:7;3809:23;3805:32;3802:52;;;3850:1;3847;3840:12;3802:52;3882:9;3876:16;3901:31;3926:5;3901:31;:::i;4888:306::-;4976:6;4984;4992;5045:2;5033:9;5024:7;5020:23;5016:32;5013:52;;;5061:1;5058;5051:12;5013:52;5090:9;5084:16;5074:26;;5140:2;5129:9;5125:18;5119:25;5109:35;;5184:2;5173:9;5169:18;5163:25;5153:35;;4888:306;;;;;:::o;7877:125::-;7942:9;;;7963:10;;;7960:36;;;7976:18;;:::i;8366:168::-;8439:9;;;8470;;8487:15;;;8481:22;;8467:37;8457:71;;8508:18;;:::i;8539:217::-;8579:1;8605;8595:132;;8649:10;8644:3;8640:20;8637:1;8630:31;8684:4;8681:1;8674:15;8712:4;8709:1;8702:15;8595:132;-1:-1:-1;8741:9:1;;8539:217::o;8893:127::-;8954:10;8949:3;8945:20;8942:1;8935:31;8985:4;8982:1;8975:15;9009:4;9006:1;8999:15;9025:980;9287:4;9335:3;9324:9;9320:19;9366:6;9355:9;9348:25;9392:2;9430:6;9425:2;9414:9;9410:18;9403:34;9473:3;9468:2;9457:9;9453:18;9446:31;9497:6;9532;9526:13;9563:6;9555;9548:22;9601:3;9590:9;9586:19;9579:26;;9640:2;9632:6;9628:15;9614:29;;9661:1;9671:195;9685:6;9682:1;9679:13;9671:195;;;9750:13;;-1:-1:-1;;;;;9746:39:1;9734:52;;9841:15;;;;9806:12;;;;9782:1;9700:9;9671:195;;;-1:-1:-1;;;;;;;9922:32:1;;;;9917:2;9902:18;;9895:60;-1:-1:-1;;;9986:3:1;9971:19;9964:35;9883:3;9025:980;-1:-1:-1;;;9025:980:1:o

Swarm Source

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