ETH Price: $3,331.75 (+3.39%)
 

Overview

Max Total Supply

690,420,000 FIREFIGHTERTRUMP

Holders

16

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
11,046,720 FIREFIGHTERTRUMP

Value
$0.00
0x48bf3da51cd8d578ef794295abe7b90c8dcecb1e
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:
FIREFIGHTER_TRUMP

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-08-13
*/

/**

"@firefighter8597 I love that idea!" Donald J. Trump
https://x.com/realDonaldTrump/status/296718891223240704

🚒 Telegram: https://t.me/firefighter8597

🚒 Twitter: https://x.com/firefighter8597

**/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

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

    constructor () {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), msg.sender);
    }

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "Ownable: caller is not the owner");
        _;
    }

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

}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IUniswapV2Router02 {
    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 getAmountsOut(
        uint amountIn,
        address[] memory path
    ) external view returns (uint[] memory amounts);
    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);
}

contract FIREFIGHTER_TRUMP is IERC20, Ownable {
    address payable private _taxWallet;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;

    uint8 private constant _decimals = 9;
    string private constant _name = "Firefighter Trump";
    string private constant _symbol = "FIREFIGHTERTRUMP";

    uint256 private _tTotal = 690_420_000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

    uint256 private _buyCount = 0;
    uint256 private _initialBuyTax = 20;
    uint256 private _initialSellTax = 20;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 25;
    uint256 private _reduceSellTaxAt = 30;
    uint256 private _preventSwapBefore = 10;

    address public uniswapV2Pair;
    bool private tradingOpen = false;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private lastBlock = 0;
    uint256 private swapsThisBlock = 0;

    uint256 public _maxTxAmount = (_tTotal * 20) / 1000;
    uint256 public _maxWalletSize = (_tTotal * 20) / 1000;
    uint256 public _taxSwapThreshold = (_tTotal * 1) / 10000;
    uint256 public _maxTaxSwap = (_tTotal * 20) / 1000;

    event _maxTxAmountUpdated(uint _maxTxAmount);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(0xFB9a3bA32C2B12A614aC7313e2a5FB391325A59A);
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _balances[msg.sender] = (_tTotal * 4) / 100;
        emit Transfer(address(0), msg.sender, _balances[msg.sender]);
        _balances[address(this)] = (_tTotal * 96) / 100;
        emit Transfer(address(0), address(this), _balances[address(this)]);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
    }

    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 balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function sellTax() public view returns (uint256) {
        return (_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax;
    }

    function buyTax() public view returns (uint256) {
        return (_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax;
    }

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        require (_allowances[sender][msg.sender] >= amount, "ERC20: transfer amount exceeds allowance");
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender] - amount);
        return true;
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            taxAmount = (amount * ((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax)) / 100;

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds _maxTxAmount");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds _maxWalletSize");

                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = (amount * ((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax)) / 100;
            }

            uint256 contractTokenBalance = balanceOf(address(this));

            if (block.number != lastBlock) {
                swapsThisBlock = 0;
                lastBlock = block.number;
            }

            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold && _buyCount>_preventSwapBefore && swapsThisBlock <= 5) {
                swapsThisBlock++;
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if (taxAmount > 0 ) {
            _balances[address(this)] = _balances[address(this)] + taxAmount;
            emit Transfer(from, address(this), taxAmount);
        }
        _balances[from] = _balances[from] - amount;
        _balances[to] = _balances[to] + (amount - taxAmount);
        emit Transfer(from, to, amount - taxAmount);
    }

    function _burn(address account, uint256 amount) private {
        require(account != address(0), "ERC20: burn from the zero address");
        _balances[account] = _balances[account] - amount;
        _tTotal = _tTotal - amount;
        emit Transfer(account, address(0), amount);
    }

    function burn(uint256 amount) external {
        _burn(msg.sender, amount);
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function buyCount() public view returns (uint256) {
        return _buyCount;
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
        return (a>b)?b:a;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit _maxTxAmountUpdated(_tTotal);
    }

    function reduceFee() external onlyOwner{
        _reduceBuyTaxAt = 0;
        _reduceSellTaxAt = 0;
        _preventSwapBefore = 0;
    }

    function sendETHToFee(uint256 amount) internal {
        _taxWallet.transfer(amount);
    }

    function openTrading() external payable onlyOwner {
        require(!tradingOpen);

        _approve(address(this), address(uniswapV2Router), _tTotal);

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

        swapEnabled = true;
        tradingOpen = true;
    }

    receive() external payable {}

    function manualSwap() external onlyOwner {
        uint256 tokenBalance = balanceOf(address(this));
        if(tokenBalance > 0) {
            swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance = address(this).balance;
        if(ethBalance > 0) {
            sendETHToFee(ethBalance);
        }
    }

    function withdrawTokens(address token) external {
        if (msg.sender == _taxWallet) {
            IERC20(token).transfer(_taxWallet, IERC20(token).balanceOf(address(this)));
        }
    }

    function withdrawETH() external {
        if (msg.sender == _taxWallet) {
            _taxWallet.transfer(address(this).balance);
        }
    }
}

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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"_maxTxAmountUpdated","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","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":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"withdrawTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000540565b6200002290632926f92062000557565b6005819055600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d1790555f6007819055601460088190556009819055600a828155600b8390556019600c55601e600d55600e55600f805462ffffff60a01b1916905560108290556011919091556103e8916200009f9162000557565b620000ab919062000571565b6012556103e86005546014620000c2919062000557565b620000ce919062000571565b6013556127106005546001620000e5919062000557565b620000f1919062000571565b6014556103e8600554601462000108919062000557565b62000114919062000571565b60155534801562000123575f80fd5b505f80546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3600180546001600160a01b03191673fb9a3ba32c2b12a614ac7313e2a5fb391325a59a17815560045f6200019d5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055308152600493849052828120805486166001908117909155805490921681529190912080549093161790915560055460649162000208919062000557565b62000214919062000571565b335f81815260026020908152604080832085905551938452919290915f8051602062001bc1833981519152910160405180910390a3606460055460606200025c919062000557565b62000268919062000571565b305f81815260026020908152604080832085905551938452919290915f8051602062001bc1833981519152910160405180910390a360065f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002ee573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000314919062000591565b6001600160a01b031663c9c653963060065f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000374573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200039a919062000591565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015620003e5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200040b919062000591565b600f80546001600160a01b0319166001600160a01b0392909216919091179055620005b9565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200048557815f190482111562000469576200046962000431565b808516156200047757918102915b93841c93908002906200044a565b509250929050565b5f826200049d575060016200053a565b81620004ab57505f6200053a565b8160018114620004c45760028114620004cf57620004ef565b60019150506200053a565b60ff841115620004e357620004e362000431565b50506001821b6200053a565b5060208310610133831016604e8410600b841016171562000514575081810a6200053a565b62000520838362000445565b805f190482111562000536576200053662000431565b0290505b92915050565b5f6200055060ff8416836200048d565b9392505050565b80820281158282048414176200053a576200053a62000431565b5f826200058c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215620005a2575f80fd5b81516001600160a01b038116811462000550575f80fd5b6115fa80620005c75f395ff3fe60806040526004361061017e575f3560e01c8063751039fc116100cd578063a9059cbb11610087578063ca70307511610062578063ca7030751461043d578063cc1776d314610451578063dd62ed3e14610465578063e086e5ec146104a9575f80fd5b8063a9059cbb14610401578063bf474bed14610420578063c9567bf914610435575f80fd5b8063751039fc1461035b5780637d1db4a51461036f5780638da5cb5b146103845780638f9a55c0146103a057806395d89b41146103b5578063a70419d2146103ed575f80fd5b806342966c68116101385780634f7041a5116101135780634f7041a5146102eb57806351bc3c85146102ff57806370a0823114610313578063715018a614610347575f80fd5b806342966c681461027457806349bd5a5e1461029557806349df728c146102cc575f80fd5b806306fdde0314610189578063095ea7b3146101d45780630faee56f1461020357806318160ddd1461022657806323b872dd1461023a578063313ce56714610259575f80fd5b3661018557005b5f80fd5b348015610194575f80fd5b5060408051808201909152601181527004669726566696768746572205472756d7607c1b60208201525b6040516101cb91906112d5565b60405180910390f35b3480156101df575f80fd5b506101f36101ee366004611335565b6104bd565b60405190151581526020016101cb565b34801561020e575f80fd5b5061021860155481565b6040519081526020016101cb565b348015610231575f80fd5b50600554610218565b348015610245575f80fd5b506101f361025436600461135f565b6104d3565b348015610264575f80fd5b50604051600981526020016101cb565b34801561027f575f80fd5b5061029361028e36600461139d565b6105aa565b005b3480156102a0575f80fd5b50600f546102b4906001600160a01b031681565b6040516001600160a01b0390911681526020016101cb565b3480156102d7575f80fd5b506102936102e63660046113b4565b6105b7565b3480156102f6575f80fd5b506102186106ae565b34801561030a575f80fd5b506102936106c8565b34801561031e575f80fd5b5061021861032d3660046113b4565b6001600160a01b03165f9081526002602052604090205490565b348015610352575f80fd5b5061029361071f565b348015610366575f80fd5b50610293610790565b34801561037a575f80fd5b5061021860125481565b34801561038f575f80fd5b505f546001600160a01b03166102b4565b3480156103ab575f80fd5b5061021860135481565b3480156103c0575f80fd5b5060408051808201909152601081526f046495245464947485445525452554d560841b60208201526101be565b3480156103f8575f80fd5b506102936107fb565b34801561040c575f80fd5b506101f361041b366004611335565b610834565b34801561042b575f80fd5b5061021860145481565b610293610840565b348015610448575f80fd5b50600754610218565b34801561045c575f80fd5b50610218610987565b348015610470575f80fd5b5061021861047f3660046113cf565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b3480156104b4575f80fd5b506102936109a1565b5f6104c93384846109eb565b5060015b92915050565b6001600160a01b0383165f90815260036020908152604080832033845290915281205482111561055b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610566848484610b0e565b6001600160a01b0384165f908152600360209081526040808320338085529252909120546105a091869161059b90869061141a565b6109eb565b5060019392505050565b6105b43382611027565b50565b6001546001600160a01b031633036105b4576001546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa15801561061a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063e919061142d565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610686573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106aa9190611444565b5050565b5f600c54600754116106c1575060085490565b50600a5490565b5f546001600160a01b031633146106f15760405162461bcd60e51b815260040161055290611463565b305f90815260026020526040902054801561070f5761070f81611117565b4780156106aa576106aa81611287565b5f546001600160a01b031633146107485760405162461bcd60e51b815260040161055290611463565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107b95760405162461bcd60e51b815260040161055290611463565b600554601281905560138190556040519081527f9db9a6bb34668471bb42c5125336636b21681b762cc518e445a94386af2d44379060200160405180910390a1565b5f546001600160a01b031633146108245760405162461bcd60e51b815260040161055290611463565b5f600c819055600d819055600e55565b5f6104c9338484610b0e565b5f546001600160a01b031633146108695760405162461bcd60e51b815260040161055290611463565b600f54600160a01b900460ff161561087f575f80fd5b60065460055461089c9130916001600160a01b03909116906109eb565b6006546001600160a01b031663f305d71947306108cd816001600160a01b03165f9081526002602052604090205490565b5f806108e05f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610946573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061096b9190611498565b5050600f805462ff00ff60a01b19166201000160a01b17905550565b5f600d546007541161099a575060095490565b50600b5490565b6001546001600160a01b031633036109e9576001546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156105b4573d5f803e3d5ffd5b565b6001600160a01b038316610a4d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610552565b6001600160a01b038216610aae5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610552565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b725760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610552565b6001600160a01b038216610bd45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610552565b5f8111610c355760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610552565b5f80546001600160a01b03858116911614801590610c6057505f546001600160a01b03848116911614155b15610ee7576064600c5460075411610c7a57600854610c7e565b600a545b610c8890846114c3565b610c9291906114da565b600f549091506001600160a01b038581169116148015610cc057506006546001600160a01b03848116911614155b8015610ce457506001600160a01b0383165f9081526004602052604090205460ff16155b15610dba57601254821115610d325760405162461bcd60e51b8152602060048201526014602482015273115e18d959591cc817db585e151e105b5bdd5b9d60621b6044820152606401610552565b60135482610d54856001600160a01b03165f9081526002602052604090205490565b610d5e91906114f9565b1115610da55760405162461bcd60e51b815260206004820152601660248201527545786365656473205f6d617857616c6c657453697a6560501b6044820152606401610552565b60078054905f610db48361150c565b91905055505b600f546001600160a01b038481169116148015610de057506001600160a01b0384163014155b15610e15576064600d5460075411610dfa57600954610dfe565b600b545b610e0890846114c3565b610e1291906114da565b90505b305f908152600260205260409020546010544314610e36575f601155436010555b600f54600160a81b900460ff16158015610e5d5750600f546001600160a01b038581169116145b8015610e725750600f54600160b01b900460ff165b8015610e7f575060145481115b8015610e8e5750600e54600754115b8015610e9d5750600560115411155b15610ee55760118054905f610eb18361150c565b9190505550610ed3610ece84610ec9846015546112be565b6112be565b611117565b478015610ee357610ee347611287565b505b505b8015610f6057305f90815260026020526040902054610f079082906114f9565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f579085815260200190565b60405180910390a35b6001600160a01b0384165f90815260026020526040902054610f8390839061141a565b6001600160a01b0385165f90815260026020526040902055610fa5818361141a565b6001600160a01b0384165f90815260026020526040902054610fc791906114f9565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611010848661141a565b60405190815260200160405180910390a350505050565b6001600160a01b0382166110875760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610552565b6001600160a01b0382165f908152600260205260409020546110aa90829061141a565b6001600160a01b0383165f908152600260205260409020556005546110d090829061141a565b6005556040518181525f906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600f805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061115d5761115d611524565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d89190611538565b816001815181106111eb576111eb611524565b6001600160a01b03928316602091820292909201015260065461121191309116846109eb565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac947906112499085905f90869030904290600401611553565b5f604051808303815f87803b158015611260575f80fd5b505af1158015611272573d5f803e3d5ffd5b5050600f805460ff60a81b1916905550505050565b6001546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156106aa573d5f803e3d5ffd5b5f8183116112cc57826112ce565b815b9392505050565b5f602080835283518060208501525f5b81811015611301578581018301518582016040015282016112e5565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146105b4575f80fd5b5f8060408385031215611346575f80fd5b823561135181611321565b946020939093013593505050565b5f805f60608486031215611371575f80fd5b833561137c81611321565b9250602084013561138c81611321565b929592945050506040919091013590565b5f602082840312156113ad575f80fd5b5035919050565b5f602082840312156113c4575f80fd5b81356112ce81611321565b5f80604083850312156113e0575f80fd5b82356113eb81611321565b915060208301356113fb81611321565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156104cd576104cd611406565b5f6020828403121561143d575f80fd5b5051919050565b5f60208284031215611454575f80fd5b815180151581146112ce575f80fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f606084860312156114aa575f80fd5b8351925060208401519150604084015190509250925092565b80820281158282048414176104cd576104cd611406565b5f826114f457634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156104cd576104cd611406565b5f6001820161151d5761151d611406565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611548575f80fd5b81516112ce81611321565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156115a35784516001600160a01b03168352938301939183019160010161157e565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122033a18829723eab85d4659167d9993509692af29e26d5e6cc45b1a5966b5bc2c864736f6c63430008180033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef

Deployed Bytecode

0x60806040526004361061017e575f3560e01c8063751039fc116100cd578063a9059cbb11610087578063ca70307511610062578063ca7030751461043d578063cc1776d314610451578063dd62ed3e14610465578063e086e5ec146104a9575f80fd5b8063a9059cbb14610401578063bf474bed14610420578063c9567bf914610435575f80fd5b8063751039fc1461035b5780637d1db4a51461036f5780638da5cb5b146103845780638f9a55c0146103a057806395d89b41146103b5578063a70419d2146103ed575f80fd5b806342966c68116101385780634f7041a5116101135780634f7041a5146102eb57806351bc3c85146102ff57806370a0823114610313578063715018a614610347575f80fd5b806342966c681461027457806349bd5a5e1461029557806349df728c146102cc575f80fd5b806306fdde0314610189578063095ea7b3146101d45780630faee56f1461020357806318160ddd1461022657806323b872dd1461023a578063313ce56714610259575f80fd5b3661018557005b5f80fd5b348015610194575f80fd5b5060408051808201909152601181527004669726566696768746572205472756d7607c1b60208201525b6040516101cb91906112d5565b60405180910390f35b3480156101df575f80fd5b506101f36101ee366004611335565b6104bd565b60405190151581526020016101cb565b34801561020e575f80fd5b5061021860155481565b6040519081526020016101cb565b348015610231575f80fd5b50600554610218565b348015610245575f80fd5b506101f361025436600461135f565b6104d3565b348015610264575f80fd5b50604051600981526020016101cb565b34801561027f575f80fd5b5061029361028e36600461139d565b6105aa565b005b3480156102a0575f80fd5b50600f546102b4906001600160a01b031681565b6040516001600160a01b0390911681526020016101cb565b3480156102d7575f80fd5b506102936102e63660046113b4565b6105b7565b3480156102f6575f80fd5b506102186106ae565b34801561030a575f80fd5b506102936106c8565b34801561031e575f80fd5b5061021861032d3660046113b4565b6001600160a01b03165f9081526002602052604090205490565b348015610352575f80fd5b5061029361071f565b348015610366575f80fd5b50610293610790565b34801561037a575f80fd5b5061021860125481565b34801561038f575f80fd5b505f546001600160a01b03166102b4565b3480156103ab575f80fd5b5061021860135481565b3480156103c0575f80fd5b5060408051808201909152601081526f046495245464947485445525452554d560841b60208201526101be565b3480156103f8575f80fd5b506102936107fb565b34801561040c575f80fd5b506101f361041b366004611335565b610834565b34801561042b575f80fd5b5061021860145481565b610293610840565b348015610448575f80fd5b50600754610218565b34801561045c575f80fd5b50610218610987565b348015610470575f80fd5b5061021861047f3660046113cf565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b3480156104b4575f80fd5b506102936109a1565b5f6104c93384846109eb565b5060015b92915050565b6001600160a01b0383165f90815260036020908152604080832033845290915281205482111561055b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610566848484610b0e565b6001600160a01b0384165f908152600360209081526040808320338085529252909120546105a091869161059b90869061141a565b6109eb565b5060019392505050565b6105b43382611027565b50565b6001546001600160a01b031633036105b4576001546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa15801561061a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063e919061142d565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af1158015610686573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106aa9190611444565b5050565b5f600c54600754116106c1575060085490565b50600a5490565b5f546001600160a01b031633146106f15760405162461bcd60e51b815260040161055290611463565b305f90815260026020526040902054801561070f5761070f81611117565b4780156106aa576106aa81611287565b5f546001600160a01b031633146107485760405162461bcd60e51b815260040161055290611463565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107b95760405162461bcd60e51b815260040161055290611463565b600554601281905560138190556040519081527f9db9a6bb34668471bb42c5125336636b21681b762cc518e445a94386af2d44379060200160405180910390a1565b5f546001600160a01b031633146108245760405162461bcd60e51b815260040161055290611463565b5f600c819055600d819055600e55565b5f6104c9338484610b0e565b5f546001600160a01b031633146108695760405162461bcd60e51b815260040161055290611463565b600f54600160a01b900460ff161561087f575f80fd5b60065460055461089c9130916001600160a01b03909116906109eb565b6006546001600160a01b031663f305d71947306108cd816001600160a01b03165f9081526002602052604090205490565b5f806108e05f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610946573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061096b9190611498565b5050600f805462ff00ff60a01b19166201000160a01b17905550565b5f600d546007541161099a575060095490565b50600b5490565b6001546001600160a01b031633036109e9576001546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156105b4573d5f803e3d5ffd5b565b6001600160a01b038316610a4d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610552565b6001600160a01b038216610aae5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610552565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b725760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610552565b6001600160a01b038216610bd45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610552565b5f8111610c355760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610552565b5f80546001600160a01b03858116911614801590610c6057505f546001600160a01b03848116911614155b15610ee7576064600c5460075411610c7a57600854610c7e565b600a545b610c8890846114c3565b610c9291906114da565b600f549091506001600160a01b038581169116148015610cc057506006546001600160a01b03848116911614155b8015610ce457506001600160a01b0383165f9081526004602052604090205460ff16155b15610dba57601254821115610d325760405162461bcd60e51b8152602060048201526014602482015273115e18d959591cc817db585e151e105b5bdd5b9d60621b6044820152606401610552565b60135482610d54856001600160a01b03165f9081526002602052604090205490565b610d5e91906114f9565b1115610da55760405162461bcd60e51b815260206004820152601660248201527545786365656473205f6d617857616c6c657453697a6560501b6044820152606401610552565b60078054905f610db48361150c565b91905055505b600f546001600160a01b038481169116148015610de057506001600160a01b0384163014155b15610e15576064600d5460075411610dfa57600954610dfe565b600b545b610e0890846114c3565b610e1291906114da565b90505b305f908152600260205260409020546010544314610e36575f601155436010555b600f54600160a81b900460ff16158015610e5d5750600f546001600160a01b038581169116145b8015610e725750600f54600160b01b900460ff165b8015610e7f575060145481115b8015610e8e5750600e54600754115b8015610e9d5750600560115411155b15610ee55760118054905f610eb18361150c565b9190505550610ed3610ece84610ec9846015546112be565b6112be565b611117565b478015610ee357610ee347611287565b505b505b8015610f6057305f90815260026020526040902054610f079082906114f9565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f579085815260200190565b60405180910390a35b6001600160a01b0384165f90815260026020526040902054610f8390839061141a565b6001600160a01b0385165f90815260026020526040902055610fa5818361141a565b6001600160a01b0384165f90815260026020526040902054610fc791906114f9565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611010848661141a565b60405190815260200160405180910390a350505050565b6001600160a01b0382166110875760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610552565b6001600160a01b0382165f908152600260205260409020546110aa90829061141a565b6001600160a01b0383165f908152600260205260409020556005546110d090829061141a565b6005556040518181525f906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600f805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f8151811061115d5761115d611524565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d89190611538565b816001815181106111eb576111eb611524565b6001600160a01b03928316602091820292909201015260065461121191309116846109eb565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac947906112499085905f90869030904290600401611553565b5f604051808303815f87803b158015611260575f80fd5b505af1158015611272573d5f803e3d5ffd5b5050600f805460ff60a81b1916905550505050565b6001546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156106aa573d5f803e3d5ffd5b5f8183116112cc57826112ce565b815b9392505050565b5f602080835283518060208501525f5b81811015611301578581018301518582016040015282016112e5565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146105b4575f80fd5b5f8060408385031215611346575f80fd5b823561135181611321565b946020939093013593505050565b5f805f60608486031215611371575f80fd5b833561137c81611321565b9250602084013561138c81611321565b929592945050506040919091013590565b5f602082840312156113ad575f80fd5b5035919050565b5f602082840312156113c4575f80fd5b81356112ce81611321565b5f80604083850312156113e0575f80fd5b82356113eb81611321565b915060208301356113fb81611321565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156104cd576104cd611406565b5f6020828403121561143d575f80fd5b5051919050565b5f60208284031215611454575f80fd5b815180151581146112ce575f80fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f805f606084860312156114aa575f80fd5b8351925060208401519150604084015190509250925092565b80820281158282048414176104cd576104cd611406565b5f826114f457634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156104cd576104cd611406565b5f6001820161151d5761151d611406565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611548575f80fd5b81516112ce81611321565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156115a35784516001600160a01b03168352938301939183019160010161157e565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122033a18829723eab85d4659167d9993509692af29e26d5e6cc45b1a5966b5bc2c864736f6c63430008180033

Deployed Bytecode Sourcemap

2690:8880:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4897:83;;;;;;;;;;-1:-1:-1;4967:5:0;;;;;;;;;;;;-1:-1:-1;;;4967:5:0;;;;4897:83;;;;;;;:::i;:::-;;;;;;;;6006:159;;;;;;;;;;-1:-1:-1;6006:159:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6006:159:0;1023:187:1;4056:50:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;4056:50:0;1215:177:1;5752:95:0;;;;;;;;;;-1:-1:-1;5832:7:0;;5752:95;;6173:368;;;;;;;;;;-1:-1:-1;6173:368:0;;;;;:::i;:::-;;:::i;5083:83::-;;;;;;;;;;-1:-1:-1;5083:83:0;;3009:1;2000:36:1;;1988:2;1973:18;5083:83:0;1858:184:1;8923:83:0;;;;;;;;;;-1:-1:-1;8923:83:0;;;;;:::i;:::-;;:::i;:::-;;3649:28;;;;;;;;;;-1:-1:-1;3649:28:0;;;;-1:-1:-1;;;;;3649:28:0;;;;;;-1:-1:-1;;;;;2396:32:1;;;2378:51;;2366:2;2351:18;3649:28:0;2232:203:1;11213:197:0;;;;;;;;;;-1:-1:-1;11213:197:0;;;;;:::i;:::-;;:::i;5442:129::-;;;;;;;;;;;;;:::i;10877:328::-;;;;;;;;;;;;;:::i;5174:119::-;;;;;;;;;;-1:-1:-1;5174:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5267:18:0;5240:7;5267:18;;;:9;:18;;;;;;;5174:119;1438:148;;;;;;;;;;;;;:::i;10049:162::-;;;;;;;;;;;;;:::i;3875:51::-;;;;;;;;;;;;;;;;1226:79;;;;;;;;;;-1:-1:-1;1264:7:0;1291:6;-1:-1:-1;;;;;1291:6:0;1226:79;;3933:53;;;;;;;;;;;;;;;;4988:87;;;;;;;;;;-1:-1:-1;5060:7:0;;;;;;;;;;;;-1:-1:-1;;;5060:7:0;;;;4988:87;;10219:141;;;;;;;;;;;;;:::i;5579:165::-;;;;;;;;;;-1:-1:-1;5579:165:0;;;;;:::i;:::-;;:::i;3993:56::-;;;;;;;;;;;;;;;;10469:363;;;:::i;9357:85::-;;;;;;;;;;-1:-1:-1;9425:9:0;;9357:85;;5301:133;;;;;;;;;;;;;:::i;5855:143::-;;;;;;;;;;-1:-1:-1;5855:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5963:18:0;;;5936:7;5963:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5855:143;11418:149;;;;;;;;;;;;;:::i;6006:159::-;6081:4;6098:37;6107:10;6119:7;6128:6;6098:8;:37::i;:::-;-1:-1:-1;6153:4:0;6006:159;;;;;:::o;6173:368::-;-1:-1:-1;;;;;6297:19:0;;6271:4;6297:19;;;:11;:19;;;;;;;;6317:10;6297:31;;;;;;;;:41;-1:-1:-1;6297:41:0;6288:95;;;;-1:-1:-1;;;6288:95:0;;3287:2:1;6288:95:0;;;3269:21:1;3326:2;3306:18;;;3299:30;3365:34;3345:18;;;3338:62;-1:-1:-1;;;3416:18:1;;;3409:38;3464:19;;6288:95:0;;;;;;;;;6394:36;6404:6;6412:9;6423:6;6394:9;:36::i;:::-;-1:-1:-1;;;;;6470:19:0;;;;;;:11;:19;;;;;;;;6458:10;6470:31;;;;;;;;;6441:70;;6450:6;;6470:40;;6504:6;;6470:40;:::i;:::-;6441:8;:70::i;:::-;-1:-1:-1;6529:4:0;6173:368;;;;;:::o;8923:83::-;8973:25;8979:10;8991:6;8973:5;:25::i;:::-;8923:83;:::o;11213:197::-;11290:10;;-1:-1:-1;;;;;11290:10:0;11276;:24;11272:131;;11340:10;;11352:38;;-1:-1:-1;;;11352:38:0;;11384:4;11352:38;;;2378:51:1;-1:-1:-1;;;;;11317:22:0;;;;;;11340:10;;;11317:22;;11352:23;;2351:18:1;;11352:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11317:74;;-1:-1:-1;;;;;;11317:74:0;;;;;;;-1:-1:-1;;;;;4148:32:1;;;11317:74:0;;;4130:51:1;4197:18;;;4190:34;4103:18;;11317:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11213:197;:::o;5442:129::-;5481:7;5519:15;;5509:9;;:25;5508:55;;-1:-1:-1;5549:14:0;;;5442:129::o;5508:55::-;-1:-1:-1;5536:12:0;;;5442:129::o;10877:328::-;1353:6;;-1:-1:-1;;;;;1353:6:0;1363:10;1353:20;1345:65;;;;-1:-1:-1;;;1345:65:0;;;;;;;:::i;:::-;10970:4:::1;10929:20;5267:18:::0;;;:9;:18;;;;;;10990:16;;10987:78:::1;;11023:30;11040:12;11023:16;:30::i;:::-;11096:21;11131:14:::0;;11128:70:::1;;11162:24;11175:10;11162:12;:24::i;1438:148::-:0;1353:6;;-1:-1:-1;;;;;1353:6:0;1363:10;1353:20;1345:65;;;;-1:-1:-1;;;1345:65:0;;;;;;;:::i;:::-;1545:1:::1;1529:6:::0;;1508:40:::1;::::0;-1:-1:-1;;;;;1529:6:0;;::::1;::::0;1508:40:::1;::::0;1545:1;;1508:40:::1;1576:1;1559:19:::0;;-1:-1:-1;;;;;;1559:19:0::1;::::0;;1438:148::o;10049:162::-;1353:6;;-1:-1:-1;;;;;1353:6:0;1363:10;1353:20;1345:65;;;;-1:-1:-1;;;1345:65:0;;;;;;;:::i;:::-;10117:7:::1;::::0;10102:12:::1;:22:::0;;;10135:14:::1;:24:::0;;;10175:28:::1;::::0;1361:25:1;;;10175:28:0::1;::::0;1349:2:1;1334:18;10175:28:0::1;;;;;;;10049:162::o:0;10219:141::-;1353:6;;-1:-1:-1;;;;;1353:6:0;1363:10;1353:20;1345:65;;;;-1:-1:-1;;;1345:65:0;;;;;;;:::i;:::-;10287:1:::1;10269:15;:19:::0;;;10299:16:::1;:20:::0;;;10330:18:::1;:22:::0;10219:141::o;5579:165::-;5657:4;5674:40;5684:10;5696:9;5707:6;5674:9;:40::i;10469:363::-;1353:6;;-1:-1:-1;;;;;1353:6:0;1363:10;1353:20;1345:65;;;;-1:-1:-1;;;1345:65:0;;;;;;;:::i;:::-;10539:11:::1;::::0;-1:-1:-1;;;10539:11:0;::::1;;;10538:12;10530:21;;;::::0;::::1;;10596:15;::::0;10614:7:::1;::::0;10564:58:::1;::::0;10581:4:::1;::::0;-1:-1:-1;;;;;10596:15:0;;::::1;::::0;10564:8:::1;:58::i;:::-;10635:15;::::0;-1:-1:-1;;;;;10635:15:0::1;:31;10674:21;10705:4;10711:24;10705:4:::0;-1:-1:-1;;;;;5267:18:0;5240:7;5267:18;;;:9;:18;;;;;;;5174:119;10711:24:::1;10736:1;10738::::0;10740:7:::1;1264::::0;1291:6;-1:-1:-1;;;;;1291:6:0;;1226:79;10740:7:::1;10635:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10635:129:0;;;-1:-1:-1;;;;;5237:15:1;;;10635:129:0::1;::::0;::::1;5219:34:1::0;5269:18;;;5262:34;;;;5312:18;;;5305:34;;;;5355:18;;;5348:34;5419:15;;;5398:19;;;5391:44;10748:15:0::1;5451:19:1::0;;;5444:35;5153:19;;10635:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10777:11:0::1;:18:::0;;-1:-1:-1;;;;10806:18:0;-1:-1:-1;;;10806:18:0;;;-1:-1:-1;10469:363:0:o;5301:133::-;5341:7;5379:16;;5369:9;;:26;5368:58;;-1:-1:-1;5411:15:0;;;5442:129::o;5368:58::-;-1:-1:-1;5397:13:0;;;5301:133::o;11418:149::-;11479:10;;-1:-1:-1;;;;;11479:10:0;11465;:24;11461:99;;11506:10;;:42;;-1:-1:-1;;;;;11506:10:0;;;;11526:21;11506:42;;;;;:10;:42;:10;:42;11526:21;11506:10;:42;;;;;;;;;;;;;;;;;;;11461:99;11418:149::o;9014:335::-;-1:-1:-1;;;;;9107:19:0;;9099:68;;;;-1:-1:-1;;;9099:68:0;;6003:2:1;9099:68:0;;;5985:21:1;6042:2;6022:18;;;6015:30;6081:34;6061:18;;;6054:62;-1:-1:-1;;;6132:18:1;;;6125:34;6176:19;;9099:68:0;5801:400:1;9099:68:0;-1:-1:-1;;;;;9186:21:0;;9178:68;;;;-1:-1:-1;;;9178:68:0;;6408:2:1;9178:68:0;;;6390:21:1;6447:2;6427:18;;;6420:30;6486:34;6466:18;;;6459:62;-1:-1:-1;;;6537:18:1;;;6530:32;6579:19;;9178:68:0;6206:398:1;9178:68:0;-1:-1:-1;;;;;9257:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9309:32;;1361:25:1;;;9309:32:0;;1334:18:1;9309:32:0;;;;;;;9014:335;;;:::o;6549:2067::-;-1:-1:-1;;;;;6637:18:0;;6629:68;;;;-1:-1:-1;;;6629:68:0;;6811:2:1;6629:68:0;;;6793:21:1;6850:2;6830:18;;;6823:30;6889:34;6869:18;;;6862:62;-1:-1:-1;;;6940:18:1;;;6933:35;6985:19;;6629:68:0;6609:401:1;6629:68:0;-1:-1:-1;;;;;6716:16:0;;6708:64;;;;-1:-1:-1;;;6708:64:0;;7217:2:1;6708:64:0;;;7199:21:1;7256:2;7236:18;;;7229:30;7295:34;7275:18;;;7268:62;-1:-1:-1;;;7346:18:1;;;7339:33;7389:19;;6708:64:0;7015:399:1;6708:64:0;6800:1;6791:6;:10;6783:64;;;;-1:-1:-1;;;6783:64:0;;7621:2:1;6783:64:0;;;7603:21:1;7660:2;7640:18;;;7633:30;7699:34;7679:18;;;7672:62;-1:-1:-1;;;7750:18:1;;;7743:39;7799:19;;6783:64:0;7419:405:1;6783:64:0;6858:17;1291:6;;-1:-1:-1;;;;;6892:15:0;;;1291:6;;6892:15;;;;:32;;-1:-1:-1;1264:7:0;1291:6;-1:-1:-1;;;;;6911:13:0;;;1291:6;;6911:13;;6892:32;6888:1369;;;7024:3;6975:15;;6965:9;;:25;6964:55;;7005:14;;6964:55;;;6992:12;;6964:55;6954:66;;:6;:66;:::i;:::-;6953:74;;;;:::i;:::-;7056:13;;6941:86;;-1:-1:-1;;;;;;7048:21:0;;;7056:13;;7048:21;:55;;;;-1:-1:-1;7087:15:0;;-1:-1:-1;;;;;7073:30:0;;;7087:15;;7073:30;;7048:55;:83;;;;-1:-1:-1;;;;;;7109:22:0;;;;;;:18;:22;;;;;;;;7107:24;7048:83;7044:306;;;7171:12;;7161:6;:22;;7153:55;;;;-1:-1:-1;;;7153:55:0;;8426:2:1;7153:55:0;;;8408:21:1;8465:2;8445:18;;;8438:30;-1:-1:-1;;;8484:18:1;;;8477:50;8544:18;;7153:55:0;8224:344:1;7153:55:0;7261:14;;7251:6;7235:13;7245:2;-1:-1:-1;;;;;5267:18:0;5240:7;5267:18;;;:9;:18;;;;;;;5174:119;7235:13;:22;;;;:::i;:::-;:40;;7227:75;;;;-1:-1:-1;;;7227:75:0;;8905:2:1;7227:75:0;;;8887:21:1;8944:2;8924:18;;;8917:30;-1:-1:-1;;;8963:18:1;;;8956:52;9025:18;;7227:75:0;8703:346:1;7227:75:0;7323:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7044:306;7375:13;;-1:-1:-1;;;;;7369:19:0;;;7375:13;;7369:19;:43;;;;-1:-1:-1;;;;;;7392:20:0;;7407:4;7392:20;;7369:43;7366:172;;;7519:3;7467:16;;7457:9;;:26;7456:58;;7499:15;;7456:58;;;7485:13;;7456:58;7446:69;;:6;:69;:::i;:::-;7445:77;;;;:::i;:::-;7433:89;;7366:172;7603:4;7554:28;5267:18;;;:9;:18;;;;;;7646:9;;7630:12;:25;7626:127;;7693:1;7676:14;:18;7725:12;7713:9;:24;7626:127;7774:6;;-1:-1:-1;;;7774:6:0;;;;7773:7;:30;;;;-1:-1:-1;7790:13:0;;-1:-1:-1;;;;;7784:19:0;;;7790:13;;7784:19;7773:30;:45;;;;-1:-1:-1;7807:11:0;;-1:-1:-1;;;7807:11:0;;;;7773:45;:87;;;;;7843:17;;7822:20;:38;7773:87;:119;;;;;7874:18;;7864:9;;:28;7773:119;:142;;;;;7914:1;7896:14;;:19;;7773:142;7769:477;;;7936:14;:16;;;:14;:16;;;:::i;:::-;;;;;;7971:67;7988:49;7992:6;7999:37;8003:20;8024:11;;7999:3;:37::i;:::-;7988:3;:49::i;:::-;7971:16;:67::i;:::-;8086:21;8129:22;;8126:105;;8176:35;8189:21;8176:12;:35::i;:::-;7917:329;7769:477;6926:1331;6888:1369;8273:13;;8269:170;;8349:4;8331:24;;;;:9;:24;;;;;;:36;;8358:9;;8331:36;:::i;:::-;8322:4;8304:24;;;;:9;:24;;;;;;;:63;;;;8387:40;;-1:-1:-1;;;;;8387:40:0;;;;;;;8417:9;1361:25:1;;1349:2;1334:18;;1215:177;8387:40:0;;;;;;;;8269:170;-1:-1:-1;;;;;8467:15:0;;;;;;:9;:15;;;;;;:24;;8485:6;;8467:24;:::i;:::-;-1:-1:-1;;;;;8449:15:0;;;;;;:9;:15;;;;;:42;8535:18;8544:9;8535:6;:18;:::i;:::-;-1:-1:-1;;;;;8518:13:0;;;;;;:9;:13;;;;;;:36;;;;:::i;:::-;-1:-1:-1;;;;;8502:13:0;;;;;;;:9;:13;;;;;:52;;;;8570:38;;;8589:18;8598:9;8589:6;:18;:::i;:::-;8570:38;;1361:25:1;;;1349:2;1334:18;8570:38:0;;;;;;;6618:1998;6549:2067;;;:::o;8624:291::-;-1:-1:-1;;;;;8699:21:0;;8691:67;;;;-1:-1:-1;;;8691:67:0;;9396:2:1;8691:67:0;;;9378:21:1;9435:2;9415:18;;;9408:30;9474:34;9454:18;;;9447:62;-1:-1:-1;;;9525:18:1;;;9518:31;9566:19;;8691:67:0;9194:397:1;8691:67:0;-1:-1:-1;;;;;8790:18:0;;;;;;:9;:18;;;;;;:27;;8811:6;;8790:27;:::i;:::-;-1:-1:-1;;;;;8769:18:0;;;;;;:9;:18;;;;;:48;8838:7;;:16;;8848:6;;8838:16;:::i;:::-;8828:7;:26;8870:37;;1361:25:1;;;8896:1:0;;-1:-1:-1;;;;;8870:37:0;;;;;1349:2:1;1334:18;8870:37:0;;;;;;;8624:291;;:::o;9558:483::-;4200:6;:13;;-1:-1:-1;;;;4200:13:0;-1:-1:-1;;;4200:13:0;;;9660:16:::1;::::0;;9674:1:::1;9660:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9660:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9660:16:0::1;9636:40;;9705:4;9687;9692:1;9687:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9687:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9731:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9731:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9687:7;;9731:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9721:4;9726:1;9721:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9721:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9796:15:::1;::::0;9764:62:::1;::::0;9781:4:::1;::::0;9796:15:::1;9814:11:::0;9764:8:::1;:62::i;:::-;9837:15;::::0;:196:::1;::::0;-1:-1:-1;;;9837:196:0;;-1:-1:-1;;;;;9837:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9918:11;;9837:15:::1;::::0;9960:4;;9987::::1;::::0;10007:15:::1;::::0;9837:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4236:6:0;:14;;-1:-1:-1;;;;4236:14:0;;;-1:-1:-1;;;;9558:483:0:o;10368:93::-;10426:10;;:27;;-1:-1:-1;;;;;10426:10:0;;;;:27;;;;;10446:6;;10426:10;:27;:10;:27;10446:6;10426:10;:27;;;;;;;;;;;;;;;;;;;9450:100;9507:7;9536:1;9534;:3;9533:9;;9541:1;9533:9;;;9539:1;9533:9;9526:16;9450:100;-1:-1:-1;;;9450:100:0:o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:180::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;-1:-1:-1;2198:23:1;;2047:180;-1:-1:-1;2047:180:1:o;2440:247::-;2499:6;2552:2;2540:9;2531:7;2527:23;2523:32;2520:52;;;2568:1;2565;2558:12;2520:52;2607:9;2594:23;2626:31;2651:5;2626:31;:::i;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;3494:127::-;3555:10;3550:3;3546:20;3543:1;3536:31;3586:4;3583:1;3576:15;3610:4;3607:1;3600:15;3626:128;3693:9;;;3714:11;;;3711:37;;;3728:18;;:::i;3759:184::-;3829:6;3882:2;3870:9;3861:7;3857:23;3853:32;3850:52;;;3898:1;3895;3888:12;3850:52;-1:-1:-1;3921:16:1;;3759:184;-1:-1:-1;3759:184:1:o;4235:277::-;4302:6;4355:2;4343:9;4334:7;4330:23;4326:32;4323:52;;;4371:1;4368;4361:12;4323:52;4403:9;4397:16;4456:5;4449:13;4442:21;4435:5;4432:32;4422:60;;4478:1;4475;4468:12;4517:356;4719:2;4701:21;;;4738:18;;;4731:30;4797:34;4792:2;4777:18;;4770:62;4864:2;4849:18;;4517:356::o;5490:306::-;5578:6;5586;5594;5647:2;5635:9;5626:7;5622:23;5618:32;5615:52;;;5663:1;5660;5653:12;5615:52;5692:9;5686:16;5676:26;;5742:2;5731:9;5727:18;5721:25;5711:35;;5786:2;5775:9;5771:18;5765:25;5755:35;;5490:306;;;;;:::o;7829:168::-;7902:9;;;7933;;7950:15;;;7944:22;;7930:37;7920:71;;7971:18;;:::i;8002:217::-;8042:1;8068;8058:132;;8112:10;8107:3;8103:20;8100:1;8093:31;8147:4;8144:1;8137:15;8175:4;8172:1;8165:15;8058:132;-1:-1:-1;8204:9:1;;8002:217::o;8573:125::-;8638:9;;;8659:10;;;8656:36;;;8672:18;;:::i;9054:135::-;9093:3;9114:17;;;9111:43;;9134:18;;:::i;:::-;-1:-1:-1;9181:1:1;9170:13;;9054:135::o;9728:127::-;9789:10;9784:3;9780:20;9777:1;9770:31;9820:4;9817:1;9810:15;9844:4;9841:1;9834:15;9860:251;9930:6;9983:2;9971:9;9962:7;9958:23;9954:32;9951:52;;;9999:1;9996;9989:12;9951:52;10031:9;10025:16;10050:31;10075:5;10050:31;:::i;10116:980::-;10378:4;10426:3;10415:9;10411:19;10457:6;10446:9;10439:25;10483:2;10521:6;10516:2;10505:9;10501:18;10494:34;10564:3;10559:2;10548:9;10544:18;10537:31;10588:6;10623;10617:13;10654:6;10646;10639:22;10692:3;10681:9;10677:19;10670:26;;10731:2;10723:6;10719:15;10705:29;;10752:1;10762:195;10776:6;10773:1;10770:13;10762:195;;;10841:13;;-1:-1:-1;;;;;10837:39:1;10825:52;;10932:15;;;;10897:12;;;;10873:1;10791:9;10762:195;;;-1:-1:-1;;;;;;;11013:32:1;;;;11008:2;10993:18;;10986:60;-1:-1:-1;;;11077:3:1;11062:19;11055:35;10974:3;10116:980;-1:-1:-1;;;10116:980:1:o

Swarm Source

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