ETH Price: $1,950.79 (-1.77%)
 

Overview

Max Total Supply

10,000,000 SCALER

Holders

66

Transfers

-
0

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

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

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
SCALER

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : scaler.sol
/**
 *Submitted for verification at Etherscan.io on 2025-09-02
*/

// SPDX-License-Identifier: MIT



pragma solidity ^0.8.26;

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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _transferOwnership(_msgSender());
    }

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "scaler Ownable: caller is not the owner");
    }

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

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

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from, address to, uint256 amount) external returns (bool);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);

    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);

    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);

    function createPair(address tokenA, address tokenB) external returns (address pair);

    function setFeeTo(address) external;
    function setFeeToSetter(address) external;
}

interface IUniswapV2Pair {
    event Approval(address indexed owner, address indexed spender, uint value);
    event Transfer(address indexed from, address indexed to, uint value);

    function name() external pure returns (string memory);
    function symbol() external pure returns (string memory);
    function decimals() external pure returns (uint8);
    function totalSupply() external view returns (uint);
    function balanceOf(address owner) external view returns (uint);
    function allowance(address owner, address spender) external view returns (uint);

    function approve(address spender, uint value) external returns (bool);
    function transfer(address to, uint value) external returns (bool);
    function transferFrom(address from, address to, uint value) external returns (bool);

    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external pure returns (bytes32);
    function nonces(address owner) external view returns (uint);

    function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;

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

    function MINIMUM_LIQUIDITY() external pure returns (uint);
    function factory() external view returns (address);
    function token0() external view returns (address);
    function token1() external view returns (address);
    function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
    function price0CumulativeLast() external view returns (uint);
    function price1CumulativeLast() external view returns (uint);
    function kLast() external view returns (uint);

    function mint(address to) external returns (uint liquidity);
    function burn(address to) external returns (uint amount0, uint amount1);
    function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
    function skim(address to) external;
    function sync() external;

    function initialize(address, address) external;
}

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

    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 addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function removeLiquidity(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETH(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountToken, uint amountETH);
    function removeLiquidityWithPermit(
        address tokenA,
        address tokenB,
        uint liquidity,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountA, uint amountB);
    function removeLiquidityETHWithPermit(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountToken, uint amountETH);
    function swapExactTokensForTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapTokensForExactTokens(
        uint amountOut,
        uint amountInMax,
        address[] calldata path,
        address to,
        uint deadline
    ) external returns (uint[] memory amounts);
    function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);
    function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline)
        external
        returns (uint[] memory amounts);
    function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline)
        external
        payable
        returns (uint[] memory amounts);

    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut);
    function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn);
    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);

    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
    function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline,
        bool approveMax, uint8 v, bytes32 r, bytes32 s
    ) external returns (uint amountETH);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract SCALER is Context, IERC20, IERC20Metadata, Ownable {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private _isExcludedFromMaxWallet;
    mapping(address => bool) private _isExcludedFromMaxTx;
    mapping(address => bool) private _botaddrs;

    uint256 private _totalSupply;
    string private _name;
    string private _symbol;
    uint8 private _decimals;

    address public constant UNISWAP_V2_ROUTER = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address public constant DEV_WALLET = 0x8e030287C262c5f60Ae0Aa89D1B48E16ED6d923c;
    address public constant MARKETING_WALLET = 0xb4EeE38957386C25198EEa41301b3D041e7704e7;

    IUniswapV2Router02 public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;

    bool public tradingOpen = false;
    bool public swapEnabled = false;
    bool private inSwap = false;

    uint256 public buyFee = 5;
    uint256 public sellFee = 5;
    uint256 public swapTokensAtAmount;
    uint256 public maxWalletAmount;
    uint256 public maxTxAmount;

    event SwapTokensAtAmountUpdated(uint256 amount);
    event MaxWalletAmountUpdated(uint256 amount);
    event MaxTxAmountUpdated(uint256 amount);
    event FeesUpdated(uint256 buyFee, uint256 sellFee);
    event TradingOpened();
    event LimitsRemoved();

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

    constructor() {
        _name = "SCALER AI";
        _symbol = "SCALER";
        _decimals = 18;
        _totalSupply = 10000000 * 10**_decimals;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(UNISWAP_V2_ROUTER);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;

        swapTokensAtAmount = (_totalSupply * 5) / 1000;
        maxWalletAmount = (_totalSupply * 20) / 1000;
        maxTxAmount = (_totalSupply * 20) / 1000;

        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[DEV_WALLET] = true;
        _isExcludedFromFees[MARKETING_WALLET] = true;

        _isExcludedFromMaxWallet[owner()] = true;
        _isExcludedFromMaxWallet[address(this)] = true;
        _isExcludedFromMaxWallet[uniswapV2Pair] = true;
        _isExcludedFromMaxWallet[DEV_WALLET] = true;
        _isExcludedFromMaxWallet[MARKETING_WALLET] = true;

        _isExcludedFromMaxTx[owner()] = true;
        _isExcludedFromMaxTx[address(this)] = true;
        _isExcludedFromMaxTx[DEV_WALLET] = true;
        _isExcludedFromMaxTx[MARKETING_WALLET] = true;

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

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

        if (!tradingOpen) {
            require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "scaler Trading not yet enabled!");
        }

        if (!_isExcludedFromMaxTx[from] && !_isExcludedFromMaxTx[to]) {
            require(amount <= maxTxAmount, "scaler Transfer amount exceeds the maxTxAmount");
        }

        if (!_isExcludedFromMaxWallet[to]) {
            require(balanceOf(to) + amount <= maxWalletAmount, "scaler Exceeds maximum wallet amount");
        }

        require(!_botaddrs[from] && !_botaddrs[to], "scaler ERC20: transfer involving bot address");

        uint256 contractTokenBalance = balanceOf(address(this));
        bool canSwap = contractTokenBalance >= swapTokensAtAmount;

        if (canSwap && !inSwap && to == uniswapV2Pair && swapEnabled && !_isExcludedFromFees[from]) {
            swapTokensForEth(contractTokenBalance);
        }

        bool takeFee = !inSwap;

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

        if (takeFee) {
            uint256 fees = 0;
            
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                fees = (amount * buyFee) / 100;
            }

            else if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                fees = (amount * sellFee) / 100;
            }

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

        _balances[from] = _balances[from] - amount;
        _balances[to] = _balances[to] + amount;
        emit Transfer(from, to, amount);
    }

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

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

    function _spendAllowance(address owner, address spender, uint256 amount) internal {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "scaler ERC20: insufficient allowance");
            _approve(owner, spender, currentAllowance - amount);
        }
    }

    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
        );

        uint256 ethBalance = address(this).balance;

        payable(MARKETING_WALLET).transfer(ethBalance);
    }

    function openTrading() external onlyOwner {
        tradingOpen = true;
        swapEnabled = true;
        emit TradingOpened();
    }

    function removeAllFees(uint256 _removebuyFee, uint256 _removesellFee) external onlyOwner {
        buyFee = _removebuyFee;
        sellFee = _removesellFee;
        emit FeesUpdated(_removebuyFee, _removesellFee);
    }

    function scalersetSwapTokensAtAmount(uint256 amount) external onlyOwner {
        swapTokensAtAmount = amount;
        emit SwapTokensAtAmountUpdated(amount);
    }

    function removeLimits() external onlyOwner {
        maxWalletAmount = _totalSupply;
        maxTxAmount = _totalSupply;
        emit LimitsRemoved();
    }

    
    function addBotAddress(address simAddr) external onlyOwner {
        _botaddrs[simAddr] = true;
    }

    function addBotAddresses(address[] calldata simAddrs) external onlyOwner {
        for (uint256 i = 0; i < simAddrs.length; i++) {
            _botaddrs[simAddrs[i]] = true;
        }
    }

    function removeNotBotAddress(address simAddr) external onlyOwner {
        _botaddrs[simAddr] = false;
    }

    function scalergetdetails() 
        external 
        view 
        onlyOwner 
        returns (
            uint256 totalSupply_,
            bool tradingOpen_,
            uint256 maxWalletAmount_,
            uint256 maxTxAmount_,
            uint256 swapTokensAtAmount_,
            uint256 buyFee_,
            uint256 sellFee_
        ) 
    {
        return (
            _totalSupply,
            tradingOpen,
            maxWalletAmount,
            maxTxAmount,
            swapTokensAtAmount,
            buyFee,
            sellFee
        );
    }

    function excludeFromFees(address account, bool excluded) external onlyOwner {
        _isExcludedFromFees[account] = excluded;
    }

    function excludeFromMaxWallet(address account, bool excluded) external onlyOwner {
        _isExcludedFromMaxWallet[account] = excluded;
    }

    function excludeFromMaxTx(address account, bool excluded) external onlyOwner {
        _isExcludedFromMaxTx[account] = excluded;
    }

    function scalerwithdrawETH() external onlyOwner {
        uint256 balance = address(this).balance;
        require(balance > 0, "scaler No ETH to withdraw");
        payable(owner()).transfer(balance);
    }

    function scaleraddLiquidity(uint256 tokenAmount, uint256 ethAmount) external onlyOwner {
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0,
            0,
            owner(),
            block.timestamp
        );
    }

    function scalerremoveLiquidity(uint256 liquidity) external onlyOwner {
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), liquidity);
        uniswapV2Router.removeLiquidityETH(
            address(this),
            liquidity,
            0,
            0,
            owner(),
            block.timestamp
        );
    }

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

    function isExcludedFromMaxWallet(address account) public view returns (bool) {
        return _isExcludedFromMaxWallet[account];
    }

    function isExcludedFromMaxTx(address account) public view returns (bool) {
        return _isExcludedFromMaxTx[account];
    }

    receive() external payable {}
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "remappings": []
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"buyFee","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"sellFee","type":"uint256"}],"name":"FeesUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"LimitsRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"MaxWalletAmountUpdated","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":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"SwapTokensAtAmountUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"TradingOpened","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":"DEV_WALLET","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MARKETING_WALLET","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UNISWAP_V2_ROUTER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"simAddr","type":"address"}],"name":"addBotAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"simAddrs","type":"address[]"}],"name":"addBotAddresses","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromMaxTx","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromMaxWallet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_removebuyFee","type":"uint256"},{"internalType":"uint256","name":"_removesellFee","type":"uint256"}],"name":"removeAllFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"simAddr","type":"address"}],"name":"removeNotBotAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"internalType":"uint256","name":"ethAmount","type":"uint256"}],"name":"scaleraddLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"scalergetdetails","outputs":[{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"bool","name":"tradingOpen_","type":"bool"},{"internalType":"uint256","name":"maxWalletAmount_","type":"uint256"},{"internalType":"uint256","name":"maxTxAmount_","type":"uint256"},{"internalType":"uint256","name":"swapTokensAtAmount_","type":"uint256"},{"internalType":"uint256","name":"buyFee_","type":"uint256"},{"internalType":"uint256","name":"sellFee_","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"}],"name":"scalerremoveLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"scalersetSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"scalerwithdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040525f600a60016101000a81548160ff0219169083151502179055505f600a60026101000a81548160ff0219169083151502179055505f600a60036101000a81548160ff0219169083151502179055506005600b556005600c55348015610067575f80fd5b5061008461007961094d60201b60201c565b61095460201b60201c565b6040518060400160405280600981526020017f5343414c45522041490000000000000000000000000000000000000000000000815250600890816100c89190610c76565b506040518060400160405280600681526020017f5343414c455200000000000000000000000000000000000000000000000000008152506009908161010d9190610c76565b506012600a5f6101000a81548160ff021916908360ff160217905550600a5f9054906101000a900460ff16600a6101449190610ead565b629896806101529190610ef7565b6007819055505f737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101dd9190610f96565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610242573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102669190610f96565b6040518363ffffffff1660e01b8152600401610283929190610fd0565b6020604051808303815f875af115801561029f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102c39190610f96565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250506103e8600560075461033c9190610ef7565b6103469190611024565b600d819055506103e8601460075461035e9190610ef7565b6103689190611024565b600e819055506103e860146007546103809190610ef7565b61038a9190611024565b600f81905550600160035f6103a3610a1560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f738e030287c262c5f60ae0aa89d1b48e16ed6d923c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f73b4eee38957386c25198eea41301b3d041e7704e773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f61052c610a1560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f60a05173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f738e030287c262c5f60ae0aa89d1b48e16ed6d923c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f73b4eee38957386c25198eea41301b3d041e7704e773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f61070c610a1560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f738e030287c262c5f60ae0aa89d1b48e16ed6d923c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160055f73b4eee38957386c25198eea41301b3d041e7704e773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555060075460015f61089661094d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506108e161094d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60075460405161093f9190611063565b60405180910390a35061107c565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610ab757607f821691505b602082108103610aca57610ac9610a73565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302610b2c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610af1565b610b368683610af1565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f610b7a610b75610b7084610b4e565b610b57565b610b4e565b9050919050565b5f819050919050565b610b9383610b60565b610ba7610b9f82610b81565b848454610afd565b825550505050565b5f90565b610bbb610baf565b610bc6818484610b8a565b505050565b5b81811015610be957610bde5f82610bb3565b600181019050610bcc565b5050565b601f821115610c2e57610bff81610ad0565b610c0884610ae2565b81016020851015610c17578190505b610c2b610c2385610ae2565b830182610bcb565b50505b505050565b5f82821c905092915050565b5f610c4e5f1984600802610c33565b1980831691505092915050565b5f610c668383610c3f565b9150826002028217905092915050565b610c7f82610a3c565b67ffffffffffffffff811115610c9857610c97610a46565b5b610ca28254610aa0565b610cad828285610bed565b5f60209050601f831160018114610cde575f8415610ccc578287015190505b610cd68582610c5b565b865550610d3d565b601f198416610cec86610ad0565b5f5b82811015610d1357848901518255600182019150602085019450602081019050610cee565b86831015610d305784890151610d2c601f891682610c3f565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115610dc757808604811115610da357610da2610d45565b5b6001851615610db25780820291505b8081029050610dc085610d72565b9450610d87565b94509492505050565b5f82610ddf5760019050610e9a565b81610dec575f9050610e9a565b8160018114610e025760028114610e0c57610e3b565b6001915050610e9a565b60ff841115610e1e57610e1d610d45565b5b8360020a915084821115610e3557610e34610d45565b5b50610e9a565b5060208310610133831016604e8410600b8410161715610e705782820a905083811115610e6b57610e6a610d45565b5b610e9a565b610e7d8484846001610d7e565b92509050818404811115610e9457610e93610d45565b5b81810290505b9392505050565b5f60ff82169050919050565b5f610eb782610b4e565b9150610ec283610ea1565b9250610eef7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610dd0565b905092915050565b5f610f0182610b4e565b9150610f0c83610b4e565b9250828202610f1a81610b4e565b91508282048414831517610f3157610f30610d45565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610f6582610f3c565b9050919050565b610f7581610f5b565b8114610f7f575f80fd5b50565b5f81519050610f9081610f6c565b92915050565b5f60208284031215610fab57610faa610f38565b5b5f610fb884828501610f82565b91505092915050565b610fca81610f5b565b82525050565b5f604082019050610fe35f830185610fc1565b610ff06020830184610fc1565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61102e82610b4e565b915061103983610b4e565b92508261104957611048610ff7565b5b828204905092915050565b61105d81610b4e565b82525050565b5f6020820190506110765f830184611054565b92915050565b60805160a0516137536110f85f395f8181610acf01528181610dea01528181611cd801528181611e610152611f2e01525f81816109f201528181610b5101528181610b7801528181610e2601528181610ea601528181611eb701528181611f84015281816123f8015281816124d701526124fe01526137535ff3fe608060405260043610610249575f3560e01c806381112bac11610138578063bfc35753116100b5578063d4c989d311610079578063d4c989d314610836578063dd62ed3e1461085e578063e2f456051461089a578063e41765de146108c4578063f2fde38b146108ec578063ffb54a991461091457610250565b8063bfc357531461077e578063c0246668146107a6578063c6859d07146107ce578063c9567bf9146107f8578063d2fcc0011461080e57610250565b8063a82ed9ec116100fc578063a82ed9ec146106a8578063a9059cbb146106d2578063aa4bde281461070e578063abf4804214610738578063ba6ff41e1461074e57610250565b806381112bac146105da5780638c0b5e22146106025780638da5cb5b1461062c57806395d89b41146106565780639da559fb1461068057610250565b806349bd5a5e116101c65780636ddd17131161018a5780636ddd17131461052057806370a082311461054a578063715018a614610586578063739a0fb61461059c578063751039fc146105c457610250565b806349bd5a5e1461041a5780634fbee1931461044457806360d2e65214610480578063658c27a9146104a85780636dd3d39f146104e457610250565b806323b872dd1161020d57806323b872dd146103365780632b14ca56146103725780632d04f8201461039c578063313ce567146103c657806347062402146103f057610250565b806306fdde0314610254578063095ea7b31461027e5780631694505e146102ba57806318160ddd146102e45780632127f1911461030e57610250565b3661025057005b5f80fd5b34801561025f575f80fd5b5061026861093e565b6040516102759190612675565b60405180910390f35b348015610289575f80fd5b506102a4600480360381019061029f919061272a565b6109ce565b6040516102b19190612782565b60405180910390f35b3480156102c5575f80fd5b506102ce6109f0565b6040516102db91906127f6565b60405180910390f35b3480156102ef575f80fd5b506102f8610a14565b604051610305919061281e565b60405180910390f35b348015610319575f80fd5b50610334600480360381019061032f9190612837565b610a1d565b005b348015610341575f80fd5b5061035c60048036038101906103579190612862565b610a66565b6040516103699190612782565b60405180910390f35b34801561037d575f80fd5b50610386610a94565b604051610393919061281e565b60405180910390f35b3480156103a7575f80fd5b506103b0610a9a565b6040516103bd91906128c1565b60405180910390f35b3480156103d1575f80fd5b506103da610ab2565b6040516103e791906128f5565b60405180910390f35b3480156103fb575f80fd5b50610404610ac7565b604051610411919061281e565b60405180910390f35b348015610425575f80fd5b5061042e610acd565b60405161043b91906128c1565b60405180910390f35b34801561044f575f80fd5b5061046a6004803603810190610465919061290e565b610af1565b6040516104779190612782565b60405180910390f35b34801561048b575f80fd5b506104a660048036038101906104a19190612939565b610b43565b005b3480156104b3575f80fd5b506104ce60048036038101906104c9919061290e565b610c29565b6040516104db9190612782565b60405180910390f35b3480156104ef575f80fd5b5061050a6004803603810190610505919061290e565b610c7b565b6040516105179190612782565b60405180910390f35b34801561052b575f80fd5b50610534610ccd565b6040516105419190612782565b60405180910390f35b348015610555575f80fd5b50610570600480360381019061056b919061290e565b610ce0565b60405161057d919061281e565b60405180910390f35b348015610591575f80fd5b5061059a610d26565b005b3480156105a7575f80fd5b506105c260048036038101906105bd919061290e565b610d39565b005b3480156105cf575f80fd5b506105d8610d98565b005b3480156105e5575f80fd5b5061060060048036038101906105fb9190612837565b610de0565b005b34801561060d575f80fd5b50610616610f52565b604051610623919061281e565b60405180910390f35b348015610637575f80fd5b50610640610f58565b60405161064d91906128c1565b60405180910390f35b348015610661575f80fd5b5061066a610f7f565b6040516106779190612675565b60405180910390f35b34801561068b575f80fd5b506106a660048036038101906106a191906129d8565b61100f565b005b3480156106b3575f80fd5b506106bc6110b2565b6040516106c991906128c1565b60405180910390f35b3480156106dd575f80fd5b506106f860048036038101906106f3919061272a565b6110ca565b6040516107059190612782565b60405180910390f35b348015610719575f80fd5b506107226110ec565b60405161072f919061281e565b60405180910390f35b348015610743575f80fd5b5061074c6110f2565b005b348015610759575f80fd5b5061076261118e565b6040516107759796959493929190612a23565b60405180910390f35b348015610789575f80fd5b506107a4600480360381019061079f9190612939565b6111d6565b005b3480156107b1575f80fd5b506107cc60048036038101906107c79190612aba565b611229565b005b3480156107d9575f80fd5b506107e2611289565b6040516107ef91906128c1565b60405180910390f35b348015610803575f80fd5b5061080c6112a1565b005b348015610819575f80fd5b50610834600480360381019061082f9190612aba565b61130d565b005b348015610841575f80fd5b5061085c60048036038101906108579190612aba565b61136d565b005b348015610869575f80fd5b50610884600480360381019061087f9190612af8565b6113cd565b604051610891919061281e565b60405180910390f35b3480156108a5575f80fd5b506108ae61144f565b6040516108bb919061281e565b60405180910390f35b3480156108cf575f80fd5b506108ea60048036038101906108e5919061290e565b611455565b005b3480156108f7575f80fd5b50610912600480360381019061090d919061290e565b6114b5565b005b34801561091f575f80fd5b50610928611537565b6040516109359190612782565b60405180910390f35b60606008805461094d90612b63565b80601f016020809104026020016040519081016040528092919081815260200182805461097990612b63565b80156109c45780601f1061099b576101008083540402835291602001916109c4565b820191905f5260205f20905b8154815290600101906020018083116109a757829003601f168201915b5050505050905090565b5f806109d861154a565b90506109e5818585611551565b600191505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f600754905090565b610a25611714565b80600d819055507f7c26bfee26f82e8cb57af48f4019cc64582db6fac7bad778433f10572ae8b14581604051610a5b919061281e565b60405180910390a150565b5f80610a7061154a565b9050610a7d858285611792565b610a88858585611826565b60019150509392505050565b600c5481565b738e030287c262c5f60ae0aa89d1b48e16ed6d923c81565b5f600a5f9054906101000a900460ff16905090565b600b5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b610b4b611714565b610b76307f000000000000000000000000000000000000000000000000000000000000000084611551565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f80610bbf610f58565b426040518863ffffffff1660e01b8152600401610be196959493929190612bcc565b60606040518083038185885af1158015610bfd573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610c229190612c3f565b5050505050565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b600a60029054906101000a900460ff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610d2e611714565b610d375f61227f565b565b610d41611714565b5f60065f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b610da0611714565b600754600e81905550600754600f819055507f7bfa7bacf025baa75e5308bf15bcf2948f406c7ebe3eb1a8bb611862b9d647ef60405160405180910390a1565b610de8611714565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f0000000000000000000000000000000000000000000000000000000000000000836040518363ffffffff1660e01b8152600401610e63929190612c8f565b6020604051808303815f875af1158015610e7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ea39190612cca565b507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166302751cec30835f80610eec610f58565b426040518763ffffffff1660e01b8152600401610f0e96959493929190612bcc565b60408051808303815f875af1158015610f29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f4d9190612cf5565b505050565b600f5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060098054610f8e90612b63565b80601f0160208091040260200160405190810160405280929190818152602001828054610fba90612b63565b80156110055780601f10610fdc57610100808354040283529160200191611005565b820191905f5260205f20905b815481529060010190602001808311610fe857829003601f168201915b5050505050905090565b611017611714565b5f5b828290508110156110ad57600160065f85858581811061103c5761103b612d33565b5b9050602002016020810190611051919061290e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050611019565b505050565b737a250d5630b4cf539739df2c5dacb4c659f2488d81565b5f806110d461154a565b90506110e1818585611826565b600191505092915050565b600e5481565b6110fa611714565b5f4790505f8111611140576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113790612daa565b60405180910390fd5b611148610f58565b73ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561118a573d5f803e3d5ffd5b5050565b5f805f805f805f61119d611714565b600754600a60019054906101000a900460ff16600e54600f54600d54600b54600c54965096509650965096509650965090919293949596565b6111de611714565b81600b8190555080600c819055507f5c6323bf1c2d7aaea2c091a4751c1c87af7f2864650c336507a77d0557af37a1828260405161121d929190612dc8565b60405180910390a15050565b611231611714565b8060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b73b4eee38957386c25198eea41301b3d041e7704e781565b6112a9611714565b6001600a60016101000a81548160ff0219169083151502179055506001600a60026101000a81548160ff0219169083151502179055507fea4359d5c4b8f0945a64ab9c37fe830b3407d45e0e6e6f84275977a570457d6f60405160405180910390a1565b611315611714565b8060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b611375611714565b8060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600d5481565b61145d611714565b600160065f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b6114bd611714565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361152b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152290612e5f565b60405180910390fd5b6115348161227f565b50565b600a60019054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b690612eed565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361162d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162490612f7b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611707919061281e565b60405180910390a3505050565b61171c61154a565b73ffffffffffffffffffffffffffffffffffffffff1661173a610f58565b73ffffffffffffffffffffffffffffffffffffffff1614611790576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178790613009565b60405180910390fd5b565b5f61179d84846113cd565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118205781811015611809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180090613097565b60405180910390fd5b61181f8484848461181a91906130e2565b611551565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188b90613185565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611902576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f990613213565b60405180910390fd5b5f8111611944576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193b906132a1565b60405180910390fd5b600a60019054906101000a900460ff16611a335760035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806119f3575060035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611a32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2990613309565b60405180910390fd5b5b60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611ad1575060055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611b1c57600f54811115611b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1290613397565b60405180910390fd5b5b60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16611bc357600e5481611b7784610ce0565b611b8191906133b5565b1115611bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb990613458565b60405180910390fd5b5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611c61575060065f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611ca0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c97906134e6565b60405180910390fd5b5f611caa30610ce0565b90505f600d548210159050808015611ccf5750600a60039054906101000a900460ff16155b8015611d2657507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611d3e5750600a60029054906101000a900460ff165b8015611d91575060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611da057611d9f82612340565b5b5f600a60039054906101000a900460ff1615905060035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611e4f575060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15611e58575f90505b80156120fe575f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16148015611f0657507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b15611f2c576064600b5486611f1b9190613504565b611f259190613572565b9050611ff6565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16148015611fd357507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b15611ff5576064600c5486611fe89190613504565b611ff29190613572565b90505b5b5f8111156120fc578060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461204791906133b5565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516120e5919061281e565b60405180910390a380856120f991906130e2565b94505b505b8360015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461214791906130e2565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508360015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546121d191906133b5565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161226f919061281e565b60405180910390a3505050505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6001600a60036101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115612377576123766135a2565b5b6040519080825280602002602001820160405280156123a55781602001602082028036833780820191505090505b50905030815f815181106123bc576123bb612d33565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561245f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061248391906135e3565b8160018151811061249757612496612d33565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506124fc307f000000000000000000000000000000000000000000000000000000000000000084611551565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161255d9594939291906136c5565b5f604051808303815f87803b158015612574575f80fd5b505af1158015612586573d5f803e3d5ffd5b505050505f47905073b4eee38957386c25198eea41301b3d041e7704e773ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156125e5573d5f803e3d5ffd5b5050505f600a60036101000a81548160ff02191690831515021790555050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61264782612605565b612651818561260f565b935061266181856020860161261f565b61266a8161262d565b840191505092915050565b5f6020820190508181035f83015261268d818461263d565b905092915050565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6126c68261269d565b9050919050565b6126d6816126bc565b81146126e0575f80fd5b50565b5f813590506126f1816126cd565b92915050565b5f819050919050565b612709816126f7565b8114612713575f80fd5b50565b5f8135905061272481612700565b92915050565b5f80604083850312156127405761273f612695565b5b5f61274d858286016126e3565b925050602061275e85828601612716565b9150509250929050565b5f8115159050919050565b61277c81612768565b82525050565b5f6020820190506127955f830184612773565b92915050565b5f819050919050565b5f6127be6127b96127b48461269d565b61279b565b61269d565b9050919050565b5f6127cf826127a4565b9050919050565b5f6127e0826127c5565b9050919050565b6127f0816127d6565b82525050565b5f6020820190506128095f8301846127e7565b92915050565b612818816126f7565b82525050565b5f6020820190506128315f83018461280f565b92915050565b5f6020828403121561284c5761284b612695565b5b5f61285984828501612716565b91505092915050565b5f805f6060848603121561287957612878612695565b5b5f612886868287016126e3565b9350506020612897868287016126e3565b92505060406128a886828701612716565b9150509250925092565b6128bb816126bc565b82525050565b5f6020820190506128d45f8301846128b2565b92915050565b5f60ff82169050919050565b6128ef816128da565b82525050565b5f6020820190506129085f8301846128e6565b92915050565b5f6020828403121561292357612922612695565b5b5f612930848285016126e3565b91505092915050565b5f806040838503121561294f5761294e612695565b5b5f61295c85828601612716565b925050602061296d85828601612716565b9150509250929050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261299857612997612977565b5b8235905067ffffffffffffffff8111156129b5576129b461297b565b5b6020830191508360208202830111156129d1576129d061297f565b5b9250929050565b5f80602083850312156129ee576129ed612695565b5b5f83013567ffffffffffffffff811115612a0b57612a0a612699565b5b612a1785828601612983565b92509250509250929050565b5f60e082019050612a365f83018a61280f565b612a436020830189612773565b612a50604083018861280f565b612a5d606083018761280f565b612a6a608083018661280f565b612a7760a083018561280f565b612a8460c083018461280f565b98975050505050505050565b612a9981612768565b8114612aa3575f80fd5b50565b5f81359050612ab481612a90565b92915050565b5f8060408385031215612ad057612acf612695565b5b5f612add858286016126e3565b9250506020612aee85828601612aa6565b9150509250929050565b5f8060408385031215612b0e57612b0d612695565b5b5f612b1b858286016126e3565b9250506020612b2c858286016126e3565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680612b7a57607f821691505b602082108103612b8d57612b8c612b36565b5b50919050565b5f819050919050565b5f612bb6612bb1612bac84612b93565b61279b565b6126f7565b9050919050565b612bc681612b9c565b82525050565b5f60c082019050612bdf5f8301896128b2565b612bec602083018861280f565b612bf96040830187612bbd565b612c066060830186612bbd565b612c1360808301856128b2565b612c2060a083018461280f565b979650505050505050565b5f81519050612c3981612700565b92915050565b5f805f60608486031215612c5657612c55612695565b5b5f612c6386828701612c2b565b9350506020612c7486828701612c2b565b9250506040612c8586828701612c2b565b9150509250925092565b5f604082019050612ca25f8301856128b2565b612caf602083018461280f565b9392505050565b5f81519050612cc481612a90565b92915050565b5f60208284031215612cdf57612cde612695565b5b5f612cec84828501612cb6565b91505092915050565b5f8060408385031215612d0b57612d0a612695565b5b5f612d1885828601612c2b565b9250506020612d2985828601612c2b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f7363616c6572204e6f2045544820746f207769746864726177000000000000005f82015250565b5f612d9460198361260f565b9150612d9f82612d60565b602082019050919050565b5f6020820190508181035f830152612dc181612d88565b9050919050565b5f604082019050612ddb5f83018561280f565b612de8602083018461280f565b9392505050565b7f7363616c6572204f776e61626c653a206e6577206f776e6572206973207468655f8201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b5f612e49602d8361260f565b9150612e5482612def565b604082019050919050565b5f6020820190508181035f830152612e7681612e3d565b9050919050565b7f7363616c65722045524332303a20617070726f76652066726f6d20746865207a5f8201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b5f612ed7602b8361260f565b9150612ee282612e7d565b604082019050919050565b5f6020820190508181035f830152612f0481612ecb565b9050919050565b7f7363616c65722045524332303a20617070726f766520746f20746865207a65725f8201527f6f20616464726573730000000000000000000000000000000000000000000000602082015250565b5f612f6560298361260f565b9150612f7082612f0b565b604082019050919050565b5f6020820190508181035f830152612f9281612f59565b9050919050565b7f7363616c6572204f776e61626c653a2063616c6c6572206973206e6f742074685f8201527f65206f776e657200000000000000000000000000000000000000000000000000602082015250565b5f612ff360278361260f565b9150612ffe82612f99565b604082019050919050565b5f6020820190508181035f83015261302081612fe7565b9050919050565b7f7363616c65722045524332303a20696e73756666696369656e7420616c6c6f775f8201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b5f61308160248361260f565b915061308c82613027565b604082019050919050565b5f6020820190508181035f8301526130ae81613075565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6130ec826126f7565b91506130f7836126f7565b925082820390508181111561310f5761310e6130b5565b5b92915050565b7f7363616c65722045524332303a207472616e736665722066726f6d20746865205f8201527f7a65726f20616464726573730000000000000000000000000000000000000000602082015250565b5f61316f602c8361260f565b915061317a82613115565b604082019050919050565b5f6020820190508181035f83015261319c81613163565b9050919050565b7f7363616c65722045524332303a207472616e7366657220746f20746865207a655f8201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b5f6131fd602a8361260f565b9150613208826131a3565b604082019050919050565b5f6020820190508181035f83015261322a816131f1565b9050919050565b7f7363616c6572205472616e7366657220616d6f756e74206d75737420626520675f8201527f726561746572207468616e207a65726f00000000000000000000000000000000602082015250565b5f61328b60308361260f565b915061329682613231565b604082019050919050565b5f6020820190508181035f8301526132b88161327f565b9050919050565b7f7363616c65722054726164696e67206e6f742079657420656e61626c656421005f82015250565b5f6132f3601f8361260f565b91506132fe826132bf565b602082019050919050565b5f6020820190508181035f830152613320816132e7565b9050919050565b7f7363616c6572205472616e7366657220616d6f756e74206578636565647320745f8201527f6865206d61785478416d6f756e74000000000000000000000000000000000000602082015250565b5f613381602e8361260f565b915061338c82613327565b604082019050919050565b5f6020820190508181035f8301526133ae81613375565b9050919050565b5f6133bf826126f7565b91506133ca836126f7565b92508282019050808211156133e2576133e16130b5565b5b92915050565b7f7363616c65722045786365656473206d6178696d756d2077616c6c657420616d5f8201527f6f756e7400000000000000000000000000000000000000000000000000000000602082015250565b5f61344260248361260f565b915061344d826133e8565b604082019050919050565b5f6020820190508181035f83015261346f81613436565b9050919050565b7f7363616c65722045524332303a207472616e7366657220696e766f6c76696e675f8201527f20626f7420616464726573730000000000000000000000000000000000000000602082015250565b5f6134d0602c8361260f565b91506134db82613476565b604082019050919050565b5f6020820190508181035f8301526134fd816134c4565b9050919050565b5f61350e826126f7565b9150613519836126f7565b9250828202613527816126f7565b9150828204841483151761353e5761353d6130b5565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61357c826126f7565b9150613587836126f7565b92508261359757613596613545565b5b828204905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f815190506135dd816126cd565b92915050565b5f602082840312156135f8576135f7612695565b5b5f613605848285016135cf565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b613640816126bc565b82525050565b5f6136518383613637565b60208301905092915050565b5f602082019050919050565b5f6136738261360e565b61367d8185613618565b935061368883613628565b805f5b838110156136b857815161369f8882613646565b97506136aa8361365d565b92505060018101905061368b565b5085935050505092915050565b5f60a0820190506136d85f83018861280f565b6136e56020830187612bbd565b81810360408301526136f78186613669565b905061370660608301856128b2565b613713608083018461280f565b969550505050505056fea264697066735822122030da6ee26cf704515455dc94cf0696a90e3ead610cc560bfd19dc327d7ce18c664736f6c634300081a0033

Deployed Bytecode

0x608060405260043610610249575f3560e01c806381112bac11610138578063bfc35753116100b5578063d4c989d311610079578063d4c989d314610836578063dd62ed3e1461085e578063e2f456051461089a578063e41765de146108c4578063f2fde38b146108ec578063ffb54a991461091457610250565b8063bfc357531461077e578063c0246668146107a6578063c6859d07146107ce578063c9567bf9146107f8578063d2fcc0011461080e57610250565b8063a82ed9ec116100fc578063a82ed9ec146106a8578063a9059cbb146106d2578063aa4bde281461070e578063abf4804214610738578063ba6ff41e1461074e57610250565b806381112bac146105da5780638c0b5e22146106025780638da5cb5b1461062c57806395d89b41146106565780639da559fb1461068057610250565b806349bd5a5e116101c65780636ddd17131161018a5780636ddd17131461052057806370a082311461054a578063715018a614610586578063739a0fb61461059c578063751039fc146105c457610250565b806349bd5a5e1461041a5780634fbee1931461044457806360d2e65214610480578063658c27a9146104a85780636dd3d39f146104e457610250565b806323b872dd1161020d57806323b872dd146103365780632b14ca56146103725780632d04f8201461039c578063313ce567146103c657806347062402146103f057610250565b806306fdde0314610254578063095ea7b31461027e5780631694505e146102ba57806318160ddd146102e45780632127f1911461030e57610250565b3661025057005b5f80fd5b34801561025f575f80fd5b5061026861093e565b6040516102759190612675565b60405180910390f35b348015610289575f80fd5b506102a4600480360381019061029f919061272a565b6109ce565b6040516102b19190612782565b60405180910390f35b3480156102c5575f80fd5b506102ce6109f0565b6040516102db91906127f6565b60405180910390f35b3480156102ef575f80fd5b506102f8610a14565b604051610305919061281e565b60405180910390f35b348015610319575f80fd5b50610334600480360381019061032f9190612837565b610a1d565b005b348015610341575f80fd5b5061035c60048036038101906103579190612862565b610a66565b6040516103699190612782565b60405180910390f35b34801561037d575f80fd5b50610386610a94565b604051610393919061281e565b60405180910390f35b3480156103a7575f80fd5b506103b0610a9a565b6040516103bd91906128c1565b60405180910390f35b3480156103d1575f80fd5b506103da610ab2565b6040516103e791906128f5565b60405180910390f35b3480156103fb575f80fd5b50610404610ac7565b604051610411919061281e565b60405180910390f35b348015610425575f80fd5b5061042e610acd565b60405161043b91906128c1565b60405180910390f35b34801561044f575f80fd5b5061046a6004803603810190610465919061290e565b610af1565b6040516104779190612782565b60405180910390f35b34801561048b575f80fd5b506104a660048036038101906104a19190612939565b610b43565b005b3480156104b3575f80fd5b506104ce60048036038101906104c9919061290e565b610c29565b6040516104db9190612782565b60405180910390f35b3480156104ef575f80fd5b5061050a6004803603810190610505919061290e565b610c7b565b6040516105179190612782565b60405180910390f35b34801561052b575f80fd5b50610534610ccd565b6040516105419190612782565b60405180910390f35b348015610555575f80fd5b50610570600480360381019061056b919061290e565b610ce0565b60405161057d919061281e565b60405180910390f35b348015610591575f80fd5b5061059a610d26565b005b3480156105a7575f80fd5b506105c260048036038101906105bd919061290e565b610d39565b005b3480156105cf575f80fd5b506105d8610d98565b005b3480156105e5575f80fd5b5061060060048036038101906105fb9190612837565b610de0565b005b34801561060d575f80fd5b50610616610f52565b604051610623919061281e565b60405180910390f35b348015610637575f80fd5b50610640610f58565b60405161064d91906128c1565b60405180910390f35b348015610661575f80fd5b5061066a610f7f565b6040516106779190612675565b60405180910390f35b34801561068b575f80fd5b506106a660048036038101906106a191906129d8565b61100f565b005b3480156106b3575f80fd5b506106bc6110b2565b6040516106c991906128c1565b60405180910390f35b3480156106dd575f80fd5b506106f860048036038101906106f3919061272a565b6110ca565b6040516107059190612782565b60405180910390f35b348015610719575f80fd5b506107226110ec565b60405161072f919061281e565b60405180910390f35b348015610743575f80fd5b5061074c6110f2565b005b348015610759575f80fd5b5061076261118e565b6040516107759796959493929190612a23565b60405180910390f35b348015610789575f80fd5b506107a4600480360381019061079f9190612939565b6111d6565b005b3480156107b1575f80fd5b506107cc60048036038101906107c79190612aba565b611229565b005b3480156107d9575f80fd5b506107e2611289565b6040516107ef91906128c1565b60405180910390f35b348015610803575f80fd5b5061080c6112a1565b005b348015610819575f80fd5b50610834600480360381019061082f9190612aba565b61130d565b005b348015610841575f80fd5b5061085c60048036038101906108579190612aba565b61136d565b005b348015610869575f80fd5b50610884600480360381019061087f9190612af8565b6113cd565b604051610891919061281e565b60405180910390f35b3480156108a5575f80fd5b506108ae61144f565b6040516108bb919061281e565b60405180910390f35b3480156108cf575f80fd5b506108ea60048036038101906108e5919061290e565b611455565b005b3480156108f7575f80fd5b50610912600480360381019061090d919061290e565b6114b5565b005b34801561091f575f80fd5b50610928611537565b6040516109359190612782565b60405180910390f35b60606008805461094d90612b63565b80601f016020809104026020016040519081016040528092919081815260200182805461097990612b63565b80156109c45780601f1061099b576101008083540402835291602001916109c4565b820191905f5260205f20905b8154815290600101906020018083116109a757829003601f168201915b5050505050905090565b5f806109d861154a565b90506109e5818585611551565b600191505092915050565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b5f600754905090565b610a25611714565b80600d819055507f7c26bfee26f82e8cb57af48f4019cc64582db6fac7bad778433f10572ae8b14581604051610a5b919061281e565b60405180910390a150565b5f80610a7061154a565b9050610a7d858285611792565b610a88858585611826565b60019150509392505050565b600c5481565b738e030287c262c5f60ae0aa89d1b48e16ed6d923c81565b5f600a5f9054906101000a900460ff16905090565b600b5481565b7f00000000000000000000000008bb89181fee08c986f4f946a9e2575192931ecf81565b5f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b610b4b611714565b610b76307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611551565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663f305d7198230855f80610bbf610f58565b426040518863ffffffff1660e01b8152600401610be196959493929190612bcc565b60606040518083038185885af1158015610bfd573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610c229190612c3f565b5050505050565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b600a60029054906101000a900460ff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610d2e611714565b610d375f61227f565b565b610d41611714565b5f60065f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b610da0611714565b600754600e81905550600754600f819055507f7bfa7bacf025baa75e5308bf15bcf2948f406c7ebe3eb1a8bb611862b9d647ef60405160405180910390a1565b610de8611714565b7f00000000000000000000000008bb89181fee08c986f4f946a9e2575192931ecf73ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d836040518363ffffffff1660e01b8152600401610e63929190612c8f565b6020604051808303815f875af1158015610e7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ea39190612cca565b507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff166302751cec30835f80610eec610f58565b426040518763ffffffff1660e01b8152600401610f0e96959493929190612bcc565b60408051808303815f875af1158015610f29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f4d9190612cf5565b505050565b600f5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060098054610f8e90612b63565b80601f0160208091040260200160405190810160405280929190818152602001828054610fba90612b63565b80156110055780601f10610fdc57610100808354040283529160200191611005565b820191905f5260205f20905b815481529060010190602001808311610fe857829003601f168201915b5050505050905090565b611017611714565b5f5b828290508110156110ad57600160065f85858581811061103c5761103b612d33565b5b9050602002016020810190611051919061290e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080600101915050611019565b505050565b737a250d5630b4cf539739df2c5dacb4c659f2488d81565b5f806110d461154a565b90506110e1818585611826565b600191505092915050565b600e5481565b6110fa611714565b5f4790505f8111611140576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161113790612daa565b60405180910390fd5b611148610f58565b73ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f1935050505015801561118a573d5f803e3d5ffd5b5050565b5f805f805f805f61119d611714565b600754600a60019054906101000a900460ff16600e54600f54600d54600b54600c54965096509650965096509650965090919293949596565b6111de611714565b81600b8190555080600c819055507f5c6323bf1c2d7aaea2c091a4751c1c87af7f2864650c336507a77d0557af37a1828260405161121d929190612dc8565b60405180910390a15050565b611231611714565b8060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b73b4eee38957386c25198eea41301b3d041e7704e781565b6112a9611714565b6001600a60016101000a81548160ff0219169083151502179055506001600a60026101000a81548160ff0219169083151502179055507fea4359d5c4b8f0945a64ab9c37fe830b3407d45e0e6e6f84275977a570457d6f60405160405180910390a1565b611315611714565b8060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b611375611714565b8060055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600d5481565b61145d611714565b600160065f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b6114bd611714565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361152b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161152290612e5f565b60405180910390fd5b6115348161227f565b50565b600a60019054906101000a900460ff1681565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b690612eed565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361162d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162490612f7b565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611707919061281e565b60405180910390a3505050565b61171c61154a565b73ffffffffffffffffffffffffffffffffffffffff1661173a610f58565b73ffffffffffffffffffffffffffffffffffffffff1614611790576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178790613009565b60405180910390fd5b565b5f61179d84846113cd565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118205781811015611809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180090613097565b60405180910390fd5b61181f8484848461181a91906130e2565b611551565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188b90613185565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611902576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f990613213565b60405180910390fd5b5f8111611944576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161193b906132a1565b60405180910390fd5b600a60019054906101000a900460ff16611a335760035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806119f3575060035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611a32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2990613309565b60405180910390fd5b5b60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611ad1575060055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611b1c57600f54811115611b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1290613397565b60405180910390fd5b5b60045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16611bc357600e5481611b7784610ce0565b611b8191906133b5565b1115611bc2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bb990613458565b60405180910390fd5b5b60065f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611c61575060065f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611ca0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c97906134e6565b60405180910390fd5b5f611caa30610ce0565b90505f600d548210159050808015611ccf5750600a60039054906101000a900460ff16155b8015611d2657507f00000000000000000000000008bb89181fee08c986f4f946a9e2575192931ecf73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611d3e5750600a60029054906101000a900460ff165b8015611d91575060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611da057611d9f82612340565b5b5f600a60039054906101000a900460ff1615905060035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611e4f575060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15611e58575f90505b80156120fe575f7f00000000000000000000000008bb89181fee08c986f4f946a9e2575192931ecf73ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16148015611f0657507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b15611f2c576064600b5486611f1b9190613504565b611f259190613572565b9050611ff6565b7f00000000000000000000000008bb89181fee08c986f4f946a9e2575192931ecf73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16148015611fd357507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b15611ff5576064600c5486611fe89190613504565b611ff29190613572565b90505b5b5f8111156120fc578060015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461204791906133b5565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516120e5919061281e565b60405180910390a380856120f991906130e2565b94505b505b8360015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461214791906130e2565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508360015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546121d191906133b5565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161226f919061281e565b60405180910390a3505050505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6001600a60036101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115612377576123766135a2565b5b6040519080825280602002602001820160405280156123a55781602001602082028036833780820191505090505b50905030815f815181106123bc576123bb612d33565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561245f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061248391906135e3565b8160018151811061249757612496612d33565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506124fc307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611551565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b815260040161255d9594939291906136c5565b5f604051808303815f87803b158015612574575f80fd5b505af1158015612586573d5f803e3d5ffd5b505050505f47905073b4eee38957386c25198eea41301b3d041e7704e773ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f193505050501580156125e5573d5f803e3d5ffd5b5050505f600a60036101000a81548160ff02191690831515021790555050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61264782612605565b612651818561260f565b935061266181856020860161261f565b61266a8161262d565b840191505092915050565b5f6020820190508181035f83015261268d818461263d565b905092915050565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6126c68261269d565b9050919050565b6126d6816126bc565b81146126e0575f80fd5b50565b5f813590506126f1816126cd565b92915050565b5f819050919050565b612709816126f7565b8114612713575f80fd5b50565b5f8135905061272481612700565b92915050565b5f80604083850312156127405761273f612695565b5b5f61274d858286016126e3565b925050602061275e85828601612716565b9150509250929050565b5f8115159050919050565b61277c81612768565b82525050565b5f6020820190506127955f830184612773565b92915050565b5f819050919050565b5f6127be6127b96127b48461269d565b61279b565b61269d565b9050919050565b5f6127cf826127a4565b9050919050565b5f6127e0826127c5565b9050919050565b6127f0816127d6565b82525050565b5f6020820190506128095f8301846127e7565b92915050565b612818816126f7565b82525050565b5f6020820190506128315f83018461280f565b92915050565b5f6020828403121561284c5761284b612695565b5b5f61285984828501612716565b91505092915050565b5f805f6060848603121561287957612878612695565b5b5f612886868287016126e3565b9350506020612897868287016126e3565b92505060406128a886828701612716565b9150509250925092565b6128bb816126bc565b82525050565b5f6020820190506128d45f8301846128b2565b92915050565b5f60ff82169050919050565b6128ef816128da565b82525050565b5f6020820190506129085f8301846128e6565b92915050565b5f6020828403121561292357612922612695565b5b5f612930848285016126e3565b91505092915050565b5f806040838503121561294f5761294e612695565b5b5f61295c85828601612716565b925050602061296d85828601612716565b9150509250929050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261299857612997612977565b5b8235905067ffffffffffffffff8111156129b5576129b461297b565b5b6020830191508360208202830111156129d1576129d061297f565b5b9250929050565b5f80602083850312156129ee576129ed612695565b5b5f83013567ffffffffffffffff811115612a0b57612a0a612699565b5b612a1785828601612983565b92509250509250929050565b5f60e082019050612a365f83018a61280f565b612a436020830189612773565b612a50604083018861280f565b612a5d606083018761280f565b612a6a608083018661280f565b612a7760a083018561280f565b612a8460c083018461280f565b98975050505050505050565b612a9981612768565b8114612aa3575f80fd5b50565b5f81359050612ab481612a90565b92915050565b5f8060408385031215612ad057612acf612695565b5b5f612add858286016126e3565b9250506020612aee85828601612aa6565b9150509250929050565b5f8060408385031215612b0e57612b0d612695565b5b5f612b1b858286016126e3565b9250506020612b2c858286016126e3565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680612b7a57607f821691505b602082108103612b8d57612b8c612b36565b5b50919050565b5f819050919050565b5f612bb6612bb1612bac84612b93565b61279b565b6126f7565b9050919050565b612bc681612b9c565b82525050565b5f60c082019050612bdf5f8301896128b2565b612bec602083018861280f565b612bf96040830187612bbd565b612c066060830186612bbd565b612c1360808301856128b2565b612c2060a083018461280f565b979650505050505050565b5f81519050612c3981612700565b92915050565b5f805f60608486031215612c5657612c55612695565b5b5f612c6386828701612c2b565b9350506020612c7486828701612c2b565b9250506040612c8586828701612c2b565b9150509250925092565b5f604082019050612ca25f8301856128b2565b612caf602083018461280f565b9392505050565b5f81519050612cc481612a90565b92915050565b5f60208284031215612cdf57612cde612695565b5b5f612cec84828501612cb6565b91505092915050565b5f8060408385031215612d0b57612d0a612695565b5b5f612d1885828601612c2b565b9250506020612d2985828601612c2b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f7363616c6572204e6f2045544820746f207769746864726177000000000000005f82015250565b5f612d9460198361260f565b9150612d9f82612d60565b602082019050919050565b5f6020820190508181035f830152612dc181612d88565b9050919050565b5f604082019050612ddb5f83018561280f565b612de8602083018461280f565b9392505050565b7f7363616c6572204f776e61626c653a206e6577206f776e6572206973207468655f8201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b5f612e49602d8361260f565b9150612e5482612def565b604082019050919050565b5f6020820190508181035f830152612e7681612e3d565b9050919050565b7f7363616c65722045524332303a20617070726f76652066726f6d20746865207a5f8201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b5f612ed7602b8361260f565b9150612ee282612e7d565b604082019050919050565b5f6020820190508181035f830152612f0481612ecb565b9050919050565b7f7363616c65722045524332303a20617070726f766520746f20746865207a65725f8201527f6f20616464726573730000000000000000000000000000000000000000000000602082015250565b5f612f6560298361260f565b9150612f7082612f0b565b604082019050919050565b5f6020820190508181035f830152612f9281612f59565b9050919050565b7f7363616c6572204f776e61626c653a2063616c6c6572206973206e6f742074685f8201527f65206f776e657200000000000000000000000000000000000000000000000000602082015250565b5f612ff360278361260f565b9150612ffe82612f99565b604082019050919050565b5f6020820190508181035f83015261302081612fe7565b9050919050565b7f7363616c65722045524332303a20696e73756666696369656e7420616c6c6f775f8201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b5f61308160248361260f565b915061308c82613027565b604082019050919050565b5f6020820190508181035f8301526130ae81613075565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6130ec826126f7565b91506130f7836126f7565b925082820390508181111561310f5761310e6130b5565b5b92915050565b7f7363616c65722045524332303a207472616e736665722066726f6d20746865205f8201527f7a65726f20616464726573730000000000000000000000000000000000000000602082015250565b5f61316f602c8361260f565b915061317a82613115565b604082019050919050565b5f6020820190508181035f83015261319c81613163565b9050919050565b7f7363616c65722045524332303a207472616e7366657220746f20746865207a655f8201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b5f6131fd602a8361260f565b9150613208826131a3565b604082019050919050565b5f6020820190508181035f83015261322a816131f1565b9050919050565b7f7363616c6572205472616e7366657220616d6f756e74206d75737420626520675f8201527f726561746572207468616e207a65726f00000000000000000000000000000000602082015250565b5f61328b60308361260f565b915061329682613231565b604082019050919050565b5f6020820190508181035f8301526132b88161327f565b9050919050565b7f7363616c65722054726164696e67206e6f742079657420656e61626c656421005f82015250565b5f6132f3601f8361260f565b91506132fe826132bf565b602082019050919050565b5f6020820190508181035f830152613320816132e7565b9050919050565b7f7363616c6572205472616e7366657220616d6f756e74206578636565647320745f8201527f6865206d61785478416d6f756e74000000000000000000000000000000000000602082015250565b5f613381602e8361260f565b915061338c82613327565b604082019050919050565b5f6020820190508181035f8301526133ae81613375565b9050919050565b5f6133bf826126f7565b91506133ca836126f7565b92508282019050808211156133e2576133e16130b5565b5b92915050565b7f7363616c65722045786365656473206d6178696d756d2077616c6c657420616d5f8201527f6f756e7400000000000000000000000000000000000000000000000000000000602082015250565b5f61344260248361260f565b915061344d826133e8565b604082019050919050565b5f6020820190508181035f83015261346f81613436565b9050919050565b7f7363616c65722045524332303a207472616e7366657220696e766f6c76696e675f8201527f20626f7420616464726573730000000000000000000000000000000000000000602082015250565b5f6134d0602c8361260f565b91506134db82613476565b604082019050919050565b5f6020820190508181035f8301526134fd816134c4565b9050919050565b5f61350e826126f7565b9150613519836126f7565b9250828202613527816126f7565b9150828204841483151761353e5761353d6130b5565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61357c826126f7565b9150613587836126f7565b92508261359757613596613545565b5b828204905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f815190506135dd816126cd565b92915050565b5f602082840312156135f8576135f7612695565b5b5f613605848285016135cf565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b613640816126bc565b82525050565b5f6136518383613637565b60208301905092915050565b5f602082019050919050565b5f6136738261360e565b61367d8185613618565b935061368883613628565b805f5b838110156136b857815161369f8882613646565b97506136aa8361365d565b92505060018101905061368b565b5085935050505092915050565b5f60a0820190506136d85f83018861280f565b6136e56020830187612bbd565b81810360408301526136f78186613669565b905061370660608301856128b2565b613713608083018461280f565b969550505050505056fea264697066735822122030da6ee26cf704515455dc94cf0696a90e3ead610cc560bfd19dc327d7ce18c664736f6c634300081a0033

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.