ETH Price: $2,460.73 (-8.17%)
Gas: 0.99 Gwei

Token

PEPE ALL STARS (STARS)
 

Overview

Max Total Supply

420,690,000,000,000 STARS

Holders

101

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
73,656,696,519.823502570650048188 STARS

Value
$0.00
0xa4f789a0f8a1fd7940834affccf23198353d4e8c
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:
Redis

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT

pragma solidity 0.8.16;

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

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

interface Token {
    function transferFrom(address, address, uint) external returns (bool);

    function transfer(address, uint) external returns (bool);
}

interface IUniswapV2Factory {
    function createPair(
        address tokenA,
        address tokenB
    ) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETCSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;

    function swapExactTokensForAVAXSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;

    function swapExactTokensForROSESupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external payable;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function WETC() external pure returns (address);

    function WHT() external pure returns (address);

    function WROSE() external pure returns (address);

    function WAVAX() external pure returns (address);
}

contract Ownable {
    address private _owner;

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

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

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

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

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

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(
            newOwner != address(0x0),
            "call the renounceOwnership for zero address"
        );

        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

abstract contract BaseToken {
    event TokenCreated(
        address indexed owner,
        address indexed token,
        string tokenType,
        uint256 version
    );
}

contract Redis is IERC20, Ownable, BaseToken {
    uint256 public constant VERSION = 2;

    mapping(address => uint256) private rOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;

    uint256 private constant MAX = ~uint256(0);
    uint256 private immutable tTotal;
    uint256 private rTotal;

    uint16 public reflectionTax;
    uint16 public treasuryTax;

    string private _name;
    string private _symbol;
    uint8 private immutable _decimals;

    address payable public treasuryAddress;

    IUniswapV2Router02 public uniswapV2Router;
    address public immutable uniswapV2Pair;

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

    event UpdatedTreasuryWallet(address indexed account);
    event ChangedFees(uint16 reflectionTax, uint16 treasuryTax);
    event ChangedSwapEnable(bool enable);
    event ExcludedAccountsFromFees(address[] accounts, bool excluded);
    event WithdrawedTokens(
        address indexed token,
        address indexed to,
        uint amount
    );
    event SwapTokensForEthFailed(uint256 amount);
    event Reflected(address sender, uint256 amount);

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

    constructor(
        string memory name_,
        string memory symbol_,
        uint8 decimals_,
        uint256 totalSupply_,
        address router_,
        address treasuryAddress_,
        uint16 reflectionTax_,
        uint16 treasuryTax_,
        address feeReceiver
    ) payable {
        require(
            treasuryAddress_ != address(0x0),
            "treasury address cannot be zero"
        );

        require(decimals_ != 0, "decimals should not be zero");
        validateFees(reflectionTax_, treasuryTax_);

        _name = name_;
        _symbol = symbol_;
        _decimals = decimals_;

        tTotal = totalSupply_;
        rTotal = (MAX - (MAX % totalSupply_));

        rOwned[msg.sender] = rTotal;

        uniswapV2Router = IUniswapV2Router02(router_);

        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            getNativeCurrency()
        );

        treasuryAddress = payable(treasuryAddress_);

        reflectionTax = reflectionTax_;
        treasuryTax = treasuryTax_;

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[treasuryAddress_] = true;

        emit Transfer(address(0x0), msg.sender, totalSupply_);

        emit TokenCreated(owner(), address(this), "redis", VERSION);

        if (feeReceiver == address(0x0)) return;

        payable(feeReceiver).transfer(address(this).balance);
    }

    function getNativeCurrency() internal view returns (address) {
        if (block.chainid == 61) {
            //etc
            return uniswapV2Router.WETC();
        } else if (block.chainid == 128) {
            //heco chain
            return uniswapV2Router.WHT();
        } else if (block.chainid == 42262) {
            //oasis
            return uniswapV2Router.WROSE();
        } else if (block.chainid == 43114 || block.chainid == 43113) {
            //avalance
            return uniswapV2Router.WAVAX();
        } else {
            return uniswapV2Router.WETH();
        }
    }

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

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

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

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

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

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

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        uint256 senderAllowance = _allowances[sender][msg.sender];

        require(senderAllowance >= amount, "insufficient allowance");

        _approve(sender, msg.sender, senderAllowance - amount);

        _transfer(sender, recipient, amount);

        return true;
    }

    function tokenFromReflection(
        uint256 rAmount
    ) private view returns (uint256) {
        require(
            rAmount <= rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount / currentRate;
    }

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

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

        if (
            from != owner() &&
            to != owner() &&
            !inSwap &&
            from != uniswapV2Pair &&
            swapEnabled
        ) {
            uint256 contractTokenBalance = balanceOf(address(this));

            if (contractTokenBalance > 0)
                swapTokensForEth(contractTokenBalance);
        }

        _transferStandard(from, to, amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = getNativeCurrency();

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

        if (block.chainid == 61) {
            //etc
            try
                uniswapV2Router
                    .swapExactTokensForETCSupportingFeeOnTransferTokens(
                        tokenAmount,
                        0, // accept any amount of ETH
                        path,
                        treasuryAddress,
                        block.timestamp
                    )
            {} catch {
                emit SwapTokensForEthFailed(tokenAmount);
            }
        } else if (block.chainid == 42262) {
            //oasis
            try
                uniswapV2Router
                    .swapExactTokensForROSESupportingFeeOnTransferTokens(
                        tokenAmount,
                        0, // accept any amount of ETH
                        path,
                        treasuryAddress,
                        block.timestamp
                    )
            {} catch {
                emit SwapTokensForEthFailed(tokenAmount);
            }
        } else if (block.chainid == 43114 || block.chainid == 43113) {
            //avalance
            try
                uniswapV2Router
                    .swapExactTokensForAVAXSupportingFeeOnTransferTokens(
                        tokenAmount,
                        0, // accept any amount of ETH
                        path,
                        treasuryAddress,
                        block.timestamp
                    )
            {} catch {
                emit SwapTokensForEthFailed(tokenAmount);
            }
        } else {
            try
                uniswapV2Router
                    .swapExactTokensForETHSupportingFeeOnTransferTokens(
                        tokenAmount,
                        0, // accept any amount of ETH
                        path,
                        treasuryAddress,
                        block.timestamp
                    )
            {} catch {
                emit SwapTokensForEthFailed(tokenAmount);
            }
        }
    }

    function withdrawETH() external onlyOwner {
        treasuryAddress.transfer(address(this).balance);
    }

    function withdrawTokens(
        address token,
        address to,
        uint amount
    ) external onlyOwner {
        require(IERC20(token).transfer(to, amount), "transfer rejected");

        emit WithdrawedTokens(token, to, amount);
    }

    function setTreasuryAddress(address payable account) external onlyOwner {
        require(account != address(0x0), "treasury address cannot be zero");

        treasuryAddress = account;
        _isExcludedFromFee[account] = true;

        emit UpdatedTreasuryWallet(account);
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        bool takeFee = !_isExcludedFromFee[sender] &&
            !_isExcludedFromFee[recipient] &&
            (sender == uniswapV2Pair || recipient == uniswapV2Pair) &&
            !inSwap;

        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rReflection,
            uint256 rTreasury,
            uint256 tTransferAmount,
            uint256 tReflection,
            uint256 tTreasury
        ) = _getValues(takeFee, tAmount);

        rOwned[sender] = rOwned[sender] - rAmount;
        rOwned[recipient] = rOwned[recipient] + rTransferAmount;

        emit Transfer(sender, recipient, tTransferAmount);

        if (rTreasury > 0) {
            rOwned[address(this)] = rOwned[address(this)] + rTreasury;
            emit Transfer(sender, address(this), tTreasury);
        }

        if (rReflection > 0) {
            rTotal = rTotal - rReflection;
            emit Reflected(sender, tReflection);
        }
    }

    receive() external payable {}

    function _getValues(
        bool takeFees,
        uint256 tAmount
    )
        private
        view
        returns (uint256, uint256, uint256, uint256, uint256, uint256, uint256)
    {
        (
            uint256 tTransferAmount,
            uint256 tReflection,
            uint256 tTreasury
        ) = _getTValues(takeFees, tAmount);

        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rReflection,
            uint256 rTreasury
        ) = _getRValues(tAmount, tReflection, tTreasury);

        return (
            rAmount,
            rTransferAmount,
            rReflection,
            rTreasury,
            tTransferAmount,
            tReflection,
            tTreasury
        );
    }

    function _getTValues(
        bool takeFees,
        uint256 tAmount
    ) private view returns (uint256, uint256, uint256) {
        if (!takeFees) return (tAmount, 0, 0);

        uint256 tReflection = (tAmount * reflectionTax) / 100;
        uint256 tTreasury = (tAmount * treasuryTax) / 100;
        uint256 tTransferAmount = tAmount - tReflection - tTreasury;
        return (tTransferAmount, tReflection, tTreasury);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tReflection,
        uint256 tTreasury
    ) private view returns (uint256, uint256, uint256, uint256) {
        uint256 rate = _getRate();

        uint256 rAmount = tAmount * rate;
        uint256 rReflection = tReflection * rate;
        uint256 rTreasury = tTreasury * rate;
        uint256 rTransferAmount = rAmount - rReflection - rTreasury;

        return (rAmount, rTransferAmount, rReflection, rTreasury);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply / tSupply;
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = rTotal;
        uint256 tSupply = tTotal;
        if (rSupply < rTotal / tTotal) return (rTotal, tTotal);
        return (rSupply, tSupply);
    }

    function manualSwap() external onlyOwner {
        swapTokensForEth(balanceOf(address(this)));
    }

    function setFee(
        uint16 reflectionTax_,
        uint16 treasuryTax_
    ) public onlyOwner {
        validateFees(reflectionTax_, treasuryTax_);

        reflectionTax = reflectionTax_;
        treasuryTax = treasuryTax_;

        emit ChangedFees(reflectionTax_, treasuryTax_);
    }

    function validateFees(
        uint16 reflectionTax_,
        uint16 treasuryTax_
    ) internal pure {
        require(
            reflectionTax_ + treasuryTax_ <= 20,
            "Fees cannot be greater than 20%"
        );
    }

    function toggleSwap(bool enable) external onlyOwner {
        swapEnabled = enable;

        emit ChangedSwapEnable(enable);
    }

    function excludeMultipleAccountsFromFees(
        address[] calldata accounts,
        bool excluded
    ) external onlyOwner {
        for (uint256 i = 0; i < accounts.length; i++) {
            _isExcludedFromFee[accounts[i]] = excluded;
        }

        emit ExcludedAccountsFromFees(accounts, excluded);
    }

    function getExcludedFromFee(address account) external view returns (bool) {
        return _isExcludedFromFee[account];
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"},{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"address","name":"router_","type":"address"},{"internalType":"address","name":"treasuryAddress_","type":"address"},{"internalType":"uint16","name":"reflectionTax_","type":"uint16"},{"internalType":"uint16","name":"treasuryTax_","type":"uint16"},{"internalType":"address","name":"feeReceiver","type":"address"}],"stateMutability":"payable","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":"uint16","name":"reflectionTax","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"treasuryTax","type":"uint16"}],"name":"ChangedFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enable","type":"bool"}],"name":"ChangedSwapEnable","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"accounts","type":"address[]"},{"indexed":false,"internalType":"bool","name":"excluded","type":"bool"}],"name":"ExcludedAccountsFromFees","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":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Reflected","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"SwapTokensForEthFailed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"string","name":"tokenType","type":"string"},{"indexed":false,"internalType":"uint256","name":"version","type":"uint256"}],"name":"TokenCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"UpdatedTreasuryWallet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"WithdrawedTokens","type":"event"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reflectionTax","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"reflectionTax_","type":"uint16"},{"internalType":"uint16","name":"treasuryTax_","type":"uint16"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"account","type":"address"}],"name":"setTreasuryAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"enable","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"treasuryTax","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","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"},{"inputs":[],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60e060408190526009805461ffff60a01b1916600160a81b179055620029ca388190039081908339810160408190526200003991620007c0565b600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36001600160a01b038416620000d45760405162461bcd60e51b815260206004820152601f60248201527f747265617375727920616464726573732063616e6e6f74206265207a65726f0060448201526064015b60405180910390fd5b8660ff16600003620001295760405162461bcd60e51b815260206004820152601b60248201527f646563696d616c732073686f756c64206e6f74206265207a65726f00000000006044820152606401620000cb565b62000135838362000460565b6006620001438a826200093b565b5060076200015289826200093b565b5060ff871660a05260808690526200016d8660001962000a07565b6200017b9060001962000a40565b60048181553360009081526001602090815260409182902093909355600980546001600160a01b0319166001600160a01b038a16908117909155815163c45a015560e01b81529151909363c45a015593838101939192918290030181865afa158015620001ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000212919062000a5c565b6001600160a01b031663c9c65396306200022b620004c6565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000279573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029f919062000a5c565b6001600160a01b0390811660c052600880549186166001600160a01b03199092169190911790556005805461ffff848116620100000263ffffffff1990921690861617179055600160036000620002fe6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155908816835281832080549094161790925590513391907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9062000389908a815260200190565b60405180910390a330620003a56000546001600160a01b031690565b6001600160a01b03167f989c950f789dd53617d32eabbd91a779b5ac03cd8caeb147f73c8c11739d0fb16002604051620004019190604080825260059082015264726564697360d81b6060820152602081019190915260800190565b60405180910390a36001600160a01b0381161562000451576040516001600160a01b038216904780156108fc02916000818181858888f193505050501580156200044f573d6000803e3d6000fd5b505b50505050505050505062000aa6565b60146200046e828462000a81565b61ffff161115620004c25760405162461bcd60e51b815260206004820152601f60248201527f466565732063616e6e6f742062652067726561746572207468616e20323025006044820152606401620000cb565b5050565b600046603d036200055057600960009054906101000a90046001600160a01b03166001600160a01b031663977ebc0d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200054b919062000a5c565b905090565b46608003620005ad57600960009054906101000a90046001600160a01b03166001600160a01b0316635cb485926040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000525573d6000803e3d6000fd5b4661a516036200060b57600960009054906101000a90046001600160a01b03166001600160a01b03166331b2cc456040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000525573d6000803e3d6000fd5b4661a86a14806200061d57504661a869145b156200067757600960009054906101000a90046001600160a01b03166001600160a01b03166373b295c26040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000525573d6000803e3d6000fd5b600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000525573d6000803e3d6000fd5b634e487b7160e01b600052604160045260246000fd5b600082601f830112620006f357600080fd5b81516001600160401b0380821115620007105762000710620006cb565b604051601f8301601f19908116603f011681019082821181831017156200073b576200073b620006cb565b816040528381526020925086838588010111156200075857600080fd5b600091505b838210156200077c57858201830151818301840152908201906200075d565b600093810190920192909252949350505050565b80516001600160a01b0381168114620007a857600080fd5b919050565b805161ffff81168114620007a857600080fd5b60008060008060008060008060006101208a8c031215620007e057600080fd5b89516001600160401b0380821115620007f857600080fd5b620008068d838e01620006e1565b9a5060208c01519150808211156200081d57600080fd5b506200082c8c828d01620006e1565b98505060408a015160ff811681146200084457600080fd5b60608b015190975095506200085c60808b0162000790565b94506200086c60a08b0162000790565b93506200087c60c08b01620007ad565b92506200088c60e08b01620007ad565b91506200089d6101008b0162000790565b90509295985092959850929598565b600181811c90821680620008c157607f821691505b602082108103620008e257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200093657600081815260208120601f850160051c81016020861015620009115750805b601f850160051c820191505b8181101562000932578281556001016200091d565b5050505b505050565b81516001600160401b03811115620009575762000957620006cb565b6200096f81620009688454620008ac565b84620008e8565b602080601f831160018114620009a757600084156200098e5750858301515b600019600386901b1c1916600185901b17855562000932565b600085815260208120601f198616915b82811015620009d857888601518255948401946001909101908401620009b7565b5085821015620009f75787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008262000a2557634e487b7160e01b600052601260045260246000fd5b500690565b634e487b7160e01b600052601160045260246000fd5b8181038181111562000a565762000a5662000a2a565b92915050565b60006020828403121562000a6f57600080fd5b62000a7a8262000790565b9392505050565b61ffff81811683821601908082111562000a9f5762000a9f62000a2a565b5092915050565b60805160a05160c051611ed162000af96000396000818161031a01528181610fc00152818161140f015261144a015260006102b001526000818161024e015281816118de01526119160152611ed16000f3fe6080604052600436106101a05760003560e01c806370a08231116100ec578063c5f956af1161008a578063e086e5ec11610064578063e086e5ec1461053b578063ecfeb5ba14610550578063f2fde38b14610571578063ffa1ad741461059157600080fd5b8063c5f956af1461049c578063d731df40146104bc578063dd62ed3e146104f557600080fd5b806395d89b41116100c657806395d89b411461042757806399b64de11461043c578063a9059cbb1461045c578063c492f0461461047c57600080fd5b806370a08231146103d4578063715018a6146103f45780638da5cb5b1461040957600080fd5b80633ae2f354116101595780635e35359e116101335780635e35359e146103535780636605bfda146103735780636d8aa8f8146103935780636ddd1713146103b357600080fd5b80633ae2f354146102da57806349bd5a5e1461030857806351bc3c851461033c57600080fd5b806306fdde03146101ac578063095ea7b3146101d75780631694505e1461020757806318160ddd1461023f57806323b872dd1461027c578063313ce5671461029c57600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101c16105a6565b6040516101ce9190611a37565b60405180910390f35b3480156101e357600080fd5b506101f76101f2366004611a9a565b610638565b60405190151581526020016101ce565b34801561021357600080fd5b50600954610227906001600160a01b031681565b6040516001600160a01b0390911681526020016101ce565b34801561024b57600080fd5b507f00000000000000000000000000000000000000000000000000000000000000005b6040519081526020016101ce565b34801561028857600080fd5b506101f7610297366004611ac6565b61064f565b3480156102a857600080fd5b5060405160ff7f00000000000000000000000000000000000000000000000000000000000000001681526020016101ce565b3480156102e657600080fd5b506005546102f59061ffff1681565b60405161ffff90911681526020016101ce565b34801561031457600080fd5b506102277f000000000000000000000000000000000000000000000000000000000000000081565b34801561034857600080fd5b506103516106eb565b005b34801561035f57600080fd5b5061035161036e366004611ac6565b610728565b34801561037f57600080fd5b5061035161038e366004611b07565b610857565b34801561039f57600080fd5b506103516103ae366004611b32565b610937565b3480156103bf57600080fd5b506009546101f790600160a81b900460ff1681565b3480156103e057600080fd5b5061026e6103ef366004611b07565b6109b9565b34801561040057600080fd5b506103516109db565b34801561041557600080fd5b506000546001600160a01b0316610227565b34801561043357600080fd5b506101c1610a4f565b34801561044857600080fd5b50610351610457366004611b66565b610a5e565b34801561046857600080fd5b506101f7610477366004611a9a565b610af3565b34801561048857600080fd5b50610351610497366004611b99565b610b00565b3480156104a857600080fd5b50600854610227906001600160a01b031681565b3480156104c857600080fd5b506101f76104d7366004611b07565b6001600160a01b031660009081526003602052604090205460ff1690565b34801561050157600080fd5b5061026e610510366004611c1f565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561054757600080fd5b50610351610bdc565b34801561055c57600080fd5b506005546102f59062010000900461ffff1681565b34801561057d57600080fd5b5061035161058c366004611b07565b610c42565b34801561059d57600080fd5b5061026e600281565b6060600680546105b590611c58565b80601f01602080910402602001604051908101604052809291908181526020018280546105e190611c58565b801561062e5780601f106106035761010080835404028352916020019161062e565b820191906000526020600020905b81548152906001019060200180831161061157829003601f168201915b5050505050905090565b6000610645338484610d31565b5060015b92915050565b6001600160a01b0383166000908152600260209081526040808320338452909152812054828110156106c15760405162461bcd60e51b8152602060048201526016602482015275696e73756666696369656e7420616c6c6f77616e636560501b60448201526064015b60405180910390fd5b6106d585336106d08685611ca8565b610d31565b6106e0858585610e4d565b506001949350505050565b6000546001600160a01b031633146107155760405162461bcd60e51b81526004016106b890611cbb565b610726610721306109b9565b61103d565b565b6000546001600160a01b031633146107525760405162461bcd60e51b81526004016106b890611cbb565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190611cf2565b6108055760405162461bcd60e51b81526020600482015260116024820152701d1c985b9cd9995c881c995a9958dd1959607a1b60448201526064016106b8565b816001600160a01b0316836001600160a01b03167f010075e23dbdfd6a698d93677cbca9495cc8cff68ec1243c6c563ace274559248360405161084a91815260200190565b60405180910390a3505050565b6000546001600160a01b031633146108815760405162461bcd60e51b81526004016106b890611cbb565b6001600160a01b0381166108d75760405162461bcd60e51b815260206004820152601f60248201527f747265617375727920616464726573732063616e6e6f74206265207a65726f0060448201526064016106b8565b600880546001600160a01b0319166001600160a01b038316908117909155600081815260036020526040808220805460ff19166001179055517f62c65ec1bb8c7d4b3758b4959a649569528cdd5ac7f4f73191f024e4988b10bc9190a250565b6000546001600160a01b031633146109615760405162461bcd60e51b81526004016106b890611cbb565b60098054821515600160a81b0260ff60a81b199091161790556040517fdd526d21b1c83827f93284dd17704000fc8ff904235f50397126ca4e611163eb906109ae90831515815260200190565b60405180910390a150565b6001600160a01b038116600090815260016020526040812054610649906112de565b6000546001600160a01b03163314610a055760405162461bcd60e51b81526004016106b890611cbb565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600780546105b590611c58565b6000546001600160a01b03163314610a885760405162461bcd60e51b81526004016106b890611cbb565b610a928282611362565b6005805461ffff84811663ffffffff19909216821762010000918516918202179092556040805191825260208201929092527f595beaf21d0d68a0474e20af31976a36304242d92b8531ea0229d3985e77a8d7910160405180910390a15050565b6000610645338484610e4d565b6000546001600160a01b03163314610b2a5760405162461bcd60e51b81526004016106b890611cbb565b60005b82811015610b9b578160036000868685818110610b4c57610b4c611d0f565b9050602002016020810190610b619190611b07565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610b9381611d25565b915050610b2d565b507f3b93f82cf4c14d64595ea961646f6c00fae67484acc1b7d2285aefcbb3ebe41a838383604051610bcf93929190611d3e565b60405180910390a1505050565b6000546001600160a01b03163314610c065760405162461bcd60e51b81526004016106b890611cbb565b6008546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610c3f573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610c6c5760405162461bcd60e51b81526004016106b890611cbb565b6001600160a01b038116610cd65760405162461bcd60e51b815260206004820152602b60248201527f63616c6c207468652072656e6f756e63654f776e65727368697020666f72207a60448201526a65726f206164647265737360a81b60648201526084016106b8565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610d935760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106b8565b6001600160a01b038216610df45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106b8565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910161084a565b6001600160a01b038316610eb15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106b8565b6001600160a01b038216610f135760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106b8565b60008111610f755760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106b8565b6000546001600160a01b03848116911614801590610fa157506000546001600160a01b03838116911614155b8015610fb75750600954600160a01b900460ff16155b8015610ff557507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b801561100a5750600954600160a81b900460ff165b1561102d57600061101a306109b9565b9050801561102b5761102b8161103d565b505b6110388383836113c4565b505050565b6009805460ff60a01b1916600160a01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061108557611085611d0f565b60200260200101906001600160a01b031690816001600160a01b0316815250506110ad611658565b816001815181106110c0576110c0611d0f565b6001600160a01b0392831660209182029290920101526009546110e69130911684610d31565b46603d0361119857600954600854604051634d1bf6a960e01b81526001600160a01b0392831692634d1bf6a99261112b92879260009288929116904290600401611d97565b600060405180830381600087803b15801561114557600080fd5b505af1925050508015611156575060015b611193576040518281527ff312a8cf41139222bcba78888c1a115141181d71dc3cab51c2cd2e19acb05fcf906020015b60405180910390a16112cd565b6112cd565b4661a516036111de5760095460085460405163104d379560e11b81526001600160a01b039283169263209a6f2a9261112b92879260009288929116904290600401611d97565b4661a86a14806111ef57504661a869145b1561123157600954600854604051633b158ab160e11b81526001600160a01b039283169263762b15629261112b92879260009288929116904290600401611d97565b60095460085460405163791ac94760e01b81526001600160a01b039283169263791ac9479261126e92879260009288929116904290600401611d97565b600060405180830381600087803b15801561128857600080fd5b505af1925050508015611299575060015b6112cd576040518281527ff312a8cf41139222bcba78888c1a115141181d71dc3cab51c2cd2e19acb05fcf90602001611186565b50506009805460ff60a01b19169055565b60006004548211156113455760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016106b8565b600061134f611851565b905061135b8184611e08565b9392505050565b601461136e8284611e2a565b61ffff1611156113c05760405162461bcd60e51b815260206004820152601f60248201527f466565732063616e6e6f742062652067726561746572207468616e203230250060448201526064016106b8565b5050565b6001600160a01b03831660009081526003602052604081205460ff1615801561140657506001600160a01b03831660009081526003602052604090205460ff16155b801561147e57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316148061147e57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b0316145b80156114945750600954600160a01b900460ff16155b905060008060008060008060006114ab888a611874565b965096509650965096509650965086600160008d6001600160a01b03166001600160a01b03168152602001908152602001600020546114ea9190611ca8565b6001600160a01b03808d1660009081526001602052604080822093909355908c168152205461151a908790611e4c565b6001600160a01b03808c1660008181526001602052604090819020939093559151908d16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061156e9087815260200190565b60405180910390a383156115f15730600090815260016020526040902054611597908590611e4c565b30600081815260016020526040908190209290925590516001600160a01b038d16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115e89085815260200190565b60405180910390a35b841561164b57846004546116059190611ca8565b600455604080516001600160a01b038d168152602081018490527fc61be35e4ab75c2faea538c5ca06e3667b87df8657cdfb88d0f365df8115e81f910160405180910390a15b5050505050505050505050565b600046603d036116de57600960009054906101000a90046001600160a01b03166001600160a01b031663977ebc0d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d99190611e5f565b905090565b4660800361173957600960009054906101000a90046001600160a01b03166001600160a01b0316635cb485926040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b4661a5160361179557600960009054906101000a90046001600160a01b03166001600160a01b03166331b2cc456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b4661a86a14806117a657504661a869145b156117fe57600960009054906101000a90046001600160a01b03166001600160a01b03166373b295c26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b600080600061185e6118d4565b909250905061186d8183611e08565b9250505090565b60008060008060008060008060008061188d8c8c611944565b9250925092506000806000806118a48f87876119d0565b9350935093509350838383838a8a8a9d509d509d509d509d509d509d505050505050505092959891949750929550565b60045460009081907f00000000000000000000000000000000000000000000000000000000000000006119078183611e08565b82101561193b575050600454927f000000000000000000000000000000000000000000000000000000000000000092509050565b90939092509050565b60008060008461195c575082915060009050806119c9565b6005546000906064906119739061ffff1687611e7c565b61197d9190611e08565b60055490915060009060649061199d9062010000900461ffff1688611e7c565b6119a79190611e08565b90506000816119b68489611ca8565b6119c09190611ca8565b95509193509150505b9250925092565b60008060008060006119e0611851565b905060006119ee828a611e7c565b905060006119fc838a611e7c565b90506000611a0a848a611e7c565b9050600081611a198486611ca8565b611a239190611ca8565b939c939b5091995097509095505050505050565b600060208083528351808285015260005b81811015611a6457858101830151858201604001528201611a48565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610c3f57600080fd5b60008060408385031215611aad57600080fd5b8235611ab881611a85565b946020939093013593505050565b600080600060608486031215611adb57600080fd5b8335611ae681611a85565b92506020840135611af681611a85565b929592945050506040919091013590565b600060208284031215611b1957600080fd5b813561135b81611a85565b8015158114610c3f57600080fd5b600060208284031215611b4457600080fd5b813561135b81611b24565b803561ffff81168114611b6157600080fd5b919050565b60008060408385031215611b7957600080fd5b611b8283611b4f565b9150611b9060208401611b4f565b90509250929050565b600080600060408486031215611bae57600080fd5b833567ffffffffffffffff80821115611bc657600080fd5b818601915086601f830112611bda57600080fd5b813581811115611be957600080fd5b8760208260051b8501011115611bfe57600080fd5b60209283019550935050840135611c1481611b24565b809150509250925092565b60008060408385031215611c3257600080fd5b8235611c3d81611a85565b91506020830135611c4d81611a85565b809150509250929050565b600181811c90821680611c6c57607f821691505b602082108103611c8c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561064957610649611c92565b60208082526017908201527f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b600060208284031215611d0457600080fd5b815161135b81611b24565b634e487b7160e01b600052603260045260246000fd5b600060018201611d3757611d37611c92565b5060010190565b6040808252810183905260008460608301825b86811015611d81578235611d6481611a85565b6001600160a01b0316825260209283019290910190600101611d51565b5080925050508215156020830152949350505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611de75784516001600160a01b031683529383019391830191600101611dc2565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611e2557634e487b7160e01b600052601260045260246000fd5b500490565b61ffff818116838216019080821115611e4557611e45611c92565b5092915050565b8082018082111561064957610649611c92565b600060208284031215611e7157600080fd5b815161135b81611a85565b6000816000190483118215151615611e9657611e96611c92565b50029056fea2646970667358221220a89498e16cbec90d1ac26fe47f754e5f2ab9f9001821388093fd9fa74ed590da64736f6c6343000810003300000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000014bddab3e51a57cff87a500000000000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000003bf0da6aa7114cd99781fa292583bc552b8b22e8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000001717afbe81bb09cbd283f18474349efe2c27dced000000000000000000000000000000000000000000000000000000000000000e5045504520414c4c20535441525300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055354415253000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101a05760003560e01c806370a08231116100ec578063c5f956af1161008a578063e086e5ec11610064578063e086e5ec1461053b578063ecfeb5ba14610550578063f2fde38b14610571578063ffa1ad741461059157600080fd5b8063c5f956af1461049c578063d731df40146104bc578063dd62ed3e146104f557600080fd5b806395d89b41116100c657806395d89b411461042757806399b64de11461043c578063a9059cbb1461045c578063c492f0461461047c57600080fd5b806370a08231146103d4578063715018a6146103f45780638da5cb5b1461040957600080fd5b80633ae2f354116101595780635e35359e116101335780635e35359e146103535780636605bfda146103735780636d8aa8f8146103935780636ddd1713146103b357600080fd5b80633ae2f354146102da57806349bd5a5e1461030857806351bc3c851461033c57600080fd5b806306fdde03146101ac578063095ea7b3146101d75780631694505e1461020757806318160ddd1461023f57806323b872dd1461027c578063313ce5671461029c57600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101c16105a6565b6040516101ce9190611a37565b60405180910390f35b3480156101e357600080fd5b506101f76101f2366004611a9a565b610638565b60405190151581526020016101ce565b34801561021357600080fd5b50600954610227906001600160a01b031681565b6040516001600160a01b0390911681526020016101ce565b34801561024b57600080fd5b507f00000000000000000000000000000000000014bddab3e51a57cff87a500000005b6040519081526020016101ce565b34801561028857600080fd5b506101f7610297366004611ac6565b61064f565b3480156102a857600080fd5b5060405160ff7f00000000000000000000000000000000000000000000000000000000000000121681526020016101ce565b3480156102e657600080fd5b506005546102f59061ffff1681565b60405161ffff90911681526020016101ce565b34801561031457600080fd5b506102277f000000000000000000000000f256a4a0031970fd2e65fea80482bd61a0ca619781565b34801561034857600080fd5b506103516106eb565b005b34801561035f57600080fd5b5061035161036e366004611ac6565b610728565b34801561037f57600080fd5b5061035161038e366004611b07565b610857565b34801561039f57600080fd5b506103516103ae366004611b32565b610937565b3480156103bf57600080fd5b506009546101f790600160a81b900460ff1681565b3480156103e057600080fd5b5061026e6103ef366004611b07565b6109b9565b34801561040057600080fd5b506103516109db565b34801561041557600080fd5b506000546001600160a01b0316610227565b34801561043357600080fd5b506101c1610a4f565b34801561044857600080fd5b50610351610457366004611b66565b610a5e565b34801561046857600080fd5b506101f7610477366004611a9a565b610af3565b34801561048857600080fd5b50610351610497366004611b99565b610b00565b3480156104a857600080fd5b50600854610227906001600160a01b031681565b3480156104c857600080fd5b506101f76104d7366004611b07565b6001600160a01b031660009081526003602052604090205460ff1690565b34801561050157600080fd5b5061026e610510366004611c1f565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561054757600080fd5b50610351610bdc565b34801561055c57600080fd5b506005546102f59062010000900461ffff1681565b34801561057d57600080fd5b5061035161058c366004611b07565b610c42565b34801561059d57600080fd5b5061026e600281565b6060600680546105b590611c58565b80601f01602080910402602001604051908101604052809291908181526020018280546105e190611c58565b801561062e5780601f106106035761010080835404028352916020019161062e565b820191906000526020600020905b81548152906001019060200180831161061157829003601f168201915b5050505050905090565b6000610645338484610d31565b5060015b92915050565b6001600160a01b0383166000908152600260209081526040808320338452909152812054828110156106c15760405162461bcd60e51b8152602060048201526016602482015275696e73756666696369656e7420616c6c6f77616e636560501b60448201526064015b60405180910390fd5b6106d585336106d08685611ca8565b610d31565b6106e0858585610e4d565b506001949350505050565b6000546001600160a01b031633146107155760405162461bcd60e51b81526004016106b890611cbb565b610726610721306109b9565b61103d565b565b6000546001600160a01b031633146107525760405162461bcd60e51b81526004016106b890611cbb565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af11580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190611cf2565b6108055760405162461bcd60e51b81526020600482015260116024820152701d1c985b9cd9995c881c995a9958dd1959607a1b60448201526064016106b8565b816001600160a01b0316836001600160a01b03167f010075e23dbdfd6a698d93677cbca9495cc8cff68ec1243c6c563ace274559248360405161084a91815260200190565b60405180910390a3505050565b6000546001600160a01b031633146108815760405162461bcd60e51b81526004016106b890611cbb565b6001600160a01b0381166108d75760405162461bcd60e51b815260206004820152601f60248201527f747265617375727920616464726573732063616e6e6f74206265207a65726f0060448201526064016106b8565b600880546001600160a01b0319166001600160a01b038316908117909155600081815260036020526040808220805460ff19166001179055517f62c65ec1bb8c7d4b3758b4959a649569528cdd5ac7f4f73191f024e4988b10bc9190a250565b6000546001600160a01b031633146109615760405162461bcd60e51b81526004016106b890611cbb565b60098054821515600160a81b0260ff60a81b199091161790556040517fdd526d21b1c83827f93284dd17704000fc8ff904235f50397126ca4e611163eb906109ae90831515815260200190565b60405180910390a150565b6001600160a01b038116600090815260016020526040812054610649906112de565b6000546001600160a01b03163314610a055760405162461bcd60e51b81526004016106b890611cbb565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600780546105b590611c58565b6000546001600160a01b03163314610a885760405162461bcd60e51b81526004016106b890611cbb565b610a928282611362565b6005805461ffff84811663ffffffff19909216821762010000918516918202179092556040805191825260208201929092527f595beaf21d0d68a0474e20af31976a36304242d92b8531ea0229d3985e77a8d7910160405180910390a15050565b6000610645338484610e4d565b6000546001600160a01b03163314610b2a5760405162461bcd60e51b81526004016106b890611cbb565b60005b82811015610b9b578160036000868685818110610b4c57610b4c611d0f565b9050602002016020810190610b619190611b07565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610b9381611d25565b915050610b2d565b507f3b93f82cf4c14d64595ea961646f6c00fae67484acc1b7d2285aefcbb3ebe41a838383604051610bcf93929190611d3e565b60405180910390a1505050565b6000546001600160a01b03163314610c065760405162461bcd60e51b81526004016106b890611cbb565b6008546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610c3f573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610c6c5760405162461bcd60e51b81526004016106b890611cbb565b6001600160a01b038116610cd65760405162461bcd60e51b815260206004820152602b60248201527f63616c6c207468652072656e6f756e63654f776e65727368697020666f72207a60448201526a65726f206164647265737360a81b60648201526084016106b8565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610d935760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106b8565b6001600160a01b038216610df45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106b8565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910161084a565b6001600160a01b038316610eb15760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106b8565b6001600160a01b038216610f135760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106b8565b60008111610f755760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016106b8565b6000546001600160a01b03848116911614801590610fa157506000546001600160a01b03838116911614155b8015610fb75750600954600160a01b900460ff16155b8015610ff557507f000000000000000000000000f256a4a0031970fd2e65fea80482bd61a0ca61976001600160a01b0316836001600160a01b031614155b801561100a5750600954600160a81b900460ff165b1561102d57600061101a306109b9565b9050801561102b5761102b8161103d565b505b6110388383836113c4565b505050565b6009805460ff60a01b1916600160a01b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061108557611085611d0f565b60200260200101906001600160a01b031690816001600160a01b0316815250506110ad611658565b816001815181106110c0576110c0611d0f565b6001600160a01b0392831660209182029290920101526009546110e69130911684610d31565b46603d0361119857600954600854604051634d1bf6a960e01b81526001600160a01b0392831692634d1bf6a99261112b92879260009288929116904290600401611d97565b600060405180830381600087803b15801561114557600080fd5b505af1925050508015611156575060015b611193576040518281527ff312a8cf41139222bcba78888c1a115141181d71dc3cab51c2cd2e19acb05fcf906020015b60405180910390a16112cd565b6112cd565b4661a516036111de5760095460085460405163104d379560e11b81526001600160a01b039283169263209a6f2a9261112b92879260009288929116904290600401611d97565b4661a86a14806111ef57504661a869145b1561123157600954600854604051633b158ab160e11b81526001600160a01b039283169263762b15629261112b92879260009288929116904290600401611d97565b60095460085460405163791ac94760e01b81526001600160a01b039283169263791ac9479261126e92879260009288929116904290600401611d97565b600060405180830381600087803b15801561128857600080fd5b505af1925050508015611299575060015b6112cd576040518281527ff312a8cf41139222bcba78888c1a115141181d71dc3cab51c2cd2e19acb05fcf90602001611186565b50506009805460ff60a01b19169055565b60006004548211156113455760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016106b8565b600061134f611851565b905061135b8184611e08565b9392505050565b601461136e8284611e2a565b61ffff1611156113c05760405162461bcd60e51b815260206004820152601f60248201527f466565732063616e6e6f742062652067726561746572207468616e203230250060448201526064016106b8565b5050565b6001600160a01b03831660009081526003602052604081205460ff1615801561140657506001600160a01b03831660009081526003602052604090205460ff16155b801561147e57507f000000000000000000000000f256a4a0031970fd2e65fea80482bd61a0ca61976001600160a01b0316846001600160a01b0316148061147e57507f000000000000000000000000f256a4a0031970fd2e65fea80482bd61a0ca61976001600160a01b0316836001600160a01b0316145b80156114945750600954600160a01b900460ff16155b905060008060008060008060006114ab888a611874565b965096509650965096509650965086600160008d6001600160a01b03166001600160a01b03168152602001908152602001600020546114ea9190611ca8565b6001600160a01b03808d1660009081526001602052604080822093909355908c168152205461151a908790611e4c565b6001600160a01b03808c1660008181526001602052604090819020939093559151908d16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061156e9087815260200190565b60405180910390a383156115f15730600090815260016020526040902054611597908590611e4c565b30600081815260016020526040908190209290925590516001600160a01b038d16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115e89085815260200190565b60405180910390a35b841561164b57846004546116059190611ca8565b600455604080516001600160a01b038d168152602081018490527fc61be35e4ab75c2faea538c5ca06e3667b87df8657cdfb88d0f365df8115e81f910160405180910390a15b5050505050505050505050565b600046603d036116de57600960009054906101000a90046001600160a01b03166001600160a01b031663977ebc0d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d99190611e5f565b905090565b4660800361173957600960009054906101000a90046001600160a01b03166001600160a01b0316635cb485926040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b4661a5160361179557600960009054906101000a90046001600160a01b03166001600160a01b03166331b2cc456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b4661a86a14806117a657504661a869145b156117fe57600960009054906101000a90046001600160a01b03166001600160a01b03166373b295c26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b5573d6000803e3d6000fd5b600080600061185e6118d4565b909250905061186d8183611e08565b9250505090565b60008060008060008060008060008061188d8c8c611944565b9250925092506000806000806118a48f87876119d0565b9350935093509350838383838a8a8a9d509d509d509d509d509d509d505050505050505092959891949750929550565b60045460009081907f00000000000000000000000000000000000014bddab3e51a57cff87a500000006119078183611e08565b82101561193b575050600454927f00000000000000000000000000000000000014bddab3e51a57cff87a5000000092509050565b90939092509050565b60008060008461195c575082915060009050806119c9565b6005546000906064906119739061ffff1687611e7c565b61197d9190611e08565b60055490915060009060649061199d9062010000900461ffff1688611e7c565b6119a79190611e08565b90506000816119b68489611ca8565b6119c09190611ca8565b95509193509150505b9250925092565b60008060008060006119e0611851565b905060006119ee828a611e7c565b905060006119fc838a611e7c565b90506000611a0a848a611e7c565b9050600081611a198486611ca8565b611a239190611ca8565b939c939b5091995097509095505050505050565b600060208083528351808285015260005b81811015611a6457858101830151858201604001528201611a48565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610c3f57600080fd5b60008060408385031215611aad57600080fd5b8235611ab881611a85565b946020939093013593505050565b600080600060608486031215611adb57600080fd5b8335611ae681611a85565b92506020840135611af681611a85565b929592945050506040919091013590565b600060208284031215611b1957600080fd5b813561135b81611a85565b8015158114610c3f57600080fd5b600060208284031215611b4457600080fd5b813561135b81611b24565b803561ffff81168114611b6157600080fd5b919050565b60008060408385031215611b7957600080fd5b611b8283611b4f565b9150611b9060208401611b4f565b90509250929050565b600080600060408486031215611bae57600080fd5b833567ffffffffffffffff80821115611bc657600080fd5b818601915086601f830112611bda57600080fd5b813581811115611be957600080fd5b8760208260051b8501011115611bfe57600080fd5b60209283019550935050840135611c1481611b24565b809150509250925092565b60008060408385031215611c3257600080fd5b8235611c3d81611a85565b91506020830135611c4d81611a85565b809150509250929050565b600181811c90821680611c6c57607f821691505b602082108103611c8c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561064957610649611c92565b60208082526017908201527f43616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b600060208284031215611d0457600080fd5b815161135b81611b24565b634e487b7160e01b600052603260045260246000fd5b600060018201611d3757611d37611c92565b5060010190565b6040808252810183905260008460608301825b86811015611d81578235611d6481611a85565b6001600160a01b0316825260209283019290910190600101611d51565b5080925050508215156020830152949350505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611de75784516001600160a01b031683529383019391830191600101611dc2565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611e2557634e487b7160e01b600052601260045260246000fd5b500490565b61ffff818116838216019080821115611e4557611e45611c92565b5092915050565b8082018082111561064957610649611c92565b600060208284031215611e7157600080fd5b815161135b81611a85565b6000816000190483118215151615611e9657611e96611c92565b50029056fea2646970667358221220a89498e16cbec90d1ac26fe47f754e5f2ab9f9001821388093fd9fa74ed590da64736f6c63430008100033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000014bddab3e51a57cff87a500000000000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000003bf0da6aa7114cd99781fa292583bc552b8b22e8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000140000000000000000000000001717afbe81bb09cbd283f18474349efe2c27dced000000000000000000000000000000000000000000000000000000000000000e5045504520414c4c20535441525300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055354415253000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): PEPE ALL STARS
Arg [1] : symbol_ (string): STARS
Arg [2] : decimals_ (uint8): 18
Arg [3] : totalSupply_ (uint256): 420690000000000000000000000000000
Arg [4] : router_ (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [5] : treasuryAddress_ (address): 0x3Bf0Da6aA7114CD99781fa292583BC552B8b22E8
Arg [6] : reflectionTax_ (uint16): 0
Arg [7] : treasuryTax_ (uint16): 20
Arg [8] : feeReceiver (address): 0x1717AFBE81bb09cbd283f18474349efE2c27DceD

-----Encoded View---------------
13 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000160
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000014bddab3e51a57cff87a50000000
Arg [4] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [5] : 0000000000000000000000003bf0da6aa7114cd99781fa292583bc552b8b22e8
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000014
Arg [8] : 0000000000000000000000001717afbe81bb09cbd283f18474349efe2c27dced
Arg [9] : 000000000000000000000000000000000000000000000000000000000000000e
Arg [10] : 5045504520414c4c205354415253000000000000000000000000000000000000
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [12] : 5354415253000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

3615:14049:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7100:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8002:184;;;;;;;;;;-1:-1:-1;8002:184:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;8002:184:0;1023:187:1;4226:41:0;;;;;;;;;;-1:-1:-1;4226:41:0;;;;-1:-1:-1;;;;;4226:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;4226:41:0;1215:229:1;7377:94:0;;;;;;;;;;-1:-1:-1;7457:6:0;7377:94;;;1595:25:1;;;1583:2;1568:18;7377:94:0;1449:177:1;8194:427:0;;;;;;;;;;-1:-1:-1;8194:427:0;;;;;:::i;:::-;;:::i;7286:83::-;;;;;;;;;;-1:-1:-1;7286:83:0;;2264:4:1;7352:9:0;2252:17:1;2234:36;;2222:2;2207:18;7286:83:0;2092:184:1;4013:27:0;;;;;;;;;;-1:-1:-1;4013:27:0;;;;;;;;;;;2455:6:1;2443:19;;;2425:38;;2413:2;2398:18;4013:27:0;2281:188:1;4274:38:0;;;;;;;;;;;;;;;16392:102;;;;;;;;;;;;;:::i;:::-;;12510:253;;;;;;;;;;-1:-1:-1;12510:253:0;;;;;:::i;:::-;;:::i;12771:289::-;;;;;;;;;;-1:-1:-1;12771:289:0;;;;;:::i;:::-;;:::i;17060:134::-;;;;;;;;;;-1:-1:-1;17060:134:0;;;;;:::i;:::-;;:::i;4355:30::-;;;;;;;;;;-1:-1:-1;4355:30:0;;;;-1:-1:-1;;;4355:30:0;;;;;;7479:137;;;;;;;;;;-1:-1:-1;7479:137:0;;;;;:::i;:::-;;:::i;2860:148::-;;;;;;;;;;;;;:::i;2657:79::-;;;;;;;;;;-1:-1:-1;2695:7:0;2722:6;-1:-1:-1;;;;;2722:6:0;2657:79;;7191:87;;;;;;;;;;;;;:::i;16502:302::-;;;;;;;;;;-1:-1:-1;16502:302:0;;;;;:::i;:::-;;:::i;7624:190::-;;;;;;;;;;-1:-1:-1;7624:190:0;;;;;:::i;:::-;;:::i;17202:324::-;;;;;;;;;;-1:-1:-1;17202:324:0;;;;;:::i;:::-;;:::i;4179:38::-;;;;;;;;;;-1:-1:-1;4179:38:0;;;;-1:-1:-1;;;;;4179:38:0;;;17534:127;;;;;;;;;;-1:-1:-1;17534:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;17626:27:0;17602:4;17626:27;;;:18;:27;;;;;;;;;17534:127;7822:172;;;;;;;;;;-1:-1:-1;7822:172:0;;;;;:::i;:::-;-1:-1:-1;;;;;7957:20:0;;;7930:7;7957:20;;;:11;:20;;;;;;;;:29;;;;;;;;;;;;;7822:172;12394:108;;;;;;;;;;;;;:::i;4047:25::-;;;;;;;;;;-1:-1:-1;4047:25:0;;;;;;;;;;;3133:290;;;;;;;;;;-1:-1:-1;3133:290:0;;;;;:::i;:::-;;:::i;3667:35::-;;;;;;;;;;;;3701:1;3667:35;;7100:83;7137:13;7170:5;7163:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7100:83;:::o;8002:184::-;8102:4;8119:37;8128:10;8140:7;8149:6;8119:8;:37::i;:::-;-1:-1:-1;8174:4:0;8002:184;;;;;:::o;8194:427::-;-1:-1:-1;;;;;8369:19:0;;8326:4;8369:19;;;:11;:19;;;;;;;;8389:10;8369:31;;;;;;;;8421:25;;;;8413:60;;;;-1:-1:-1;;;8413:60:0;;5947:2:1;8413:60:0;;;5929:21:1;5986:2;5966:18;;;5959:30;-1:-1:-1;;;6005:18:1;;;5998:52;6067:18;;8413:60:0;;;;;;;;;8486:54;8495:6;8503:10;8515:24;8533:6;8515:15;:24;:::i;:::-;8486:8;:54::i;:::-;8553:36;8563:6;8571:9;8582:6;8553:9;:36::i;:::-;-1:-1:-1;8609:4:0;;8194:427;-1:-1:-1;;;;8194:427:0:o;16392:102::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;16444:42:::1;16461:24;16479:4;16461:9;:24::i;:::-;16444:16;:42::i;:::-;16392:102::o:0;12510:253::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;12646:34:::1;::::0;-1:-1:-1;;;12646:34:0;;-1:-1:-1;;;;;6905:32:1;;;12646:34:0::1;::::0;::::1;6887:51:1::0;6954:18;;;6947:34;;;12646:22:0;::::1;::::0;::::1;::::0;6860:18:1;;12646:34:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12638:64;;;::::0;-1:-1:-1;;;12638:64:0;;7444:2:1;12638:64:0::1;::::0;::::1;7426:21:1::0;7483:2;7463:18;;;7456:30;-1:-1:-1;;;7502:18:1;;;7495:47;7559:18;;12638:64:0::1;7242:341:1::0;12638:64:0::1;12744:2;-1:-1:-1::0;;;;;12720:35:0::1;12737:5;-1:-1:-1::0;;;;;12720:35:0::1;;12748:6;12720:35;;;;1595:25:1::0;;1583:2;1568:18;;1449:177;12720:35:0::1;;;;;;;;12510:253:::0;;;:::o;12771:289::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12862:23:0;::::1;12854:67;;;::::0;-1:-1:-1;;;12854:67:0;;7790:2:1;12854:67:0::1;::::0;::::1;7772:21:1::0;7829:2;7809:18;;;7802:30;7868:33;7848:18;;;7841:61;7919:18;;12854:67:0::1;7588:355:1::0;12854:67:0::1;12934:15;:25:::0;;-1:-1:-1;;;;;;12934:25:0::1;-1:-1:-1::0;;;;;12934:25:0;::::1;::::0;;::::1;::::0;;;-1:-1:-1;12970:27:0;;;:18:::1;:27;::::0;;;;;:34;;-1:-1:-1;;12970:34:0::1;-1:-1:-1::0;12970:34:0::1;::::0;;13022:30;::::1;::::0;-1:-1:-1;13022:30:0::1;12771:289:::0;:::o;17060:134::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;17123:11:::1;:20:::0;;;::::1;;-1:-1:-1::0;;;17123:20:0::1;-1:-1:-1::0;;;;17123:20:0;;::::1;;::::0;;17161:25:::1;::::0;::::1;::::0;::::1;::::0;17137:6;1188:14:1;1181:22;1163:41;;1151:2;1136:18;;1023:187;17161:25:0::1;;;;;;;;17060:134:::0;:::o;7479:137::-;-1:-1:-1;;;;;7592:15:0;;7545:7;7592:15;;;:6;:15;;;;;;7572:36;;:19;:36::i;2860:148::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;2967:1:::1;2951:6:::0;;2930:40:::1;::::0;-1:-1:-1;;;;;2951:6:0;;::::1;::::0;2930:40:::1;::::0;2967:1;;2930:40:::1;2998:1;2981:19:::0;;-1:-1:-1;;;;;;2981:19:0::1;::::0;;2860:148::o;7191:87::-;7230:13;7263:7;7256:14;;;;;:::i;16502:302::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;16615:42:::1;16628:14;16644:12;16615;:42::i;:::-;16670:13;:30:::0;;::::1;::::0;;::::1;-1:-1:-1::0;;16711:26:0;;;;;;;;::::1;::::0;;::::1;;::::0;;;16755:41:::1;::::0;;8143:34:1;;;8208:2;8193:18;;8186:43;;;;16755:41:0::1;::::0;8091:18:1;16755:41:0::1;;;;;;;16502:302:::0;;:::o;7624:190::-;7727:4;7744:40;7754:10;7766:9;7777:6;7744:9;:40::i;17202:324::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;17347:9:::1;17342:115;17362:19:::0;;::::1;17342:115;;;17437:8;17403:18;:31;17422:8;;17431:1;17422:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;17403:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;17403:31:0;:42;;-1:-1:-1;;17403:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17383:3;::::1;::::0;::::1;:::i;:::-;;;;17342:115;;;;17474:44;17499:8;;17509;17474:44;;;;;;;;:::i;:::-;;;;;;;;17202:324:::0;;;:::o;12394:108::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;12447:15:::1;::::0;:47:::1;::::0;-1:-1:-1;;;;;12447:15:0;;::::1;::::0;12472:21:::1;12447:47:::0;::::1;;;::::0;:15:::1;:47:::0;:15;:47;12472:21;12447:15;:47;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12394:108::o:0;3133:290::-;2784:6;;-1:-1:-1;;;;;2784:6:0;2794:10;2784:20;2776:56;;;;-1:-1:-1;;;2776:56:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3236:24:0;::::1;3214:117;;;::::0;-1:-1:-1;;;3214:117:0;;9513:2:1;3214:117:0::1;::::0;::::1;9495:21:1::0;9552:2;9532:18;;;9525:30;9591:34;9571:18;;;9564:62;-1:-1:-1;;;9642:18:1;;;9635:41;9693:19;;3214:117:0::1;9311:407:1::0;3214:117:0::1;3370:6;::::0;;3349:38:::1;::::0;-1:-1:-1;;;;;3349:38:0;;::::1;::::0;3370:6;::::1;::::0;3349:38:::1;::::0;::::1;3398:6;:17:::0;;-1:-1:-1;;;;;;3398:17:0::1;-1:-1:-1::0;;;;;3398:17:0;;;::::1;::::0;;;::::1;::::0;;3133:290::o;8940:377::-;-1:-1:-1;;;;;9069:21:0;;9061:70;;;;-1:-1:-1;;;9061:70:0;;9925:2:1;9061:70:0;;;9907:21:1;9964:2;9944:18;;;9937:30;10003:34;9983:18;;;9976:62;-1:-1:-1;;;10054:18:1;;;10047:34;10098:19;;9061:70:0;9723:400:1;9061:70:0;-1:-1:-1;;;;;9150:21:0;;9142:68;;;;-1:-1:-1;;;9142:68:0;;10330:2:1;9142:68:0;;;10312:21:1;10369:2;10349:18;;;10342:30;10408:34;10388:18;;;10381:62;-1:-1:-1;;;10459:18:1;;;10452:32;10501:19;;9142:68:0;10128:398:1;9142:68:0;-1:-1:-1;;;;;9221:20:0;;;;;;;:11;:20;;;;;;;;:29;;;;;;;;;;;;;:38;;;9275:34;;1595:25:1;;;9275:34:0;;1568:18:1;9275:34:0;1449:177:1;9325:715:0;-1:-1:-1;;;;;9413:18:0;;9405:68;;;;-1:-1:-1;;;9405:68:0;;10733:2:1;9405:68:0;;;10715:21:1;10772:2;10752:18;;;10745:30;10811:34;10791:18;;;10784:62;-1:-1:-1;;;10862:18:1;;;10855:35;10907:19;;9405:68:0;10531:401:1;9405:68:0;-1:-1:-1;;;;;9492:16:0;;9484:64;;;;-1:-1:-1;;;9484:64:0;;11139:2:1;9484:64:0;;;11121:21:1;11178:2;11158:18;;;11151:30;11217:34;11197:18;;;11190:62;-1:-1:-1;;;11268:18:1;;;11261:33;11311:19;;9484:64:0;10937:399:1;9484:64:0;9576:1;9567:6;:10;9559:64;;;;-1:-1:-1;;;9559:64:0;;11543:2:1;9559:64:0;;;11525:21:1;11582:2;11562:18;;;11555:30;11621:34;11601:18;;;11594:62;-1:-1:-1;;;11672:18:1;;;11665:39;11721:19;;9559:64:0;11341:405:1;9559:64:0;2695:7;2722:6;-1:-1:-1;;;;;9654:15:0;;;2722:6;;9654:15;;;;:45;;-1:-1:-1;2695:7:0;2722:6;-1:-1:-1;;;;;9686:13:0;;;2722:6;;9686:13;;9654:45;:69;;;;-1:-1:-1;9717:6:0;;-1:-1:-1;;;9717:6:0;;;;9716:7;9654:69;:107;;;;;9748:13;-1:-1:-1;;;;;9740:21:0;:4;-1:-1:-1;;;;;9740:21:0;;;9654:107;:135;;;;-1:-1:-1;9778:11:0;;-1:-1:-1;;;9778:11:0;;;;9654:135;9636:349;;;9816:28;9847:24;9865:4;9847:9;:24::i;:::-;9816:55;-1:-1:-1;9892:24:0;;9888:85;;9935:38;9952:20;9935:16;:38::i;:::-;9801:184;9636:349;9997:35;10015:4;10021:2;10025:6;9997:17;:35::i;:::-;9325:715;;;:::o;10048:2338::-;4894:6;:13;;-1:-1:-1;;;;4894:13:0;-1:-1:-1;;;4894:13:0;;;10150:16:::1;::::0;;10164:1:::1;10150:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10150:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10150:16:0::1;10126:40;;10195:4;10177;10182:1;10177:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;10177:23:0::1;;;-1:-1:-1::0;;;;;10177:23:0::1;;;::::0;::::1;10221:19;:17;:19::i;:::-;10211:4;10216:1;10211:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10211:29:0;;::::1;:7;::::0;;::::1;::::0;;;;;:29;10285:15:::1;::::0;10253:62:::1;::::0;10270:4:::1;::::0;10285:15:::1;10303:11:::0;10253:8:::1;:62::i;:::-;10332:13;10349:2;10332:19:::0;10328:2051:::1;;10408:15;::::0;10648::::1;::::0;10408:320:::1;::::0;-1:-1:-1;;;10408:320:0;;-1:-1:-1;;;;;10408:15:0;;::::1;::::0;:88:::1;::::0;:320:::1;::::0;10523:11;;10408:15:::1;::::0;10617:4;;10648:15;::::1;::::0;10690::::1;::::0;10408:320:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;10387:439;;10775:35;::::0;1595:25:1;;;10775:35:0::1;::::0;1583:2:1;1568:18;10775:35:0::1;;;;;;;;10328:2051;;10387:439;10328:2051;;;10847:13;10864:5;10847:22:::0;10843:1536:::1;;10928:15;::::0;11169::::1;::::0;10928:321:::1;::::0;-1:-1:-1;;;10928:321:0;;-1:-1:-1;;;;;10928:15:0;;::::1;::::0;:89:::1;::::0;:321:::1;::::0;11044:11;;10928:15:::1;::::0;11138:4;;11169:15;::::1;::::0;11211::::1;::::0;10928:321:::1;;;:::i;10843:1536::-;11368:13;11385:5;11368:22;:48;;;;11394:13;11411:5;11394:22;11368:48;11364:1015;;;11478:15;::::0;11719::::1;::::0;11478:321:::1;::::0;-1:-1:-1;;;11478:321:0;;-1:-1:-1;;;;;11478:15:0;;::::1;::::0;:89:::1;::::0;:321:::1;::::0;11594:11;;11478:15:::1;::::0;11688:4;;11719:15;::::1;::::0;11761::::1;::::0;11478:321:::1;;;:::i;11364:1015::-;11950:15;::::0;12190::::1;::::0;11950:320:::1;::::0;-1:-1:-1;;;11950:320:0;;-1:-1:-1;;;;;11950:15:0;;::::1;::::0;:88:::1;::::0;:320:::1;::::0;12065:11;;11950:15:::1;::::0;12159:4;;12190:15;::::1;::::0;12232::::1;::::0;11950:320:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;11929:439;;12317:35;::::0;1595:25:1;;;12317:35:0::1;::::0;1583:2:1;1568:18;12317:35:0::1;1449:177:1::0;11929:439:0::1;-1:-1:-1::0;;4930:6:0;:14;;-1:-1:-1;;;;4930:14:0;;;10048:2338::o;8629:303::-;8713:7;8766:6;;8755:7;:17;;8733:109;;;;-1:-1:-1;;;8733:109:0;;13078:2:1;8733:109:0;;;13060:21:1;13117:2;13097:18;;;13090:30;13156:34;13136:18;;;13129:62;-1:-1:-1;;;13207:18:1;;;13200:40;13257:19;;8733:109:0;12876:406:1;8733:109:0;8853:19;8875:10;:8;:10::i;:::-;8853:32;-1:-1:-1;8903:21:0;8853:32;8903:7;:21;:::i;:::-;8896:28;8629:303;-1:-1:-1;;;8629:303:0:o;16812:240::-;16983:2;16950:29;16967:12;16950:14;:29;:::i;:::-;:35;;;;16928:116;;;;-1:-1:-1;;;16928:116:0;;13884:2:1;16928:116:0;;;13866:21:1;13923:2;13903:18;;;13896:30;13962:33;13942:18;;;13935:61;14013:18;;16928:116:0;13682:355:1;16928:116:0;16812:240;;:::o;13068:1116::-;-1:-1:-1;;;;;13216:26:0;;13200:12;13216:26;;;:18;:26;;;;;;;;13215:27;:74;;;;-1:-1:-1;;;;;;13260:29:0;;;;;;:18;:29;;;;;;;;13259:30;13215:74;:146;;;;;13317:13;-1:-1:-1;;;;;13307:23:0;:6;-1:-1:-1;;;;;13307:23:0;;:53;;;;13347:13;-1:-1:-1;;;;;13334:26:0;:9;-1:-1:-1;;;;;13334:26:0;;13307:53;13215:170;;;;-1:-1:-1;13379:6:0;;-1:-1:-1;;;13379:6:0;;;;13378:7;13215:170;13200:185;;13413:15;13443:23;13481:19;13515:17;13547:23;13585:19;13619:17;13650:28;13661:7;13670;13650:10;:28::i;:::-;13398:280;;;;;;;;;;;;;;13725:7;13708:6;:14;13715:6;-1:-1:-1;;;;;13708:14:0;-1:-1:-1;;;;;13708:14:0;;;;;;;;;;;;;:24;;;;:::i;:::-;-1:-1:-1;;;;;13691:14:0;;;;;;;:6;:14;;;;;;:41;;;;13763:17;;;;;;;:35;;13783:15;;13763:35;:::i;:::-;-1:-1:-1;;;;;13743:17:0;;;;;;;:6;:17;;;;;;;:55;;;;13816:44;;;;;;;;;;13844:15;1595:25:1;;1583:2;1568:18;;1449:177;13816:44:0;;;;;;;;13877:13;;13873:165;;13946:4;13931:21;;;;:6;:21;;;;;;:33;;13955:9;;13931:33;:::i;:::-;13922:4;13907:21;;;;:6;:21;;;;;;;:57;;;;13984:42;;-1:-1:-1;;;;;13984:42:0;;;;;;;14016:9;1595:25:1;;1583:2;1568:18;;1449:177;13984:42:0;;;;;;;;13873:165;14054:15;;14050:127;;14104:11;14095:6;;:20;;;;:::i;:::-;14086:6;:29;14135:30;;;-1:-1:-1;;;;;6905:32:1;;6887:51;;6969:2;6954:18;;6947:34;;;14135:30:0;;6860:18:1;14135:30:0;;;;;;;14050:127;13189:995;;;;;;;;13068:1116;;;:::o;6485:607::-;6537:7;6561:13;6578:2;6561:19;6557:528;;6623:15;;;;;;;;;-1:-1:-1;;;;;6623:15:0;-1:-1:-1;;;;;6623:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6616:29;;6485:607;:::o;6557:528::-;6667:13;6684:3;6667:20;6663:422;;6737:15;;;;;;;;;-1:-1:-1;;;;;6737:15:0;-1:-1:-1;;;;;6737:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6663:422;6780:13;6797:5;6780:22;6776:309;;6847:15;;;;;;;;;-1:-1:-1;;;;;6847:15:0;-1:-1:-1;;;;;6847:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6776:309;6892:13;6909:5;6892:22;:48;;;;6918:13;6935:5;6918:22;6892:48;6888:197;;;6988:15;;;;;;;;;-1:-1:-1;;;;;6988:15:0;-1:-1:-1;;;;;6988:21:0;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6888:197;7051:15;;;;;;;;;-1:-1:-1;;;;;7051:15:0;-1:-1:-1;;;;;7051:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15967:161;16009:7;16030:15;16047;16066:19;:17;:19::i;:::-;16029:56;;-1:-1:-1;16029:56:0;-1:-1:-1;16103:17:0;16029:56;;16103:17;:::i;:::-;16096:24;;;;15967:161;:::o;14229:779::-;14355:7;14364;14373;14382;14391;14400;14409;14449:23;14487:19;14521:17;14552:30;14564:8;14574:7;14552:11;:30::i;:::-;14434:148;;;;;;14610:15;14640:23;14678:19;14712:17;14743:44;14755:7;14764:11;14777:9;14743:11;:44::i;:::-;14595:192;;;;;;;;14822:7;14844:15;14874:11;14900:9;14924:15;14954:11;14980:9;14800:200;;;;;;;;;;;;;;;;;;;;;14229:779;;;;;;;;;;:::o;16136:248::-;16234:6;;16187:7;;;;16269:6;16300:15;16269:6;16234;16300:15;:::i;:::-;16290:7;:25;16286:54;;;-1:-1:-1;;16325:6:0;;;16333;;-1:-1:-1;16136:248:0;-1:-1:-1;16136:248:0:o;16286:54::-;16359:7;;16368;;-1:-1:-1;16136:248:0;-1:-1:-1;16136:248:0:o;15016:438::-;15116:7;15125;15134;15159:8;15154:37;;-1:-1:-1;15177:7:0;;-1:-1:-1;15186:1:0;;-1:-1:-1;15186:1:0;15169:22;;15154:37;15237:13;;15204:19;;15254:3;;15227:23;;15237:13;;15227:7;:23;:::i;:::-;15226:31;;;;:::i;:::-;15299:11;;15204:53;;-1:-1:-1;15268:17:0;;15314:3;;15289:21;;15299:11;;;;;15289:7;:21;:::i;:::-;15288:29;;;;:::i;:::-;15268:49;-1:-1:-1;15328:23:0;15268:49;15354:21;15364:11;15354:7;:21;:::i;:::-;:33;;;;:::i;:::-;15328:59;-1:-1:-1;15423:11:0;;-1:-1:-1;15436:9:0;-1:-1:-1;;15016:438:0;;;;;;:::o;15462:497::-;15596:7;15605;15614;15623;15643:12;15658:10;:8;:10::i;:::-;15643:25;-1:-1:-1;15681:15:0;15699:14;15643:25;15699:7;:14;:::i;:::-;15681:32;-1:-1:-1;15724:19:0;15746:18;15760:4;15746:11;:18;:::i;:::-;15724:40;-1:-1:-1;15775:17:0;15795:16;15807:4;15795:9;:16;:::i;:::-;15775:36;-1:-1:-1;15822:23:0;15775:36;15848:21;15858:11;15848:7;:21;:::i;:::-;:33;;;;:::i;:::-;15902:7;;;;-1:-1:-1;15928:11:0;;-1:-1:-1;15928:11:0;-1:-1:-1;15462:497:0;;-1:-1:-1;;;;;;15462:497:0:o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2682:255::-;2749:6;2802:2;2790:9;2781:7;2777:23;2773:32;2770:52;;;2818:1;2815;2808:12;2770:52;2857:9;2844:23;2876:31;2901:5;2876:31;:::i;2942:118::-;3028:5;3021:13;3014:21;3007:5;3004:32;2994:60;;3050:1;3047;3040:12;3065:241;3121:6;3174:2;3162:9;3153:7;3149:23;3145:32;3142:52;;;3190:1;3187;3180:12;3142:52;3229:9;3216:23;3248:28;3270:5;3248:28;:::i;3563:159::-;3630:20;;3690:6;3679:18;;3669:29;;3659:57;;3712:1;3709;3702:12;3659:57;3563:159;;;:::o;3727:256::-;3793:6;3801;3854:2;3842:9;3833:7;3829:23;3825:32;3822:52;;;3870:1;3867;3860:12;3822:52;3893:28;3911:9;3893:28;:::i;:::-;3883:38;;3940:37;3973:2;3962:9;3958:18;3940:37;:::i;:::-;3930:47;;3727:256;;;;;:::o;3988:750::-;4080:6;4088;4096;4149:2;4137:9;4128:7;4124:23;4120:32;4117:52;;;4165:1;4162;4155:12;4117:52;4205:9;4192:23;4234:18;4275:2;4267:6;4264:14;4261:34;;;4291:1;4288;4281:12;4261:34;4329:6;4318:9;4314:22;4304:32;;4374:7;4367:4;4363:2;4359:13;4355:27;4345:55;;4396:1;4393;4386:12;4345:55;4436:2;4423:16;4462:2;4454:6;4451:14;4448:34;;;4478:1;4475;4468:12;4448:34;4533:7;4526:4;4516:6;4513:1;4509:14;4505:2;4501:23;4497:34;4494:47;4491:67;;;4554:1;4551;4544:12;4491:67;4585:4;4577:13;;;;-1:-1:-1;4609:6:1;-1:-1:-1;;4650:20:1;;4637:34;4680:28;4637:34;4680:28;:::i;:::-;4727:5;4717:15;;;3988:750;;;;;:::o;4967:388::-;5035:6;5043;5096:2;5084:9;5075:7;5071:23;5067:32;5064:52;;;5112:1;5109;5102:12;5064:52;5151:9;5138:23;5170:31;5195:5;5170:31;:::i;:::-;5220:5;-1:-1:-1;5277:2:1;5262:18;;5249:32;5290:33;5249:32;5290:33;:::i;:::-;5342:7;5332:17;;;4967:388;;;;;:::o;5360:380::-;5439:1;5435:12;;;;5482;;;5503:61;;5557:4;5549:6;5545:17;5535:27;;5503:61;5610:2;5602:6;5599:14;5579:18;5576:38;5573:161;;5656:10;5651:3;5647:20;5644:1;5637:31;5691:4;5688:1;5681:15;5719:4;5716:1;5709:15;5573:161;;5360:380;;;:::o;6096:127::-;6157:10;6152:3;6148:20;6145:1;6138:31;6188:4;6185:1;6178:15;6212:4;6209:1;6202:15;6228:128;6295:9;;;6316:11;;;6313:37;;;6330:18;;:::i;6361:347::-;6563:2;6545:21;;;6602:2;6582:18;;;6575:30;6641:25;6636:2;6621:18;;6614:53;6699:2;6684:18;;6361:347::o;6992:245::-;7059:6;7112:2;7100:9;7091:7;7087:23;7083:32;7080:52;;;7128:1;7125;7118:12;7080:52;7160:9;7154:16;7179:28;7201:5;7179:28;:::i;8240:127::-;8301:10;8296:3;8292:20;8289:1;8282:31;8332:4;8329:1;8322:15;8356:4;8353:1;8346:15;8372:135;8411:3;8432:17;;;8429:43;;8452:18;;:::i;:::-;-1:-1:-1;8499:1:1;8488:13;;8372:135::o;8512:794::-;8734:2;8746:21;;;8719:18;;8802:22;;;8686:4;8881:6;8855:2;8840:18;;8686:4;8915:304;8929:6;8926:1;8923:13;8915:304;;;9004:6;8991:20;9024:31;9049:5;9024:31;:::i;:::-;-1:-1:-1;;;;;9080:31:1;9068:44;;9135:4;9194:15;;;;9159:12;;;;9108:1;8944:9;8915:304;;;8919:3;9236;9228:11;;;;9291:6;9284:14;9277:22;9270:4;9259:9;9255:20;9248:52;8512:794;;;;;;:::o;11883:988::-;12153:4;12201:3;12190:9;12186:19;12232:6;12221:9;12214:25;12258:2;12296:6;12291:2;12280:9;12276:18;12269:34;12339:3;12334:2;12323:9;12319:18;12312:31;12363:6;12398;12392:13;12429:6;12421;12414:22;12467:3;12456:9;12452:19;12445:26;;12506:2;12498:6;12494:15;12480:29;;12527:1;12537:195;12551:6;12548:1;12545:13;12537:195;;;12616:13;;-1:-1:-1;;;;;12612:39:1;12600:52;;12707:15;;;;12672:12;;;;12648:1;12566:9;12537:195;;;-1:-1:-1;;;;;;;12788:32:1;;;;12783:2;12768:18;;12761:60;-1:-1:-1;;;12852:3:1;12837:19;12830:35;12749:3;11883:988;-1:-1:-1;;;11883:988:1:o;13287:217::-;13327:1;13353;13343:132;;13397:10;13392:3;13388:20;13385:1;13378:31;13432:4;13429:1;13422:15;13460:4;13457:1;13450:15;13343:132;-1:-1:-1;13489:9:1;;13287:217::o;13509:168::-;13576:6;13602:10;;;13614;;;13598:27;;13637:11;;;13634:37;;;13651:18;;:::i;:::-;13634:37;13509:168;;;;:::o;14042:125::-;14107:9;;;14128:10;;;14125:36;;;14141:18;;:::i;14172:251::-;14242:6;14295:2;14283:9;14274:7;14270:23;14266:32;14263:52;;;14311:1;14308;14301:12;14263:52;14343:9;14337:16;14362:31;14387:5;14362:31;:::i;14428:168::-;14468:7;14534:1;14530;14526:6;14522:14;14519:1;14516:21;14511:1;14504:9;14497:17;14493:45;14490:71;;;14541:18;;:::i;:::-;-1:-1:-1;14581:9:1;;14428:168::o

Swarm Source

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