ETH Price: $3,277.34 (-0.68%)

Token

DogeShibaCumRocketInuAICat (Poo)
 

Overview

Max Total Supply

10,000,000,000 Poo

Holders

63

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
5,983,902.720796426 Poo

Value
$0.00
0x85161dC4227E330A061cb329a1B3010Ab16700E7
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:
Poo

Compiler Version
v0.6.8+commit.0bbfe453

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-02-08
*/

/*
Shitcoin guys, completely useless and most likely wont go up!
3% reflection for the ones that really need help.
*/

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.6.8;

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

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

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

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

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

library Address {

    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        assembly { codehash := extcodehash(account) }
        return (codehash != accountHash && codehash != 0x0);
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }


    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");

        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {

                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

contract Ownable is Context {
    address private _owner;

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

    constructor () internal {
        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;
    }
}



contract Poo is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;

    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;

    mapping (address => bool) private _isExcluded;
    address[] private _excluded;
   
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 10000 * 10**6 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;

    string private _name = 'DogeShibaCumRocketInuAICat';
    string private _symbol = 'Poo';
    uint8 private _decimals = 9;

    constructor () public {
        _rOwned[_msgSender()] = _rTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    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) {
        if (_isExcluded[account]) return _tOwned[account];
        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 increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function isExcluded(address account) public view returns (bool) {
        return _isExcluded[account];
    }

    function totalFees() public view returns (uint256) {
        return _tFeeTotal;
    }

    function reflect(uint256 tAmount) public {
        address sender = _msgSender();
        require(!_isExcluded[sender], "Excluded addresses cannot call this function");
        (uint256 rAmount,,,,) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rTotal = _rTotal.sub(rAmount);
        _tFeeTotal = _tFeeTotal.add(tAmount);
    }

    function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) {
        require(tAmount <= _tTotal, "Amount must be less than supply");
        if (!deductTransferFee) {
            (uint256 rAmount,,,,) = _getValues(tAmount);
            return rAmount;
        } else {
            (,uint256 rTransferAmount,,,) = _getValues(tAmount);
            return rTransferAmount;
        }
    }

    function tokenFromReflection(uint256 rAmount) public view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }


    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 sender, address recipient, uint256 amount) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        if (_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferFromExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && _isExcluded[recipient]) {
            _transferToExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferStandard(sender, recipient, amount);
        } else if (_isExcluded[sender] && _isExcluded[recipient]) {
            _transferBothExcluded(sender, recipient, amount);
        } else {
            _transferStandard(sender, recipient, amount);
        }
    }

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

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

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

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

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

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

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

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee);
        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;      
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);
        }
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
}

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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"}]

6080604052678ac7230489e80000600019816200001857fe5b06600019036006556040518060400160405280601a81526020017f446f6765536869626143756d526f636b6574496e754149436174000000000000815250600890805190602001906200006d92919062000276565b506040518060400160405280600381526020017f506f6f000000000000000000000000000000000000000000000000000000000081525060099080519060200190620000bb92919062000276565b506009600a60006101000a81548160ff021916908360ff160217905550348015620000e557600080fd5b506000620000f86200026e60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060065460016000620001ad6200026e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001fb6200026e60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef678ac7230489e800006040518082815260200191505060405180910390a362000325565b600033905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002b957805160ff1916838001178555620002ea565b82800160010185558215620002ea579182015b82811115620002e9578251825591602001919060010190620002cc565b5b509050620002f99190620002fd565b5090565b6200032291905b808211156200031e57600081600090555060010162000304565b5090565b90565b612c4780620003356000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80634549b039116100ad578063a457c2d711610071578063a457c2d714610548578063a9059cbb146105ae578063cba0e99614610614578063dd62ed3e14610670578063f2fde38b146106e857610121565b80634549b039146103cb57806370a0823114610419578063715018a6146104715780638da5cb5b1461047b57806395d89b41146104c557610121565b806318160ddd116100f457806318160ddd1461025b57806323b872dd146102795780632d838119146102ff578063313ce56714610341578063395093511461036557610121565b8063053ab1821461012657806306fdde0314610154578063095ea7b3146101d757806313114a9d1461023d575b600080fd5b6101526004803603602081101561013c57600080fd5b810190808035906020019092919050505061072c565b005b61015c6108bc565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561019c578082015181840152602081019050610181565b50505050905090810190601f1680156101c95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610223600480360360408110156101ed57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061095e565b604051808215151515815260200191505060405180910390f35b61024561097c565b6040518082815260200191505060405180910390f35b610263610986565b6040518082815260200191505060405180910390f35b6102e56004803603606081101561028f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610996565b604051808215151515815260200191505060405180910390f35b61032b6004803603602081101561031557600080fd5b8101908080359060200190929190505050610a6f565b6040518082815260200191505060405180910390f35b610349610af3565b604051808260ff1660ff16815260200191505060405180910390f35b6103b16004803603604081101561037b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b0a565b604051808215151515815260200191505060405180910390f35b610403600480360360408110156103e157600080fd5b8101908080359060200190929190803515159060200190929190505050610bbd565b6040518082815260200191505060405180910390f35b61045b6004803603602081101561042f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c78565b6040518082815260200191505060405180910390f35b610479610d63565b005b610483610eeb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104cd610f14565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561050d5780820151818401526020810190506104f2565b50505050905090810190601f16801561053a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105946004803603604081101561055e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fb6565b604051808215151515815260200191505060405180910390f35b6105fa600480360360408110156105c457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611083565b604051808215151515815260200191505060405180910390f35b6106566004803603602081101561062a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110a1565b604051808215151515815260200191505060405180910390f35b6106d26004803603604081101561068657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f7565b6040518082815260200191505060405180910390f35b61072a600480360360208110156106fe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061117e565b005b600061073661138b565b9050600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156107db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180612bc1602c913960400191505060405180910390fd5b60006107e683611393565b50505050905061083e81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610896816006546113eb90919063ffffffff16565b6006819055506108b18360075461143590919063ffffffff16565b600781905550505050565b606060088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109545780601f1061092957610100808354040283529160200191610954565b820191906000526020600020905b81548152906001019060200180831161093757829003601f168201915b5050505050905090565b600061097261096b61138b565b84846114bd565b6001905092915050565b6000600754905090565b6000678ac7230489e80000905090565b60006109a38484846116b4565b610a64846109af61138b565b610a5f85604051806060016040528060288152602001612b2760289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a1561138b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0d9092919063ffffffff16565b6114bd565b600190509392505050565b6000600654821115610acc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180612a94602a913960400191505060405180910390fd5b6000610ad6611bcd565b9050610aeb8184611bf890919063ffffffff16565b915050919050565b6000600a60009054906101000a900460ff16905090565b6000610bb3610b1761138b565b84610bae8560036000610b2861138b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b6114bd565b6001905092915050565b6000678ac7230489e80000831115610c3d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f416d6f756e74206d757374206265206c657373207468616e20737570706c790081525060200191505060405180910390fd5b81610c5c576000610c4d84611393565b50505050905080915050610c72565b6000610c6784611393565b505050915050809150505b92915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610d1357600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610d5e565b610d5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6f565b90505b919050565b610d6b61138b565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e2c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060098054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fac5780601f10610f8157610100808354040283529160200191610fac565b820191906000526020600020905b815481529060010190602001808311610f8f57829003601f168201915b5050505050905090565b6000611079610fc361138b565b8461107485604051806060016040528060258152602001612bed6025913960036000610fed61138b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0d9092919063ffffffff16565b6114bd565b6001905092915050565b600061109761109061138b565b84846116b4565b6001905092915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61118661138b565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611247576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156112cd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612abe6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b60008060008060008060006113a788611c42565b9150915060006113b5611bcd565b905060008060006113c78c8686611c94565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b600061142d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b0d565b905092915050565b6000808284019050838110156114b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611543576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612b9d6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115c9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612ae46022913960400191505060405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561173a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612b786025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117c0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612a716023913960400191505060405180910390fd5b60008111611819576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526029815260200180612b4f6029913960400191505060405180910390fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156118bc5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156118d1576118cc838383611cf2565b611b08565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156119745750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561198957611984838383611f45565b611b07565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611a2d5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a4257611a3d838383612198565b611b06565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015611ae45750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611af957611af4838383612356565b611b05565b611b04838383612198565b5b5b5b5b505050565b6000838311158290611bba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611b7f578082015181840152602081019050611b64565b50505050905090810190601f168015611bac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000806000611bda61263e565b91509150611bf18183611bf890919063ffffffff16565b9250505090565b6000611c3a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506128ea565b905092915050565b6000806000611c6e6003611c60606487611bf890919063ffffffff16565b6129b090919063ffffffff16565b90506000611c8582866113eb90919063ffffffff16565b90508082935093505050915091565b600080600080611cad85886129b090919063ffffffff16565b90506000611cc486886129b090919063ffffffff16565b90506000611cdb82846113eb90919063ffffffff16565b905082818395509550955050505093509350939050565b6000806000806000611d0386611393565b94509450945094509450611d5f86600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611df485600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e8984600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ed68382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b6000806000806000611f5686611393565b94509450945094509450611fb285600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061204782600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120dc84600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506121298382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b60008060008060006121a986611393565b9450945094509450945061220585600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061229a84600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122e78382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b600080600080600061236786611393565b945094509450945094506123c386600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061245885600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124ed82600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061258284600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125cf8382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b600080600060065490506000678ac7230489e80000905060008090505b6005805490508110156128a15782600160006005848154811061267a57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061276157508160026000600584815481106126f957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561277e57600654678ac7230489e80000945094505050506128e6565b612807600160006005848154811061279257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846113eb90919063ffffffff16565b9250612892600260006005848154811061281d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836113eb90919063ffffffff16565b9150808060010191505061265b565b506128bf678ac7230489e80000600654611bf890919063ffffffff16565b8210156128dd57600654678ac7230489e800009350935050506128e6565b81819350935050505b9091565b60008083118290612996576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561295b578082015181840152602081019050612940565b50505050905090810190601f1680156129885780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816129a257fe5b049050809150509392505050565b6000808314156129c35760009050612a30565b60008284029050828482816129d457fe5b0414612a2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612b066021913960400191505060405180910390fd5b809150505b92915050565b612a4b826006546113eb90919063ffffffff16565b600681905550612a668160075461143590919063ffffffff16565b600781905550505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734578636c75646564206164647265737365732063616e6e6f742063616c6c20746869732066756e6374696f6e45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122062cf09ad3543a2fc0d527494402106f28e0210d4276d7b337c697887dc9fc32d64736f6c63430006080033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c80634549b039116100ad578063a457c2d711610071578063a457c2d714610548578063a9059cbb146105ae578063cba0e99614610614578063dd62ed3e14610670578063f2fde38b146106e857610121565b80634549b039146103cb57806370a0823114610419578063715018a6146104715780638da5cb5b1461047b57806395d89b41146104c557610121565b806318160ddd116100f457806318160ddd1461025b57806323b872dd146102795780632d838119146102ff578063313ce56714610341578063395093511461036557610121565b8063053ab1821461012657806306fdde0314610154578063095ea7b3146101d757806313114a9d1461023d575b600080fd5b6101526004803603602081101561013c57600080fd5b810190808035906020019092919050505061072c565b005b61015c6108bc565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561019c578082015181840152602081019050610181565b50505050905090810190601f1680156101c95780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610223600480360360408110156101ed57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061095e565b604051808215151515815260200191505060405180910390f35b61024561097c565b6040518082815260200191505060405180910390f35b610263610986565b6040518082815260200191505060405180910390f35b6102e56004803603606081101561028f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610996565b604051808215151515815260200191505060405180910390f35b61032b6004803603602081101561031557600080fd5b8101908080359060200190929190505050610a6f565b6040518082815260200191505060405180910390f35b610349610af3565b604051808260ff1660ff16815260200191505060405180910390f35b6103b16004803603604081101561037b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b0a565b604051808215151515815260200191505060405180910390f35b610403600480360360408110156103e157600080fd5b8101908080359060200190929190803515159060200190929190505050610bbd565b6040518082815260200191505060405180910390f35b61045b6004803603602081101561042f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c78565b6040518082815260200191505060405180910390f35b610479610d63565b005b610483610eeb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104cd610f14565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561050d5780820151818401526020810190506104f2565b50505050905090810190601f16801561053a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105946004803603604081101561055e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fb6565b604051808215151515815260200191505060405180910390f35b6105fa600480360360408110156105c457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611083565b604051808215151515815260200191505060405180910390f35b6106566004803603602081101561062a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110a1565b604051808215151515815260200191505060405180910390f35b6106d26004803603604081101561068657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110f7565b6040518082815260200191505060405180910390f35b61072a600480360360208110156106fe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061117e565b005b600061073661138b565b9050600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156107db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180612bc1602c913960400191505060405180910390fd5b60006107e683611393565b50505050905061083e81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610896816006546113eb90919063ffffffff16565b6006819055506108b18360075461143590919063ffffffff16565b600781905550505050565b606060088054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109545780601f1061092957610100808354040283529160200191610954565b820191906000526020600020905b81548152906001019060200180831161093757829003601f168201915b5050505050905090565b600061097261096b61138b565b84846114bd565b6001905092915050565b6000600754905090565b6000678ac7230489e80000905090565b60006109a38484846116b4565b610a64846109af61138b565b610a5f85604051806060016040528060288152602001612b2760289139600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a1561138b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0d9092919063ffffffff16565b6114bd565b600190509392505050565b6000600654821115610acc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180612a94602a913960400191505060405180910390fd5b6000610ad6611bcd565b9050610aeb8184611bf890919063ffffffff16565b915050919050565b6000600a60009054906101000a900460ff16905090565b6000610bb3610b1761138b565b84610bae8560036000610b2861138b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b6114bd565b6001905092915050565b6000678ac7230489e80000831115610c3d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f416d6f756e74206d757374206265206c657373207468616e20737570706c790081525060200191505060405180910390fd5b81610c5c576000610c4d84611393565b50505050905080915050610c72565b6000610c6784611393565b505050915050809150505b92915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610d1357600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610d5e565b610d5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610a6f565b90505b919050565b610d6b61138b565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e2c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060098054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fac5780601f10610f8157610100808354040283529160200191610fac565b820191906000526020600020905b815481529060010190602001808311610f8f57829003601f168201915b5050505050905090565b6000611079610fc361138b565b8461107485604051806060016040528060258152602001612bed6025913960036000610fed61138b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b0d9092919063ffffffff16565b6114bd565b6001905092915050565b600061109761109061138b565b84846116b4565b6001905092915050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61118661138b565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611247576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156112cd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612abe6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b60008060008060008060006113a788611c42565b9150915060006113b5611bcd565b905060008060006113c78c8686611c94565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b600061142d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b0d565b905092915050565b6000808284019050838110156114b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611543576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612b9d6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115c9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612ae46022913960400191505060405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561173a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612b786025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117c0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612a716023913960400191505060405180910390fd5b60008111611819576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526029815260200180612b4f6029913960400191505060405180910390fd5b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156118bc5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156118d1576118cc838383611cf2565b611b08565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156119745750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561198957611984838383611f45565b611b07565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015611a2d5750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a4257611a3d838383612198565b611b06565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015611ae45750600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611af957611af4838383612356565b611b05565b611b04838383612198565b5b5b5b5b505050565b6000838311158290611bba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611b7f578082015181840152602081019050611b64565b50505050905090810190601f168015611bac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000806000611bda61263e565b91509150611bf18183611bf890919063ffffffff16565b9250505090565b6000611c3a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506128ea565b905092915050565b6000806000611c6e6003611c60606487611bf890919063ffffffff16565b6129b090919063ffffffff16565b90506000611c8582866113eb90919063ffffffff16565b90508082935093505050915091565b600080600080611cad85886129b090919063ffffffff16565b90506000611cc486886129b090919063ffffffff16565b90506000611cdb82846113eb90919063ffffffff16565b905082818395509550955050505093509350939050565b6000806000806000611d0386611393565b94509450945094509450611d5f86600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611df485600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e8984600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ed68382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b6000806000806000611f5686611393565b94509450945094509450611fb285600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061204782600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120dc84600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506121298382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b60008060008060006121a986611393565b9450945094509450945061220585600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061229a84600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122e78382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b600080600080600061236786611393565b945094509450945094506123c386600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061245885600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113eb90919063ffffffff16565b600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124ed82600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061258284600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461143590919063ffffffff16565b600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125cf8382612a36565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b600080600060065490506000678ac7230489e80000905060008090505b6005805490508110156128a15782600160006005848154811061267a57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061276157508160026000600584815481106126f957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561277e57600654678ac7230489e80000945094505050506128e6565b612807600160006005848154811061279257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846113eb90919063ffffffff16565b9250612892600260006005848154811061281d57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836113eb90919063ffffffff16565b9150808060010191505061265b565b506128bf678ac7230489e80000600654611bf890919063ffffffff16565b8210156128dd57600654678ac7230489e800009350935050506128e6565b81819350935050505b9091565b60008083118290612996576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561295b578082015181840152602081019050612940565b50505050905090810190601f1680156129885780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816129a257fe5b049050809150509392505050565b6000808314156129c35760009050612a30565b60008284029050828482816129d457fe5b0414612a2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612b066021913960400191505060405180910390fd5b809150505b92915050565b612a4b826006546113eb90919063ffffffff16565b600681905550612a668160075461143590919063ffffffff16565b600781905550505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734578636c75646564206164647265737365732063616e6e6f742063616c6c20746869732066756e6374696f6e45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122062cf09ad3543a2fc0d527494402106f28e0210d4276d7b337c697887dc9fc32d64736f6c63430006080033

Deployed Bytecode Sourcemap

5898:9343:0:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;5898:9343:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;8875:376:0;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8875:376:0;;;;;;;;;;;;;;;;;:::i;:::-;;6757:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6757:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7669:161;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7669:161:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8780:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7034:95;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7838:313;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7838:313:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9701:253;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9701:253:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6943:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8159:218;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8159:218:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9259:434;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9259:434:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7137:198;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7137:198:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5487:148;;;:::i;:::-;;5273:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6848:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6848:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8385:269;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8385:269:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7343:167;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7343:167:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8662:110;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;8662:110:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7518:143;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;7518:143:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5643:244;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5643:244:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8875:376;8927:14;8944:12;:10;:12::i;:::-;8927:29;;8976:11;:19;8988:6;8976:19;;;;;;;;;;;;;;;;;;;;;;;;;8975:20;8967:77;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9056:15;9079:19;9090:7;9079:10;:19::i;:::-;9055:43;;;;;;9127:28;9147:7;9127;:15;9135:6;9127:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9109:7;:15;9117:6;9109:15;;;;;;;;;;;;;;;:46;;;;9176:20;9188:7;9176;;:11;;:20;;;;:::i;:::-;9166:7;:30;;;;9220:23;9235:7;9220:10;;:14;;:23;;;;:::i;:::-;9207:10;:36;;;;8875:376;;;:::o;6757:83::-;6794:13;6827:5;6820:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6757:83;:::o;7669:161::-;7744:4;7761:39;7770:12;:10;:12::i;:::-;7784:7;7793:6;7761:8;:39::i;:::-;7818:4;7811:11;;7669:161;;;;:::o;8780:87::-;8822:7;8849:10;;8842:17;;8780:87;:::o;7034:95::-;7087:7;6368:21;7107:14;;7034:95;:::o;7838:313::-;7936:4;7953:36;7963:6;7971:9;7982:6;7953:9;:36::i;:::-;8000:121;8009:6;8017:12;:10;:12::i;:::-;8031:89;8069:6;8031:89;;;;;;;;;;;;;;;;;:11;:19;8043:6;8031:19;;;;;;;;;;;;;;;:33;8051:12;:10;:12::i;:::-;8031:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;8000:8;:121::i;:::-;8139:4;8132:11;;7838:313;;;;;:::o;9701:253::-;9767:7;9806;;9795;:18;;9787:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9871:19;9894:10;:8;:10::i;:::-;9871:33;;9922:24;9934:11;9922:7;:11;;:24;;;;:::i;:::-;9915:31;;;9701:253;;;:::o;6943:83::-;6984:5;7009:9;;;;;;;;;;;7002:16;;6943:83;:::o;8159:218::-;8247:4;8264:83;8273:12;:10;:12::i;:::-;8287:7;8296:50;8335:10;8296:11;:25;8308:12;:10;:12::i;:::-;8296:25;;;;;;;;;;;;;;;:34;8322:7;8296:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;8264:8;:83::i;:::-;8365:4;8358:11;;8159:218;;;;:::o;9259:434::-;9349:7;6368:21;9377:7;:18;;9369:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9447:17;9442:244;;9482:15;9505:19;9516:7;9505:10;:19::i;:::-;9481:43;;;;;;9546:7;9539:14;;;;;9442:244;9588:23;9618:19;9629:7;9618:10;:19::i;:::-;9586:51;;;;;;9659:15;9652:22;;;9259:434;;;;;:::o;7137:198::-;7203:7;7227:11;:20;7239:7;7227:20;;;;;;;;;;;;;;;;;;;;;;;;;7223:49;;;7256:7;:16;7264:7;7256:16;;;;;;;;;;;;;;;;7249:23;;;;7223:49;7290:37;7310:7;:16;7318:7;7310:16;;;;;;;;;;;;;;;;7290:19;:37::i;:::-;7283:44;;7137:198;;;;:::o;5487:148::-;5410:12;:10;:12::i;:::-;5400:22;;:6;;;;;;;;;;;:22;;;5392:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5594:1:::1;5557:40;;5578:6;::::0;::::1;;;;;;;;;5557:40;;;;;;;;;;;;5625:1;5608:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;5487:148::o:0;5273:79::-;5311:7;5338:6;;;;;;;;;;;5331:13;;5273:79;:::o;6848:87::-;6887:13;6920:7;6913:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6848:87;:::o;8385:269::-;8478:4;8495:129;8504:12;:10;:12::i;:::-;8518:7;8527:96;8566:15;8527:96;;;;;;;;;;;;;;;;;:11;:25;8539:12;:10;:12::i;:::-;8527:25;;;;;;;;;;;;;;;:34;8553:7;8527:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;8495:8;:129::i;:::-;8642:4;8635:11;;8385:269;;;;:::o;7343:167::-;7421:4;7438:42;7448:12;:10;:12::i;:::-;7462:9;7473:6;7438:9;:42::i;:::-;7498:4;7491:11;;7343:167;;;;:::o;8662:110::-;8720:4;8744:11;:20;8756:7;8744:20;;;;;;;;;;;;;;;;;;;;;;;;;8737:27;;8662:110;;;:::o;7518:143::-;7599:7;7626:11;:18;7638:5;7626:18;;;;;;;;;;;;;;;:27;7645:7;7626:27;;;;;;;;;;;;;;;;7619:34;;7518:143;;;;:::o;5643:244::-;5410:12;:10;:12::i;:::-;5400:22;;:6;;;;;;;;;;;:22;;;5392:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5752:1:::1;5732:22;;:8;:22;;;;5724:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5842:8;5813:38;;5834:6;::::0;::::1;;;;;;;;;5813:38;;;;;;;;;;;;5871:8;5862:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;5643:244:::0;:::o;226:106::-;279:15;314:10;307:17;;226:106;:::o;13507:411::-;13566:7;13575;13584;13593;13602;13623:23;13648:12;13664:20;13676:7;13664:11;:20::i;:::-;13622:62;;;;13695:19;13718:10;:8;:10::i;:::-;13695:33;;13740:15;13757:23;13782:12;13798:39;13810:7;13819:4;13825:11;13798;:39::i;:::-;13739:98;;;;;;13856:7;13865:15;13882:4;13888:15;13905:4;13848:62;;;;;;;;;;;;;;;;13507:411;;;;;;;:::o;1369:136::-;1427:7;1454:43;1458:1;1461;1454:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1447:50;;1369:136;;;;:::o;1180:181::-;1238:7;1258:9;1274:1;1270;:5;1258:17;;1299:1;1294;:6;;1286:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1352:1;1345:8;;;1180:181;;;;:::o;9964:337::-;10074:1;10057:19;;:5;:19;;;;10049:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10155:1;10136:21;;:7;:21;;;;10128:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10239:6;10209:11;:18;10221:5;10209:18;;;;;;;;;;;;;;;:27;10228:7;10209:27;;;;;;;;;;;;;;;:36;;;;10277:7;10261:32;;10270:5;10261:32;;;10286:6;10261:32;;;;;;;;;;;;;;;;;;9964:337;;;:::o;10309:931::-;10424:1;10406:20;;:6;:20;;;;10398:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10508:1;10487:23;;:9;:23;;;;10479:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10578:1;10569:6;:10;10561:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10640:11;:19;10652:6;10640:19;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;10664:11;:22;10676:9;10664:22;;;;;;;;;;;;;;;;;;;;;;;;;10663:23;10640:46;10636:597;;;10703:48;10725:6;10733:9;10744:6;10703:21;:48::i;:::-;10636:597;;;10774:11;:19;10786:6;10774:19;;;;;;;;;;;;;;;;;;;;;;;;;10773:20;:46;;;;;10797:11;:22;10809:9;10797:22;;;;;;;;;;;;;;;;;;;;;;;;;10773:46;10769:464;;;10836:46;10856:6;10864:9;10875:6;10836:19;:46::i;:::-;10769:464;;;10905:11;:19;10917:6;10905:19;;;;;;;;;;;;;;;;;;;;;;;;;10904:20;:47;;;;;10929:11;:22;10941:9;10929:22;;;;;;;;;;;;;;;;;;;;;;;;;10928:23;10904:47;10900:333;;;10968:44;10986:6;10994:9;11005:6;10968:17;:44::i;:::-;10900:333;;;11034:11;:19;11046:6;11034:19;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;;;11057:11;:22;11069:9;11057:22;;;;;;;;;;;;;;;;;;;;;;;;;11034:45;11030:203;;;11096:48;11118:6;11126:9;11137:6;11096:21;:48::i;:::-;11030:203;;;11177:44;11195:6;11203:9;11214:6;11177:17;:44::i;:::-;11030:203;10900:333;10769:464;10636:597;10309:931;;;:::o;1513:192::-;1599:7;1632:1;1627;:6;;1635:12;1619:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1619:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1659:9;1675:1;1671;:5;1659:17;;1696:1;1689:8;;;1513:192;;;;;:::o;14506:163::-;14547:7;14568:15;14585;14604:19;:17;:19::i;:::-;14567:56;;;;14641:20;14653:7;14641;:11;;:20;;;;:::i;:::-;14634:27;;;;14506:163;:::o;1971:132::-;2029:7;2056:39;2060:1;2063;2056:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2049:46;;1971:132;;;;:::o;13926:230::-;13986:7;13995;14015:12;14030:23;14051:1;14030:16;14042:3;14030:7;:11;;:16;;;;:::i;:::-;:20;;:23;;;;:::i;:::-;14015:38;;14064:23;14090:17;14102:4;14090:7;:11;;:17;;;;:::i;:::-;14064:43;;14126:15;14143:4;14118:30;;;;;;13926:230;;;:::o;14164:334::-;14259:7;14268;14277;14297:15;14315:24;14327:11;14315:7;:11;;:24;;;;:::i;:::-;14297:42;;14350:12;14365:21;14374:11;14365:4;:8;;:21;;;;:::i;:::-;14350:36;;14397:23;14423:17;14435:4;14423:7;:11;;:17;;;;:::i;:::-;14397:43;;14459:7;14468:15;14485:4;14451:39;;;;;;;;;14164:334;;;;;;;:::o;12243:508::-;12346:15;12363:23;12388:12;12402:23;12427:12;12443:19;12454:7;12443:10;:19::i;:::-;12345:117;;;;;;;;;;12491:28;12511:7;12491;:15;12499:6;12491:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;12473:7;:15;12481:6;12473:15;;;;;;;;;;;;;;;:46;;;;12548:28;12568:7;12548;:15;12556:6;12548:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;12530:7;:15;12538:6;12530:15;;;;;;;;;;;;;;;:46;;;;12608:39;12631:15;12608:7;:18;12616:9;12608:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;12587:7;:18;12595:9;12587:18;;;;;;;;;;;;;;;:60;;;;12660:23;12672:4;12678;12660:11;:23::i;:::-;12716:9;12699:44;;12708:6;12699:44;;;12727:15;12699:44;;;;;;;;;;;;;;;;;;12243:508;;;;;;;;:::o;11707:528::-;11808:15;11825:23;11850:12;11864:23;11889:12;11905:19;11916:7;11905:10;:19::i;:::-;11807:117;;;;;;;;;;11953:28;11973:7;11953;:15;11961:6;11953:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11935:7;:15;11943:6;11935:15;;;;;;;;;;;;;;;:46;;;;12013:39;12036:15;12013:7;:18;12021:9;12013:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11992:7;:18;12000:9;11992:18;;;;;;;;;;;;;;;:60;;;;12084:39;12107:15;12084:7;:18;12092:9;12084:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;12063:7;:18;12071:9;12063:18;;;;;;;;;;;;;;;:60;;;;12144:23;12156:4;12162;12144:11;:23::i;:::-;12200:9;12183:44;;12192:6;12183:44;;;12211:15;12183:44;;;;;;;;;;;;;;;;;;11707:528;;;;;;;;:::o;11248:451::-;11347:15;11364:23;11389:12;11403:23;11428:12;11444:19;11455:7;11444:10;:19::i;:::-;11346:117;;;;;;;;;;11492:28;11512:7;11492;:15;11500:6;11492:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;11474:7;:15;11482:6;11474:15;;;;;;;;;;;;;;;:46;;;;11552:39;11575:15;11552:7;:18;11560:9;11552:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;11531:7;:18;11539:9;11531:18;;;;;;;;;;;;;;;:60;;;;11608:23;11620:4;11626;11608:11;:23::i;:::-;11664:9;11647:44;;11656:6;11647:44;;;11675:15;11647:44;;;;;;;;;;;;;;;;;;11248:451;;;;;;;;:::o;12759:585::-;12862:15;12879:23;12904:12;12918:23;12943:12;12959:19;12970:7;12959:10;:19::i;:::-;12861:117;;;;;;;;;;13007:28;13027:7;13007;:15;13015:6;13007:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;12989:7;:15;12997:6;12989:15;;;;;;;;;;;;;;;:46;;;;13064:28;13084:7;13064;:15;13072:6;13064:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;13046:7;:15;13054:6;13046:15;;;;;;;;;;;;;;;:46;;;;13124:39;13147:15;13124:7;:18;13132:9;13124:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;13103:7;:18;13111:9;13103:18;;;;;;;;;;;;;;;:60;;;;13195:39;13218:15;13195:7;:18;13203:9;13195:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;13174:7;:18;13182:9;13174:18;;;;;;;;;;;;;;;:60;;;;13253:23;13265:4;13271;13253:11;:23::i;:::-;13309:9;13292:44;;13301:6;13292:44;;;13320:15;13292:44;;;;;;;;;;;;;;;;;;12759:585;;;;;;;;:::o;14677:561::-;14727:7;14736;14756:15;14774:7;;14756:25;;14792:15;6368:21;14792:25;;14839:9;14851:1;14839:13;;14834:289;14858:9;:16;;;;14854:1;:20;14834:289;;;14924:7;14900;:21;14908:9;14918:1;14908:12;;;;;;;;;;;;;;;;;;;;;;;;;14900:21;;;;;;;;;;;;;;;;:31;:66;;;;14959:7;14935;:21;14943:9;14953:1;14943:12;;;;;;;;;;;;;;;;;;;;;;;;;14935:21;;;;;;;;;;;;;;;;:31;14900:66;14896:97;;;14976:7;;6368:21;14968:25;;;;;;;;;14896:97;15018:34;15030:7;:21;15038:9;15048:1;15038:12;;;;;;;;;;;;;;;;;;;;;;;;;15030:21;;;;;;;;;;;;;;;;15018:7;:11;;:34;;;;:::i;:::-;15008:44;;15077:34;15089:7;:21;15097:9;15107:1;15097:12;;;;;;;;;;;;;;;;;;;;;;;;;15089:21;;;;;;;;;;;;;;;;15077:7;:11;;:34;;;;:::i;:::-;15067:44;;14876:3;;;;;;;14834:289;;;;15147:20;6368:21;15147:7;;:11;;:20;;;;:::i;:::-;15137:7;:30;15133:61;;;15177:7;;6368:21;15169:25;;;;;;;;15133:61;15213:7;15222;15205:25;;;;;;14677:561;;;:::o;2111:191::-;2197:7;2229:1;2225;:5;2232:12;2217:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2217:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2256:9;2272:1;2268;:5;;;;;;2256:17;;2293:1;2286:8;;;2111:191;;;;;:::o;1713:250::-;1771:7;1800:1;1795;:6;1791:47;;;1825:1;1818:8;;;;1791:47;1850:9;1866:1;1862;:5;1850:17;;1895:1;1890;1886;:5;;;;;;:10;1878:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1954:1;1947:8;;;1713:250;;;;;:::o;13352:147::-;13430:17;13442:4;13430:7;;:11;;:17;;;;:::i;:::-;13420:7;:27;;;;13471:20;13486:4;13471:10;;:14;;:20;;;;:::i;:::-;13458:10;:33;;;;13352:147;;:::o

Swarm Source

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