ETH Price: $2,983.88 (-2.45%)
Gas: 1 Gwei

Token

PLCSteak (PLCSTK)
 

Overview

Max Total Supply

10,000,000,000 PLCSTK

Holders

146

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 13 Decimals)

Balance
0.0079046468686 PLCSTK

Value
$0.00
0xbde18331833a5836e181e78c3b830ffc4e201a0b
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:
PLCSteak

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-09-01
*/

// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.9;

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

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

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

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

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

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

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

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

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

    constructor() {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

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

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

}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

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

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

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

interface IUniswapV2Router02 {
    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 addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}

contract PLCSteak is Context, IERC20, Ownable {

    using SafeMath for uint256;

    string private constant _name = "PLCSteak";
    string private constant _symbol = "PLCSTK";
    uint8 private constant _decimals = 13;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 10000000000 * 10**13;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _reflectionFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 0;
    uint256 private _reflectionFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 0;

    //Original Fee
    uint256 private _reflectionFee = _reflectionFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousReflectionFee = _reflectionFee;
    uint256 private _previoustaxFee = _taxFee;

    address payable private _developmentAddress = payable(0xffcCD0cc32C9Bf7c269484069dc485e0941eba35);

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    constructor() {
        _rOwned[_msgSender()] = _rTotal;

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

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

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

    function totalSupply() public pure 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(_msgSender(), recipient, amount);
        return true;
    }

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        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.div(currentRate);
    }

    function removeAllFee() private {
        if (_reflectionFee == 0 && _taxFee == 0) return;

        _previousReflectionFee = _reflectionFee;
        _previoustaxFee = _taxFee;

        _reflectionFee = 0;
        _taxFee = 0;
    }

    function restoreAllFee() private {
        _reflectionFee = _previousReflectionFee;
        _taxFee = _previoustaxFee;
    }

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

    function _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");

        bool takeFee = true;

        // transfer not taxed
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            // buy
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _reflectionFee = _reflectionFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }

            // sell
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _reflectionFee = _reflectionFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }

        }

        _tokenTransfer(from, to, amount, takeFee);
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[_developmentAddress] = _rOwned[_developmentAddress].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
            _getTValues(tAmount, _reflectionFee, _taxFee);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
            _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 reflectionFee,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(reflectionFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

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

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function setFee(uint256 reflectionFeeOnBuy, uint256 reflectionFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _reflectionFeeOnBuy = reflectionFeeOnBuy;
        _reflectionFeeOnSell = reflectionFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

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

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"reflectionFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"reflectionFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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":"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"}]

608060405269152d02c7e14af68000006000196200001e9190620005ee565b6000196200002d919062000655565b600655600060085560006009556000600a556000600b55600a54600c55600b54600d55600c54600e55600d54600f5573ffccd0cc32c9bf7c269484069dc485e0941eba35601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620000be57600080fd5b506000620000d16200058460201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060065460026000620001866200058460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200026a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002909190620006fa565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031e9190620006fa565b6040518363ffffffff1660e01b81526004016200033d9291906200073d565b6020604051808303816000875af11580156200035d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003839190620006fa565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160056000620003d96200058c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200050c6200058460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69152d02c7e14af68000006040516200057591906200077b565b60405180910390a35062000798565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620005fb82620005b5565b91506200060883620005b5565b9250826200061b576200061a620005bf565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200066282620005b5565b91506200066f83620005b5565b92508282039050818111156200068a576200068962000626565b5b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620006c28262000695565b9050919050565b620006d481620006b5565b8114620006e057600080fd5b50565b600081519050620006f481620006c9565b92915050565b60006020828403121562000713576200071262000690565b5b60006200072384828501620006e3565b91505092915050565b6200073781620006b5565b82525050565b60006040820190506200075460008301856200072c565b6200076360208301846200072c565b9392505050565b6200077581620005b5565b82525050565b60006020820190506200079260008301846200076a565b92915050565b61268f80620007a86000396000f3fe6080604052600436106100f75760003560e01c8063715018a61161008a578063a9059cbb11610059578063a9059cbb14610327578063c492f04614610364578063dd62ed3e1461038d578063f2fde38b146103ca576100fe565b8063715018a6146102915780638da5cb5b146102a857806395d89b41146102d3578063a2a957bb146102fe576100fe565b806323b872dd116100c657806323b872dd146101c1578063313ce567146101fe57806349bd5a5e1461022957806370a0823114610254576100fe565b806306fdde0314610103578063095ea7b31461012e5780631694505e1461016b57806318160ddd14610196576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b506101186103f3565b6040516101259190611aae565b60405180910390f35b34801561013a57600080fd5b5061015560048036038101906101509190611b6e565b610430565b6040516101629190611bc9565b60405180910390f35b34801561017757600080fd5b5061018061044e565b60405161018d9190611c43565b60405180910390f35b3480156101a257600080fd5b506101ab610474565b6040516101b89190611c6d565b60405180910390f35b3480156101cd57600080fd5b506101e860048036038101906101e39190611c88565b610486565b6040516101f59190611bc9565b60405180910390f35b34801561020a57600080fd5b5061021361055f565b6040516102209190611cf7565b60405180910390f35b34801561023557600080fd5b5061023e610568565b60405161024b9190611d21565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190611d3c565b61058e565b6040516102889190611c6d565b60405180910390f35b34801561029d57600080fd5b506102a66105df565b005b3480156102b457600080fd5b506102bd610732565b6040516102ca9190611d21565b60405180910390f35b3480156102df57600080fd5b506102e861075b565b6040516102f59190611aae565b60405180910390f35b34801561030a57600080fd5b5061032560048036038101906103209190611d69565b610798565b005b34801561033357600080fd5b5061034e60048036038101906103499190611b6e565b61084f565b60405161035b9190611bc9565b60405180910390f35b34801561037057600080fd5b5061038b60048036038101906103869190611e61565b61086d565b005b34801561039957600080fd5b506103b460048036038101906103af9190611ec1565b6109a7565b6040516103c19190611c6d565b60405180910390f35b3480156103d657600080fd5b506103f160048036038101906103ec9190611d3c565b610a2e565b005b60606040518060400160405280600881526020017f504c43537465616b000000000000000000000000000000000000000000000000815250905090565b600061044461043d610bef565b8484610bf7565b6001905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600069152d02c7e14af6800000905090565b6000610493848484610dc0565b6105548461049f610bef565b61054f8560405180606001604052806028815260200161263260289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610505610bef565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111e29092919063ffffffff16565b610bf7565b600190509392505050565b6000600d905090565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006105d8600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611246565b9050919050565b6105e7610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610674576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066b90611f4d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f504c4353544b0000000000000000000000000000000000000000000000000000815250905090565b6107a0610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461082d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082490611f4d565b60405180910390fd5b8360088190555082600a819055508160098190555080600b8190555050505050565b600061086361085c610bef565b8484610dc0565b6001905092915050565b610875610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610902576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f990611f4d565b60405180910390fd5b60005b838390508110156109a157816005600086868581811061092857610927611f6d565b5b905060200201602081019061093d9190611d3c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061099990611fcb565b915050610905565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610a36610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90611f4d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2990612085565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5d90612117565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cd5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccc906121a9565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610db39190611c6d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e269061223b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e95906122cd565b60405180910390fd5b60008111610ee1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed89061235f565b60405180910390fd5b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f885750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061103b5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561103a5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b1561104957600090506111d0565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156110f45750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561110c57600854600c81905550600954600d819055505b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156111b75750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156111cf57600a54600c81905550600b54600d819055505b5b6111dc848484846112b4565b50505050565b600083831115829061122a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112219190611aae565b60405180910390fd5b5060008385611239919061237f565b9050809150509392505050565b600060065482111561128d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128490612425565b60405180910390fd5b60006112976112e1565b90506112ac818461130c90919063ffffffff16565b915050919050565b806112c2576112c1611356565b5b6112cd848484611393565b806112db576112da61155e565b5b50505050565b60008060006112ee611572565b91509150611305818361130c90919063ffffffff16565b9250505090565b600061134e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115d7565b905092915050565b6000600c5414801561136a57506000600d54145b61139157600c54600e81905550600d54600f819055506000600c819055506000600d819055505b565b6000806000806000806113a58761163a565b95509550955095509550955061140386600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116a290919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061149885600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116ec90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114e48161174a565b6114ee848361184b565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161154b9190611c6d565b60405180910390a3505050505050505050565b600e54600c81905550600f54600d81905550565b60008060006006549050600069152d02c7e14af680000090506115aa69152d02c7e14af680000060065461130c90919063ffffffff16565b8210156115ca5760065469152d02c7e14af68000009350935050506115d3565b81819350935050505b9091565b6000808311829061161e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116159190611aae565b60405180910390fd5b506000838561162d9190612474565b9050809150509392505050565b60008060008060008060008060006116578a600c54600d54611885565b92509250925060006116676112e1565b9050600080600061167a8e87878761191b565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006116e483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111e2565b905092915050565b60008082846116fb91906124a5565b905083811015611740576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173790612525565b60405180910390fd5b8091505092915050565b60006117546112e1565b9050600061176b82846119a490919063ffffffff16565b90506117e18160026000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116ec90919063ffffffff16565b60026000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611860826006546116a290919063ffffffff16565b60068190555061187b816007546116ec90919063ffffffff16565b6007819055505050565b6000806000806118b160646118a3888a6119a490919063ffffffff16565b61130c90919063ffffffff16565b905060006118db60646118cd888b6119a490919063ffffffff16565b61130c90919063ffffffff16565b90506000611904826118f6858c6116a290919063ffffffff16565b6116a290919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061193485896119a490919063ffffffff16565b9050600061194b86896119a490919063ffffffff16565b9050600061196287896119a490919063ffffffff16565b9050600061198b8261197d85876116a290919063ffffffff16565b6116a290919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008083036119b65760009050611a18565b600082846119c49190612545565b90508284826119d39190612474565b14611a13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0a90612611565b60405180910390fd5b809150505b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a58578082015181840152602081019050611a3d565b60008484015250505050565b6000601f19601f8301169050919050565b6000611a8082611a1e565b611a8a8185611a29565b9350611a9a818560208601611a3a565b611aa381611a64565b840191505092915050565b60006020820190508181036000830152611ac88184611a75565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611b0582611ada565b9050919050565b611b1581611afa565b8114611b2057600080fd5b50565b600081359050611b3281611b0c565b92915050565b6000819050919050565b611b4b81611b38565b8114611b5657600080fd5b50565b600081359050611b6881611b42565b92915050565b60008060408385031215611b8557611b84611ad0565b5b6000611b9385828601611b23565b9250506020611ba485828601611b59565b9150509250929050565b60008115159050919050565b611bc381611bae565b82525050565b6000602082019050611bde6000830184611bba565b92915050565b6000819050919050565b6000611c09611c04611bff84611ada565b611be4565b611ada565b9050919050565b6000611c1b82611bee565b9050919050565b6000611c2d82611c10565b9050919050565b611c3d81611c22565b82525050565b6000602082019050611c586000830184611c34565b92915050565b611c6781611b38565b82525050565b6000602082019050611c826000830184611c5e565b92915050565b600080600060608486031215611ca157611ca0611ad0565b5b6000611caf86828701611b23565b9350506020611cc086828701611b23565b9250506040611cd186828701611b59565b9150509250925092565b600060ff82169050919050565b611cf181611cdb565b82525050565b6000602082019050611d0c6000830184611ce8565b92915050565b611d1b81611afa565b82525050565b6000602082019050611d366000830184611d12565b92915050565b600060208284031215611d5257611d51611ad0565b5b6000611d6084828501611b23565b91505092915050565b60008060008060808587031215611d8357611d82611ad0565b5b6000611d9187828801611b59565b9450506020611da287828801611b59565b9350506040611db387828801611b59565b9250506060611dc487828801611b59565b91505092959194509250565b600080fd5b600080fd5b600080fd5b60008083601f840112611df557611df4611dd0565b5b8235905067ffffffffffffffff811115611e1257611e11611dd5565b5b602083019150836020820283011115611e2e57611e2d611dda565b5b9250929050565b611e3e81611bae565b8114611e4957600080fd5b50565b600081359050611e5b81611e35565b92915050565b600080600060408486031215611e7a57611e79611ad0565b5b600084013567ffffffffffffffff811115611e9857611e97611ad5565b5b611ea486828701611ddf565b93509350506020611eb786828701611e4c565b9150509250925092565b60008060408385031215611ed857611ed7611ad0565b5b6000611ee685828601611b23565b9250506020611ef785828601611b23565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611f37602083611a29565b9150611f4282611f01565b602082019050919050565b60006020820190508181036000830152611f6681611f2a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611fd682611b38565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361200857612007611f9c565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061206f602683611a29565b915061207a82612013565b604082019050919050565b6000602082019050818103600083015261209e81612062565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612101602483611a29565b915061210c826120a5565b604082019050919050565b60006020820190508181036000830152612130816120f4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612193602283611a29565b915061219e82612137565b604082019050919050565b600060208201905081810360008301526121c281612186565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612225602583611a29565b9150612230826121c9565b604082019050919050565b6000602082019050818103600083015261225481612218565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006122b7602383611a29565b91506122c28261225b565b604082019050919050565b600060208201905081810360008301526122e6816122aa565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612349602983611a29565b9150612354826122ed565b604082019050919050565b600060208201905081810360008301526123788161233c565b9050919050565b600061238a82611b38565b915061239583611b38565b92508282039050818111156123ad576123ac611f9c565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600061240f602a83611a29565b915061241a826123b3565b604082019050919050565b6000602082019050818103600083015261243e81612402565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061247f82611b38565b915061248a83611b38565b92508261249a57612499612445565b5b828204905092915050565b60006124b082611b38565b91506124bb83611b38565b92508282019050808211156124d3576124d2611f9c565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061250f601b83611a29565b915061251a826124d9565b602082019050919050565b6000602082019050818103600083015261253e81612502565b9050919050565b600061255082611b38565b915061255b83611b38565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561259457612593611f9c565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006125fb602183611a29565b91506126068261259f565b604082019050919050565b6000602082019050818103600083015261262a816125ee565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220910f763217e5721ae6348504aa99d1773221eb2e28954bbddc14042782c3b39a64736f6c63430008100033

Deployed Bytecode

0x6080604052600436106100f75760003560e01c8063715018a61161008a578063a9059cbb11610059578063a9059cbb14610327578063c492f04614610364578063dd62ed3e1461038d578063f2fde38b146103ca576100fe565b8063715018a6146102915780638da5cb5b146102a857806395d89b41146102d3578063a2a957bb146102fe576100fe565b806323b872dd116100c657806323b872dd146101c1578063313ce567146101fe57806349bd5a5e1461022957806370a0823114610254576100fe565b806306fdde0314610103578063095ea7b31461012e5780631694505e1461016b57806318160ddd14610196576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b506101186103f3565b6040516101259190611aae565b60405180910390f35b34801561013a57600080fd5b5061015560048036038101906101509190611b6e565b610430565b6040516101629190611bc9565b60405180910390f35b34801561017757600080fd5b5061018061044e565b60405161018d9190611c43565b60405180910390f35b3480156101a257600080fd5b506101ab610474565b6040516101b89190611c6d565b60405180910390f35b3480156101cd57600080fd5b506101e860048036038101906101e39190611c88565b610486565b6040516101f59190611bc9565b60405180910390f35b34801561020a57600080fd5b5061021361055f565b6040516102209190611cf7565b60405180910390f35b34801561023557600080fd5b5061023e610568565b60405161024b9190611d21565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190611d3c565b61058e565b6040516102889190611c6d565b60405180910390f35b34801561029d57600080fd5b506102a66105df565b005b3480156102b457600080fd5b506102bd610732565b6040516102ca9190611d21565b60405180910390f35b3480156102df57600080fd5b506102e861075b565b6040516102f59190611aae565b60405180910390f35b34801561030a57600080fd5b5061032560048036038101906103209190611d69565b610798565b005b34801561033357600080fd5b5061034e60048036038101906103499190611b6e565b61084f565b60405161035b9190611bc9565b60405180910390f35b34801561037057600080fd5b5061038b60048036038101906103869190611e61565b61086d565b005b34801561039957600080fd5b506103b460048036038101906103af9190611ec1565b6109a7565b6040516103c19190611c6d565b60405180910390f35b3480156103d657600080fd5b506103f160048036038101906103ec9190611d3c565b610a2e565b005b60606040518060400160405280600881526020017f504c43537465616b000000000000000000000000000000000000000000000000815250905090565b600061044461043d610bef565b8484610bf7565b6001905092915050565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600069152d02c7e14af6800000905090565b6000610493848484610dc0565b6105548461049f610bef565b61054f8560405180606001604052806028815260200161263260289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610505610bef565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111e29092919063ffffffff16565b610bf7565b600190509392505050565b6000600d905090565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006105d8600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611246565b9050919050565b6105e7610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610674576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066b90611f4d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f504c4353544b0000000000000000000000000000000000000000000000000000815250905090565b6107a0610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461082d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082490611f4d565b60405180910390fd5b8360088190555082600a819055508160098190555080600b8190555050505050565b600061086361085c610bef565b8484610dc0565b6001905092915050565b610875610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610902576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f990611f4d565b60405180910390fd5b60005b838390508110156109a157816005600086868581811061092857610927611f6d565b5b905060200201602081019061093d9190611d3c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061099990611fcb565b915050610905565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610a36610bef565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90611f4d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2990612085565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5d90612117565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cd5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccc906121a9565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610db39190611c6d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e269061223b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e95906122cd565b60405180910390fd5b60008111610ee1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed89061235f565b60405180910390fd5b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f885750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061103b5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561103a5750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b1561104957600090506111d0565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156110f45750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561110c57600854600c81905550600954600d819055505b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156111b75750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156111cf57600a54600c81905550600b54600d819055505b5b6111dc848484846112b4565b50505050565b600083831115829061122a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112219190611aae565b60405180910390fd5b5060008385611239919061237f565b9050809150509392505050565b600060065482111561128d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128490612425565b60405180910390fd5b60006112976112e1565b90506112ac818461130c90919063ffffffff16565b915050919050565b806112c2576112c1611356565b5b6112cd848484611393565b806112db576112da61155e565b5b50505050565b60008060006112ee611572565b91509150611305818361130c90919063ffffffff16565b9250505090565b600061134e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115d7565b905092915050565b6000600c5414801561136a57506000600d54145b61139157600c54600e81905550600d54600f819055506000600c819055506000600d819055505b565b6000806000806000806113a58761163a565b95509550955095509550955061140386600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116a290919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061149885600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116ec90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114e48161174a565b6114ee848361184b565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161154b9190611c6d565b60405180910390a3505050505050505050565b600e54600c81905550600f54600d81905550565b60008060006006549050600069152d02c7e14af680000090506115aa69152d02c7e14af680000060065461130c90919063ffffffff16565b8210156115ca5760065469152d02c7e14af68000009350935050506115d3565b81819350935050505b9091565b6000808311829061161e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116159190611aae565b60405180910390fd5b506000838561162d9190612474565b9050809150509392505050565b60008060008060008060008060006116578a600c54600d54611885565b92509250925060006116676112e1565b9050600080600061167a8e87878761191b565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006116e483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111e2565b905092915050565b60008082846116fb91906124a5565b905083811015611740576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161173790612525565b60405180910390fd5b8091505092915050565b60006117546112e1565b9050600061176b82846119a490919063ffffffff16565b90506117e18160026000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116ec90919063ffffffff16565b60026000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611860826006546116a290919063ffffffff16565b60068190555061187b816007546116ec90919063ffffffff16565b6007819055505050565b6000806000806118b160646118a3888a6119a490919063ffffffff16565b61130c90919063ffffffff16565b905060006118db60646118cd888b6119a490919063ffffffff16565b61130c90919063ffffffff16565b90506000611904826118f6858c6116a290919063ffffffff16565b6116a290919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061193485896119a490919063ffffffff16565b9050600061194b86896119a490919063ffffffff16565b9050600061196287896119a490919063ffffffff16565b9050600061198b8261197d85876116a290919063ffffffff16565b6116a290919063ffffffff16565b9050838184965096509650505050509450945094915050565b60008083036119b65760009050611a18565b600082846119c49190612545565b90508284826119d39190612474565b14611a13576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0a90612611565b60405180910390fd5b809150505b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611a58578082015181840152602081019050611a3d565b60008484015250505050565b6000601f19601f8301169050919050565b6000611a8082611a1e565b611a8a8185611a29565b9350611a9a818560208601611a3a565b611aa381611a64565b840191505092915050565b60006020820190508181036000830152611ac88184611a75565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611b0582611ada565b9050919050565b611b1581611afa565b8114611b2057600080fd5b50565b600081359050611b3281611b0c565b92915050565b6000819050919050565b611b4b81611b38565b8114611b5657600080fd5b50565b600081359050611b6881611b42565b92915050565b60008060408385031215611b8557611b84611ad0565b5b6000611b9385828601611b23565b9250506020611ba485828601611b59565b9150509250929050565b60008115159050919050565b611bc381611bae565b82525050565b6000602082019050611bde6000830184611bba565b92915050565b6000819050919050565b6000611c09611c04611bff84611ada565b611be4565b611ada565b9050919050565b6000611c1b82611bee565b9050919050565b6000611c2d82611c10565b9050919050565b611c3d81611c22565b82525050565b6000602082019050611c586000830184611c34565b92915050565b611c6781611b38565b82525050565b6000602082019050611c826000830184611c5e565b92915050565b600080600060608486031215611ca157611ca0611ad0565b5b6000611caf86828701611b23565b9350506020611cc086828701611b23565b9250506040611cd186828701611b59565b9150509250925092565b600060ff82169050919050565b611cf181611cdb565b82525050565b6000602082019050611d0c6000830184611ce8565b92915050565b611d1b81611afa565b82525050565b6000602082019050611d366000830184611d12565b92915050565b600060208284031215611d5257611d51611ad0565b5b6000611d6084828501611b23565b91505092915050565b60008060008060808587031215611d8357611d82611ad0565b5b6000611d9187828801611b59565b9450506020611da287828801611b59565b9350506040611db387828801611b59565b9250506060611dc487828801611b59565b91505092959194509250565b600080fd5b600080fd5b600080fd5b60008083601f840112611df557611df4611dd0565b5b8235905067ffffffffffffffff811115611e1257611e11611dd5565b5b602083019150836020820283011115611e2e57611e2d611dda565b5b9250929050565b611e3e81611bae565b8114611e4957600080fd5b50565b600081359050611e5b81611e35565b92915050565b600080600060408486031215611e7a57611e79611ad0565b5b600084013567ffffffffffffffff811115611e9857611e97611ad5565b5b611ea486828701611ddf565b93509350506020611eb786828701611e4c565b9150509250925092565b60008060408385031215611ed857611ed7611ad0565b5b6000611ee685828601611b23565b9250506020611ef785828601611b23565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611f37602083611a29565b9150611f4282611f01565b602082019050919050565b60006020820190508181036000830152611f6681611f2a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611fd682611b38565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361200857612007611f9c565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061206f602683611a29565b915061207a82612013565b604082019050919050565b6000602082019050818103600083015261209e81612062565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612101602483611a29565b915061210c826120a5565b604082019050919050565b60006020820190508181036000830152612130816120f4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612193602283611a29565b915061219e82612137565b604082019050919050565b600060208201905081810360008301526121c281612186565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612225602583611a29565b9150612230826121c9565b604082019050919050565b6000602082019050818103600083015261225481612218565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006122b7602383611a29565b91506122c28261225b565b604082019050919050565b600060208201905081810360008301526122e6816122aa565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612349602983611a29565b9150612354826122ed565b604082019050919050565b600060208201905081810360008301526123788161233c565b9050919050565b600061238a82611b38565b915061239583611b38565b92508282039050818111156123ad576123ac611f9c565b5b92915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600061240f602a83611a29565b915061241a826123b3565b604082019050919050565b6000602082019050818103600083015261243e81612402565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061247f82611b38565b915061248a83611b38565b92508261249a57612499612445565b5b828204905092915050565b60006124b082611b38565b91506124bb83611b38565b92508282019050808211156124d3576124d2611f9c565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b600061250f601b83611a29565b915061251a826124d9565b602082019050919050565b6000602082019050818103600083015261253e81612502565b9050919050565b600061255082611b38565b915061255b83611b38565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561259457612593611f9c565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006125fb602183611a29565b91506126068261259f565b604082019050919050565b6000602082019050818103600083015261262a816125ee565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220910f763217e5721ae6348504aa99d1773221eb2e28954bbddc14042782c3b39a64736f6c63430008100033

Deployed Bytecode Sourcemap

4068:9584:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5924:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6849:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5254:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6201:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7050:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6110:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5302:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6304:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1555:148;;;;;;;;;;;;;:::i;:::-;;1341:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6015:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13084:321;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6450:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13413:234;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6657:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1711:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5924:83;5961:13;5994:5;;;;;;;;;;;;;;;;;5987:12;;5924:83;:::o;6849:193::-;6951:4;6973:39;6982:12;:10;:12::i;:::-;6996:7;7005:6;6973:8;:39::i;:::-;7030:4;7023:11;;6849:193;;;;:::o;5254:41::-;;;;;;;;;;;;;:::o;6201:95::-;6254:7;4618:20;6274:14;;6201:95;:::o;7050:446::-;7182:4;7199:36;7209:6;7217:9;7228:6;7199:9;:36::i;:::-;7246:220;7269:6;7290:12;:10;:12::i;:::-;7317:138;7373:6;7317:138;;;;;;;;;;;;;;;;;:11;:19;7329:6;7317:19;;;;;;;;;;;;;;;:33;7337:12;:10;:12::i;:::-;7317:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7246:8;:220::i;:::-;7484:4;7477:11;;7050:446;;;;;:::o;6110:83::-;6151:5;4291:2;6169:16;;6110:83;:::o;5302:28::-;;;;;;;;;;;;;:::o;6304:138::-;6370:7;6397:37;6417:7;:16;6425:7;6417:16;;;;;;;;;;;;;;;;6397:19;:37::i;:::-;6390:44;;6304:138;;;:::o;1555:148::-;1478:12;:10;:12::i;:::-;1468:22;;:6;;;;;;;;;;:22;;;1460:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1662:1:::1;1625:40;;1646:6;::::0;::::1;;;;;;;;1625:40;;;;;;;;;;;;1693:1;1676:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1555:148::o:0;1341:79::-;1379:7;1406:6;;;;;;;;;;;1399:13;;1341:79;:::o;6015:87::-;6054:13;6087:7;;;;;;;;;;;;;;;;;6080:14;;6015:87;:::o;13084:321::-;1478:12;:10;:12::i;:::-;1468:22;;:6;;;;;;;;;;:22;;;1460:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13250:18:::1;13228:19;:40;;;;13302:19;13279:20;:42;;;;13347:11;13332:12;:26;;;;13385:12;13369:13;:28;;;;13084:321:::0;;;;:::o;6450:199::-;6555:4;6577:42;6587:12;:10;:12::i;:::-;6601:9;6612:6;6577:9;:42::i;:::-;6637:4;6630:11;;6450:199;;;;:::o;13413:234::-;1478:12;:10;:12::i;:::-;1468:22;;:6;;;;;;;;;;:22;;;1460:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13530:9:::1;13526:114;13549:8;;:15;;13545:1;:19;13526:114;;;13620:8;13586:18;:31;13605:8;;13614:1;13605:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;13586:31;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;13566:3;;;;;:::i;:::-;;;;13526:114;;;;13413:234:::0;;;:::o;6657:184::-;6774:7;6806:11;:18;6818:5;6806:18;;;;;;;;;;;;;;;:27;6825:7;6806:27;;;;;;;;;;;;;;;;6799:34;;6657:184;;;;:::o;1711:244::-;1478:12;:10;:12::i;:::-;1468:22;;:6;;;;;;;;;;:22;;;1460:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1820:1:::1;1800:22;;:8;:22;;::::0;1792:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1910:8;1881:38;;1902:6;::::0;::::1;;;;;;;;1881:38;;;;;;;;;;;;1939:8;1930:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;1711:244:::0;:::o;100:98::-;153:7;180:10;173:17;;100:98;:::o;8217:369::-;8361:1;8344:19;;:5;:19;;;8336:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8442:1;8423:21;;:7;:21;;;8415:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8524:6;8494:11;:18;8506:5;8494:18;;;;;;;;;;;;;;;:27;8513:7;8494:27;;;;;;;;;;;;;;;:36;;;;8562:7;8546:32;;8555:5;8546:32;;;8571:6;8546:32;;;;;;:::i;:::-;;;;;;;;8217:369;;;:::o;8594:1057::-;8732:1;8716:18;;:4;:18;;;8708:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8809:1;8795:16;;:2;:16;;;8787:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8879:1;8870:6;:10;8862:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8939:12;8954:4;8939:19;;9007:18;:24;9026:4;9007:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;9035:18;:22;9054:2;9035:22;;;;;;;;;;;;;;;;;;;;;;;;;9007:50;9006:102;;;;9071:13;;;;;;;;;;;9063:21;;:4;:21;;;;:44;;;;;9094:13;;;;;;;;;;;9088:19;;:2;:19;;;;9063:44;9006:102;9002:588;;;9135:5;9125:15;;9002:588;;;9204:13;;;;;;;;;;;9196:21;;:4;:21;;;:55;;;;;9235:15;;;;;;;;;;;9221:30;;:2;:30;;;;9196:55;9193:172;;;9289:19;;9272:14;:36;;;;9337:12;;9327:7;:22;;;;9193:172;9412:13;;;;;;;;;;;9406:19;;:2;:19;;;:55;;;;;9445:15;;;;;;;;;;;9429:32;;:4;:32;;;;9406:55;9402:175;;;9499:20;;9482:14;:37;;;;9548:13;;9538:7;:23;;;;9402:175;9002:588;9602:41;9617:4;9623:2;9627:6;9635:7;9602:14;:41::i;:::-;8697:954;8594:1057;;;:::o;2319:224::-;2439:7;2472:1;2467;:6;;2475:12;2459:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2499:9;2515:1;2511;:5;;;;:::i;:::-;2499:17;;2534:1;2527:8;;;2319:224;;;;;:::o;7504:323::-;7599:7;7657;;7646;:18;;7624:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;7745:19;7767:10;:8;:10::i;:::-;7745:32;;7795:24;7807:11;7795:7;:11;;:24;;;;:::i;:::-;7788:31;;;7504:323;;;:::o;9659:282::-;9815:7;9810:28;;9824:14;:12;:14::i;:::-;9810:28;9849:44;9867:6;9875:9;9886:6;9849:17;:44::i;:::-;9909:7;9904:29;;9918:15;:13;:15::i;:::-;9904:29;9659:282;;;;:::o;12647:164::-;12689:7;12710:15;12727;12746:19;:17;:19::i;:::-;12709:56;;;;12783:20;12795:7;12783;:11;;:20;;;;:::i;:::-;12776:27;;;;12647:164;:::o;2805:132::-;2863:7;2890:39;2894:1;2897;2890:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2883:46;;2805:132;;;;:::o;7835:239::-;7900:1;7882:14;;:19;:35;;;;;7916:1;7905:7;;:12;7882:35;7919:7;7878:48;7963:14;;7938:22;:39;;;;8006:7;;7988:15;:25;;;;8043:1;8026:14;:18;;;;8065:1;8055:7;:11;;;;7835:239;:::o;9949:610::-;10096:15;10126:23;10164:12;10191:23;10229:12;10256:13;10283:19;10294:7;10283:10;:19::i;:::-;10081:221;;;;;;;;;;;;10331:28;10351:7;10331;:15;10339:6;10331:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10313:7;:15;10321:6;10313:15;;;;;;;;;;;;;;;:46;;;;10391:39;10414:15;10391:7;:18;10399:9;10391:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;10370:7;:18;10378:9;10370:18;;;;;;;;;;;;;;;:60;;;;10441:16;10451:5;10441:9;:16::i;:::-;10468:23;10480:4;10486;10468:11;:23::i;:::-;10524:9;10507:44;;10516:6;10507:44;;;10535:15;10507:44;;;;;;:::i;:::-;;;;;;;;10070:489;;;;;;9949:610;;;:::o;8082:127::-;8143:22;;8126:14;:39;;;;8186:15;;8176:7;:25;;;;8082:127::o;12819:257::-;12870:7;12879;12899:15;12917:7;;12899:25;;12935:15;4618:20;12935:25;;12985:20;4618;12985:7;;:11;;:20;;;;:::i;:::-;12975:7;:30;12971:61;;;13015:7;;4618:20;13007:25;;;;;;;;12971:61;13051:7;13060;13043:25;;;;;;12819:257;;;:::o;2945:223::-;3065:7;3097:1;3093;:5;3100:12;3085:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3124:9;3140:1;3136;:5;;;;:::i;:::-;3124:17;;3159:1;3152:8;;;2945:223;;;;;:::o;10990:620::-;11090:7;11112;11134;11156;11178;11200;11236:23;11261:12;11275:13;11305:45;11317:7;11326:14;;11342:7;;11305:11;:45::i;:::-;11235:115;;;;;;11361:19;11383:10;:8;:10::i;:::-;11361:32;;11405:15;11422:23;11447:12;11476:46;11488:7;11497:4;11503:5;11510:11;11476;:46::i;:::-;11404:118;;;;;;11541:7;11550:15;11567:4;11573:15;11590:4;11596:5;11533:69;;;;;;;;;;;;;;;;;;;10990:620;;;;;;;:::o;2175:136::-;2233:7;2260:43;2264:1;2267;2260:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2253:50;;2175:136;;;;:::o;1988:179::-;2046:7;2066:9;2082:1;2078;:5;;;;:::i;:::-;2066:17;;2107:1;2102;:6;;2094:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2158:1;2151:8;;;1988:179;;;;:::o;10567:223::-;10620:19;10642:10;:8;:10::i;:::-;10620:32;;10663:13;10679:22;10689:11;10679:5;:9;;:22;;;;:::i;:::-;10663:38;;10743:39;10776:5;10743:7;:28;10751:19;;;;;;;;;;;10743:28;;;;;;;;;;;;;;;;:32;;:39;;;;:::i;:::-;10712:7;:28;10720:19;;;;;;;;;;;10712:28;;;;;;;;;;;;;;;:70;;;;10609:181;;10567:223;:::o;10798:147::-;10876:17;10888:4;10876:7;;:11;;:17;;;;:::i;:::-;10866:7;:27;;;;10917:20;10932:4;10917:10;;:14;;:20;;;;:::i;:::-;10904:10;:33;;;;10798:147;;:::o;11618:479::-;11792:7;11814;11836;11871:12;11886:35;11917:3;11886:26;11898:13;11886:7;:11;;:26;;;;:::i;:::-;:30;;:35;;;;:::i;:::-;11871:50;;11932:13;11948:28;11972:3;11948:19;11960:6;11948:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;11932:44;;11987:23;12013:28;12035:5;12013:17;12025:4;12013:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;11987:54;;12060:15;12077:4;12083:5;12052:37;;;;;;;;;11618:479;;;;;;;:::o;12105:534::-;12299:7;12321;12343;12378:15;12396:24;12408:11;12396:7;:11;;:24;;;;:::i;:::-;12378:42;;12431:12;12446:21;12455:11;12446:4;:8;;:21;;;;:::i;:::-;12431:36;;12478:13;12494:22;12504:11;12494:5;:9;;:22;;;;:::i;:::-;12478:38;;12527:23;12553:28;12575:5;12553:17;12565:4;12553:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12527:54;;12600:7;12609:15;12626:4;12592:39;;;;;;;;;;12105:534;;;;;;;;:::o;2551:246::-;2609:7;2638:1;2633;:6;2629:47;;2663:1;2656:8;;;;2629:47;2686:9;2702:1;2698;:5;;;;:::i;:::-;2686:17;;2731:1;2726;2722;:5;;;;:::i;:::-;:10;2714:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2788:1;2781:8;;;2551:246;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:60::-;3474:3;3495:5;3488:12;;3446:60;;;:::o;3512:142::-;3562:9;3595:53;3613:34;3622:24;3640:5;3622:24;:::i;:::-;3613:34;:::i;:::-;3595:53;:::i;:::-;3582:66;;3512:142;;;:::o;3660:126::-;3710:9;3743:37;3774:5;3743:37;:::i;:::-;3730:50;;3660:126;;;:::o;3792:152::-;3868:9;3901:37;3932:5;3901:37;:::i;:::-;3888:50;;3792:152;;;:::o;3950:183::-;4063:63;4120:5;4063:63;:::i;:::-;4058:3;4051:76;3950:183;;:::o;4139:274::-;4258:4;4296:2;4285:9;4281:18;4273:26;;4309:97;4403:1;4392:9;4388:17;4379:6;4309:97;:::i;:::-;4139:274;;;;:::o;4419:118::-;4506:24;4524:5;4506:24;:::i;:::-;4501:3;4494:37;4419:118;;:::o;4543:222::-;4636:4;4674:2;4663:9;4659:18;4651:26;;4687:71;4755:1;4744:9;4740:17;4731:6;4687:71;:::i;:::-;4543:222;;;;:::o;4771:619::-;4848:6;4856;4864;4913:2;4901:9;4892:7;4888:23;4884:32;4881:119;;;4919:79;;:::i;:::-;4881:119;5039:1;5064:53;5109:7;5100:6;5089:9;5085:22;5064:53;:::i;:::-;5054:63;;5010:117;5166:2;5192:53;5237:7;5228:6;5217:9;5213:22;5192:53;:::i;:::-;5182:63;;5137:118;5294:2;5320:53;5365:7;5356:6;5345:9;5341:22;5320:53;:::i;:::-;5310:63;;5265:118;4771:619;;;;;:::o;5396:86::-;5431:7;5471:4;5464:5;5460:16;5449:27;;5396:86;;;:::o;5488:112::-;5571:22;5587:5;5571:22;:::i;:::-;5566:3;5559:35;5488:112;;:::o;5606:214::-;5695:4;5733:2;5722:9;5718:18;5710:26;;5746:67;5810:1;5799:9;5795:17;5786:6;5746:67;:::i;:::-;5606:214;;;;:::o;5826:118::-;5913:24;5931:5;5913:24;:::i;:::-;5908:3;5901:37;5826:118;;:::o;5950:222::-;6043:4;6081:2;6070:9;6066:18;6058:26;;6094:71;6162:1;6151:9;6147:17;6138:6;6094:71;:::i;:::-;5950:222;;;;:::o;6178:329::-;6237:6;6286:2;6274:9;6265:7;6261:23;6257:32;6254:119;;;6292:79;;:::i;:::-;6254:119;6412:1;6437:53;6482:7;6473:6;6462:9;6458:22;6437:53;:::i;:::-;6427:63;;6383:117;6178:329;;;;:::o;6513:765::-;6599:6;6607;6615;6623;6672:3;6660:9;6651:7;6647:23;6643:33;6640:120;;;6679:79;;:::i;:::-;6640:120;6799:1;6824:53;6869:7;6860:6;6849:9;6845:22;6824:53;:::i;:::-;6814:63;;6770:117;6926:2;6952:53;6997:7;6988:6;6977:9;6973:22;6952:53;:::i;:::-;6942:63;;6897:118;7054:2;7080:53;7125:7;7116:6;7105:9;7101:22;7080:53;:::i;:::-;7070:63;;7025:118;7182:2;7208:53;7253:7;7244:6;7233:9;7229:22;7208:53;:::i;:::-;7198:63;;7153:118;6513:765;;;;;;;:::o;7284:117::-;7393:1;7390;7383:12;7407:117;7516:1;7513;7506:12;7530:117;7639:1;7636;7629:12;7670:568;7743:8;7753:6;7803:3;7796:4;7788:6;7784:17;7780:27;7770:122;;7811:79;;:::i;:::-;7770:122;7924:6;7911:20;7901:30;;7954:18;7946:6;7943:30;7940:117;;;7976:79;;:::i;:::-;7940:117;8090:4;8082:6;8078:17;8066:29;;8144:3;8136:4;8128:6;8124:17;8114:8;8110:32;8107:41;8104:128;;;8151:79;;:::i;:::-;8104:128;7670:568;;;;;:::o;8244:116::-;8314:21;8329:5;8314:21;:::i;:::-;8307:5;8304:32;8294:60;;8350:1;8347;8340:12;8294:60;8244:116;:::o;8366:133::-;8409:5;8447:6;8434:20;8425:29;;8463:30;8487:5;8463:30;:::i;:::-;8366:133;;;;:::o;8505:698::-;8597:6;8605;8613;8662:2;8650:9;8641:7;8637:23;8633:32;8630:119;;;8668:79;;:::i;:::-;8630:119;8816:1;8805:9;8801:17;8788:31;8846:18;8838:6;8835:30;8832:117;;;8868:79;;:::i;:::-;8832:117;8981:80;9053:7;9044:6;9033:9;9029:22;8981:80;:::i;:::-;8963:98;;;;8759:312;9110:2;9136:50;9178:7;9169:6;9158:9;9154:22;9136:50;:::i;:::-;9126:60;;9081:115;8505:698;;;;;:::o;9209:474::-;9277:6;9285;9334:2;9322:9;9313:7;9309:23;9305:32;9302:119;;;9340:79;;:::i;:::-;9302:119;9460:1;9485:53;9530:7;9521:6;9510:9;9506:22;9485:53;:::i;:::-;9475:63;;9431:117;9587:2;9613:53;9658:7;9649:6;9638:9;9634:22;9613:53;:::i;:::-;9603:63;;9558:118;9209:474;;;;;:::o;9689:182::-;9829:34;9825:1;9817:6;9813:14;9806:58;9689:182;:::o;9877:366::-;10019:3;10040:67;10104:2;10099:3;10040:67;:::i;:::-;10033:74;;10116:93;10205:3;10116:93;:::i;:::-;10234:2;10229:3;10225:12;10218:19;;9877:366;;;:::o;10249:419::-;10415:4;10453:2;10442:9;10438:18;10430:26;;10502:9;10496:4;10492:20;10488:1;10477:9;10473:17;10466:47;10530:131;10656:4;10530:131;:::i;:::-;10522:139;;10249:419;;;:::o;10674:180::-;10722:77;10719:1;10712:88;10819:4;10816:1;10809:15;10843:4;10840:1;10833:15;10860:180;10908:77;10905:1;10898:88;11005:4;11002:1;10995:15;11029:4;11026:1;11019:15;11046:233;11085:3;11108:24;11126:5;11108:24;:::i;:::-;11099:33;;11154:66;11147:5;11144:77;11141:103;;11224:18;;:::i;:::-;11141:103;11271:1;11264:5;11260:13;11253:20;;11046:233;;;:::o;11285:225::-;11425:34;11421:1;11413:6;11409:14;11402:58;11494:8;11489:2;11481:6;11477:15;11470:33;11285:225;:::o;11516:366::-;11658:3;11679:67;11743:2;11738:3;11679:67;:::i;:::-;11672:74;;11755:93;11844:3;11755:93;:::i;:::-;11873:2;11868:3;11864:12;11857:19;;11516:366;;;:::o;11888:419::-;12054:4;12092:2;12081:9;12077:18;12069:26;;12141:9;12135:4;12131:20;12127:1;12116:9;12112:17;12105:47;12169:131;12295:4;12169:131;:::i;:::-;12161:139;;11888:419;;;:::o;12313:223::-;12453:34;12449:1;12441:6;12437:14;12430:58;12522:6;12517:2;12509:6;12505:15;12498:31;12313:223;:::o;12542:366::-;12684:3;12705:67;12769:2;12764:3;12705:67;:::i;:::-;12698:74;;12781:93;12870:3;12781:93;:::i;:::-;12899:2;12894:3;12890:12;12883:19;;12542:366;;;:::o;12914:419::-;13080:4;13118:2;13107:9;13103:18;13095:26;;13167:9;13161:4;13157:20;13153:1;13142:9;13138:17;13131:47;13195:131;13321:4;13195:131;:::i;:::-;13187:139;;12914:419;;;:::o;13339:221::-;13479:34;13475:1;13467:6;13463:14;13456:58;13548:4;13543:2;13535:6;13531:15;13524:29;13339:221;:::o;13566:366::-;13708:3;13729:67;13793:2;13788:3;13729:67;:::i;:::-;13722:74;;13805:93;13894:3;13805:93;:::i;:::-;13923:2;13918:3;13914:12;13907:19;;13566:366;;;:::o;13938:419::-;14104:4;14142:2;14131:9;14127:18;14119:26;;14191:9;14185:4;14181:20;14177:1;14166:9;14162:17;14155:47;14219:131;14345:4;14219:131;:::i;:::-;14211:139;;13938:419;;;:::o;14363:224::-;14503:34;14499:1;14491:6;14487:14;14480:58;14572:7;14567:2;14559:6;14555:15;14548:32;14363:224;:::o;14593:366::-;14735:3;14756:67;14820:2;14815:3;14756:67;:::i;:::-;14749:74;;14832:93;14921:3;14832:93;:::i;:::-;14950:2;14945:3;14941:12;14934:19;;14593:366;;;:::o;14965:419::-;15131:4;15169:2;15158:9;15154:18;15146:26;;15218:9;15212:4;15208:20;15204:1;15193:9;15189:17;15182:47;15246:131;15372:4;15246:131;:::i;:::-;15238:139;;14965:419;;;:::o;15390:222::-;15530:34;15526:1;15518:6;15514:14;15507:58;15599:5;15594:2;15586:6;15582:15;15575:30;15390:222;:::o;15618:366::-;15760:3;15781:67;15845:2;15840:3;15781:67;:::i;:::-;15774:74;;15857:93;15946:3;15857:93;:::i;:::-;15975:2;15970:3;15966:12;15959:19;;15618:366;;;:::o;15990:419::-;16156:4;16194:2;16183:9;16179:18;16171:26;;16243:9;16237:4;16233:20;16229:1;16218:9;16214:17;16207:47;16271:131;16397:4;16271:131;:::i;:::-;16263:139;;15990:419;;;:::o;16415:228::-;16555:34;16551:1;16543:6;16539:14;16532:58;16624:11;16619:2;16611:6;16607:15;16600:36;16415:228;:::o;16649:366::-;16791:3;16812:67;16876:2;16871:3;16812:67;:::i;:::-;16805:74;;16888:93;16977:3;16888:93;:::i;:::-;17006:2;17001:3;16997:12;16990:19;;16649:366;;;:::o;17021:419::-;17187:4;17225:2;17214:9;17210:18;17202:26;;17274:9;17268:4;17264:20;17260:1;17249:9;17245:17;17238:47;17302:131;17428:4;17302:131;:::i;:::-;17294:139;;17021:419;;;:::o;17446:194::-;17486:4;17506:20;17524:1;17506:20;:::i;:::-;17501:25;;17540:20;17558:1;17540:20;:::i;:::-;17535:25;;17584:1;17581;17577:9;17569:17;;17608:1;17602:4;17599:11;17596:37;;;17613:18;;:::i;:::-;17596:37;17446:194;;;;:::o;17646:229::-;17786:34;17782:1;17774:6;17770:14;17763:58;17855:12;17850:2;17842:6;17838:15;17831:37;17646:229;:::o;17881:366::-;18023:3;18044:67;18108:2;18103:3;18044:67;:::i;:::-;18037:74;;18120:93;18209:3;18120:93;:::i;:::-;18238:2;18233:3;18229:12;18222:19;;17881:366;;;:::o;18253:419::-;18419:4;18457:2;18446:9;18442:18;18434:26;;18506:9;18500:4;18496:20;18492:1;18481:9;18477:17;18470:47;18534:131;18660:4;18534:131;:::i;:::-;18526:139;;18253:419;;;:::o;18678:180::-;18726:77;18723:1;18716:88;18823:4;18820:1;18813:15;18847:4;18844:1;18837:15;18864:185;18904:1;18921:20;18939:1;18921:20;:::i;:::-;18916:25;;18955:20;18973:1;18955:20;:::i;:::-;18950:25;;18994:1;18984:35;;18999:18;;:::i;:::-;18984:35;19041:1;19038;19034:9;19029:14;;18864:185;;;;:::o;19055:191::-;19095:3;19114:20;19132:1;19114:20;:::i;:::-;19109:25;;19148:20;19166:1;19148:20;:::i;:::-;19143:25;;19191:1;19188;19184:9;19177:16;;19212:3;19209:1;19206:10;19203:36;;;19219:18;;:::i;:::-;19203:36;19055:191;;;;:::o;19252:177::-;19392:29;19388:1;19380:6;19376:14;19369:53;19252:177;:::o;19435:366::-;19577:3;19598:67;19662:2;19657:3;19598:67;:::i;:::-;19591:74;;19674:93;19763:3;19674:93;:::i;:::-;19792:2;19787:3;19783:12;19776:19;;19435:366;;;:::o;19807:419::-;19973:4;20011:2;20000:9;19996:18;19988:26;;20060:9;20054:4;20050:20;20046:1;20035:9;20031:17;20024:47;20088:131;20214:4;20088:131;:::i;:::-;20080:139;;19807:419;;;:::o;20232:348::-;20272:7;20295:20;20313:1;20295:20;:::i;:::-;20290:25;;20329:20;20347:1;20329:20;:::i;:::-;20324:25;;20517:1;20449:66;20445:74;20442:1;20439:81;20434:1;20427:9;20420:17;20416:105;20413:131;;;20524:18;;:::i;:::-;20413:131;20572:1;20569;20565:9;20554:20;;20232:348;;;;:::o;20586:220::-;20726:34;20722:1;20714:6;20710:14;20703:58;20795:3;20790:2;20782:6;20778:15;20771:28;20586:220;:::o;20812:366::-;20954:3;20975:67;21039:2;21034:3;20975:67;:::i;:::-;20968:74;;21051:93;21140:3;21051:93;:::i;:::-;21169:2;21164:3;21160:12;21153:19;;20812:366;;;:::o;21184:419::-;21350:4;21388:2;21377:9;21373:18;21365:26;;21437:9;21431:4;21427:20;21423:1;21412:9;21408:17;21401:47;21465:131;21591:4;21465:131;:::i;:::-;21457:139;;21184:419;;;:::o

Swarm Source

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