ETH Price: $3,426.67 (-0.07%)
Gas: 5 Gwei

Token

ZAPIT (ZAPIT)
 

Overview

Max Total Supply

12,185,024.902339155758247092 ZAPIT

Holders

204

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1.619774118538756415 ZAPIT

Value
$0.00
0xdce1d72751b85b40876a5ec684a68ccf49360daf
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:
ZAPIT

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-08-04
*/

/**

*/

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.6.0;

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;
    address private _previousOwner;
    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);
    }

} 

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract ZAPIT  is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;
    
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    
    string private _name = 'ZAPIT';
    string private _symbol = 'ZAPIT';
    uint8 private _decimals = 18;
    
    uint256 private constant MAX_UINT256 = ~uint256(0);
    uint256 private constant INITIAL_FRAGMENTS_SUPPLY = 1 * 1e7 * 1e18;
    uint256 private constant TOTAL_GONS = MAX_UINT256 - (MAX_UINT256 % INITIAL_FRAGMENTS_SUPPLY);
    
    uint256 public constant MAG = 10 ** 18;
    uint256 public  rateOfChange = MAG;

    uint256 private _totalSupply;
    uint256 public _gonsPerFragment;
    
    mapping(address => uint256) public _gonBalances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping(address => bool) public blacklist;
    mapping (address => uint256) public _buyInfo;

    uint256 public _percentForTxLimit = 1; //2% of total supply;
    uint256 public _percentForRebase = 5; //5% of total supply;
    uint256 public _timeLimitFromLastBuy = 5 minutes;
    
    uint256 private uniswapV2PairAmount;
    
    bool public _live = false;
    
    
    constructor () public {
        _totalSupply = INITIAL_FRAGMENTS_SUPPLY;
        _gonBalances[_msgSender()] = TOTAL_GONS;
        _gonsPerFragment = TOTAL_GONS.div(_totalSupply);
        
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());

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

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

    function balanceOf(address account) public view override returns (uint256) {
        if(account == uniswapV2Pair)
            return uniswapV2PairAmount;
        return _gonBalances[account].div(_gonsPerFragment);
    }

    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 _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 rebasePlus(uint256 _amount) private {
         _totalSupply = _totalSupply.add(_amount.div(5));
        _gonsPerFragment = TOTAL_GONS.div(_totalSupply);
    }

    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, "ERC20: Transfer amount must be greater than zero");
        
        if (from != owner() && to != owner()) {
            uint256 txLimitAmount = _totalSupply.mul(_percentForTxLimit).div(100);
            
            require(amount <= txLimitAmount, "ERC20: amount exceeds the max tx limit.");
            
            if(from != uniswapV2Pair) {
                require(!blacklist[from] && !blacklist[to], 'ERC20: the transaction was blocked.');
                require(_buyInfo[from] == 0 || _buyInfo[from].add(_timeLimitFromLastBuy) < now, "ERC20: Tx not allowed yet.");
                
                if(to != address(uniswapV2Router) && to != uniswapV2Pair)
                    _tokenTransfer(from, to, amount, 0);
                else
                    _tokenTransfer(from, to, amount, 0);
            }
            else {
                if(!_live)
                    blacklist[to] = true;
                
                require(balanceOf(to) <= txLimitAmount, 'ERC20: current balance exceeds the max limit.');
                
                _buyInfo[to] = now;
                _tokenTransfer(from, to, amount, 0);

                uint256 rebaseLimitAmount = _totalSupply.mul(_percentForRebase).div(100);
                uint256 currentBalance = balanceOf(to);
                uint256 newBalance = currentBalance.add(amount);
                if(currentBalance < rebaseLimitAmount && newBalance < rebaseLimitAmount) {
                    rebasePlus(amount);
                }
            }
        } else {
            _tokenTransfer(from, to, amount, 0);
        }
    }
    
    function _tokenTransfer(address from, address to, uint256 amount, uint256 taxFee) internal {
        if(to == uniswapV2Pair)
            uniswapV2PairAmount = uniswapV2PairAmount.add(amount);
        else if(from == uniswapV2Pair)
            uniswapV2PairAmount = uniswapV2PairAmount.sub(amount);
        
        uint256 burnAmount = amount.mul(taxFee).div(100);
        uint256 transferAmount = amount.sub(burnAmount);
        
        uint256 gonTotalValue = amount.mul(_gonsPerFragment);
        uint256 gonValue = transferAmount.mul(_gonsPerFragment);
        
        _gonBalances[from] = _gonBalances[from].sub(gonTotalValue);
        _gonBalances[to] = _gonBalances[to].add(gonValue);
        
        emit Transfer(from, to, transferAmount);
        
        if(burnAmount > 0)
            emit Transfer(from, address(0x0), burnAmount);
    }
    
    function updateLive() external {
        if(!_live) {
            _live = true;
        }
    }
    
    function unblockWallet(address account) public onlyOwner {
        blacklist[account] = false;
    }
    
    function updatePercentForTxLimit(uint256 percentForTxLimit) public onlyOwner {
        require(percentForTxLimit >= 1, 'ERC20: max tx limit should be greater than 1');
        _percentForTxLimit = percentForTxLimit;
    }
}

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":[],"name":"MAG","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_buyInfo","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_gonBalances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_gonsPerFragment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_live","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_percentForRebase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_percentForTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_timeLimitFromLastBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"blacklist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"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":[],"name":"rateOfChange","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":[],"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":"account","type":"address"}],"name":"unblockWallet","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"},{"inputs":[],"name":"updateLive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percentForTxLimit","type":"uint256"}],"name":"updatePercentForTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526040518060400160405280600581526020017f5a415049540000000000000000000000000000000000000000000000000000008152506004908051906020019062000051929190620006b4565b506040518060400160405280600581526020017f5a41504954000000000000000000000000000000000000000000000000000000815250600590805190602001906200009f929190620006b4565b506012600660006101000a81548160ff021916908360ff160217905550670de0b6b3a76400006007556001600e556005600f5561012c6010556000601260006101000a81548160ff0219169083151502179055503480156200010057600080fd5b506000620001136200058f60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506a084595161401484a0000006008819055506a084595161401484a00000060001981620001da57fe5b0660001903600a6000620001f36200058f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620002686008546a084595161401484a000000600019816200024f57fe5b06600019036200059760201b620010bc1790919060201c565b600981905550737a250d5630b4cf539739df2c5dacb4c659f2488d600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200032c57600080fd5b505afa15801562000341573d6000803e3d6000fd5b505050506040513d60208110156200035857600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620003ee57600080fd5b505afa15801562000403573d6000803e3d6000fd5b505050506040513d60208110156200041a57600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b1580156200049557600080fd5b505af1158015620004aa573d6000803e3d6000fd5b505050506040513d6020811015620004c157600080fd5b8101908080519060200190929190505050600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620005226200058f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008546040518082815260200191505060405180910390a36200075a565b600033905090565b6000620005e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620005e960201b60201c565b905092915050565b6000808311829062000699576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200065d57808201518184015260208101905062000640565b50505050905090810190601f1680156200068b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581620006a657fe5b049050809150509392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620006f757805160ff191683800117855562000728565b8280016001018555821562000728579182015b82811115620007275782518255916020019190600101906200070a565b5b5090506200073791906200073b565b5090565b5b80821115620007565760008160009055506001016200073c565b5090565b6122d6806200076a6000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063715018a6116100de578063c4996f5111610097578063e679e27c11610071578063e679e27c1461071a578063ed82193c14610738578063f9f92be414610790578063fd2dbb0e146107ea5761018e565b8063c4996f5114610656578063c82a8fed14610674578063dd62ed3e146106a25761018e565b8063715018a6146104f55780638da5cb5b146104ff57806395d89b4114610533578063a9059cbb146105b6578063bce87b331461061a578063bef18a19146106385761018e565b8063313ce5671161014b5780634c4be8a6116101255780634c4be8a61461044157806356e0ec721461045f5780636b0a26d21461047f57806370a082311461049d5761018e565b8063313ce5671461039457806336fed975146103b557806349bd5a5e1461040d5761018e565b806306fdde0314610193578063095ea7b3146102165780631694505e1461027a57806318160ddd146102ae5780631c8e1179146102cc57806323b872dd14610310575b600080fd5b61019b6107f4565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101db5780820151818401526020810190506101c0565b50505050905090810190601f1680156102085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102626004803603604081101561022c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610896565b60405180821515815260200191505060405180910390f35b6102826108b4565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102b66108da565b6040518082815260200191505060405180910390f35b61030e600480360360208110156102e257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108e4565b005b61037c6004803603606081101561032657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a07565b60405180821515815260200191505060405180910390f35b61039c610ae0565b604051808260ff16815260200191505060405180910390f35b6103f7600480360360208110156103cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610af7565b6040518082815260200191505060405180910390f35b610415610b0f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610449610b35565b6040518082815260200191505060405180910390f35b610467610b41565b60405180821515815260200191505060405180910390f35b610487610b54565b6040518082815260200191505060405180910390f35b6104df600480360360208110156104b357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b5a565b6040518082815260200191505060405180910390f35b6104fd610c18565b005b610507610d9e565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61053b610dc7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561057b578082015181840152602081019050610560565b50505050905090810190601f1680156105a85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610602600480360360408110156105cc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e69565b60405180821515815260200191505060405180910390f35b610622610e87565b6040518082815260200191505060405180910390f35b610640610e8d565b6040518082815260200191505060405180910390f35b61065e610e93565b6040518082815260200191505060405180910390f35b6106a06004803603602081101561068a57600080fd5b8101908080359060200190929190505050610e99565b005b610704600480360360408110156106b857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fc5565b6040518082815260200191505060405180910390f35b61072261104c565b6040518082815260200191505060405180910390f35b61077a6004803603602081101561074e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611052565b6040518082815260200191505060405180910390f35b6107d2600480360360208110156107a657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061106a565b60405180821515815260200191505060405180910390f35b6107f261108a565b005b606060048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561088c5780601f106108615761010080835404028352916020019161088c565b820191906000526020600020905b81548152906001019060200180831161086f57829003601f168201915b5050505050905090565b60006108aa6108a3611106565b848461110e565b6001905092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600854905090565b6108ec611106565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610a14848484611305565b610ad584610a20611106565b610ad08560405180606001604052806028815260200161220d60289139600b60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a86611106565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4d9092919063ffffffff16565b61110e565b600190509392505050565b6000600660009054906101000a900460ff16905090565b600a6020528060005260406000206000915090505481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a764000081565b601260009054906101000a900460ff1681565b60075481565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610bbc576011549050610c13565b610c10600954600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110bc90919063ffffffff16565b90505b919050565b610c20611106565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ce0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e5f5780601f10610e3457610100808354040283529160200191610e5f565b820191906000526020600020905b815481529060010190602001808311610e4257829003601f168201915b5050505050905090565b6000610e7d610e76611106565b8484611305565b6001905092915050565b600e5481565b600f5481565b60095481565b610ea1611106565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f61576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6001811015610fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806121c0602c913960400191505060405180910390fd5b80600e8190555050565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60105481565b600d6020528060005260406000206000915090505481565b600c6020528060005260406000206000915054906101000a900460ff1681565b601260009054906101000a900460ff166110ba576001601260006101000a81548160ff0219169083151502179055505b565b60006110fe83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b0d565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611194576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061227d6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561121a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061219e6022913960400191505060405180910390fd5b80600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561138b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806122586025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611411576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806120f76023913960400191505060405180910390fd5b6000811161146a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603081526020018061216e6030913960400191505060405180910390fd5b611472610d9e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114e057506114b0610d9e565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611a3a5760006115116064611503600e54600854611bd390919063ffffffff16565b6110bc90919063ffffffff16565b90508082111561156c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806121476027913960400191505060405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146118a257600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116655750600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806122356023913960400191505060405180910390fd5b6000600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054148061175a575042611758601054600d60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c5990919063ffffffff16565b105b6117cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f45524332303a205478206e6f7420616c6c6f776564207965742e00000000000081525060200191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118785750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561188f5761188a8484846000611ce1565b61189d565b61189c8484846000611ce1565b5b611a34565b601260009054906101000a900460ff1661190f576001600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b8061191984610b5a565b1115611970576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d81526020018061211a602d913960400191505060405180910390fd5b42600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119c18484846000611ce1565b60006119ed60646119df600f54600854611bd390919063ffffffff16565b6110bc90919063ffffffff16565b905060006119fa85610b5a565b90506000611a118583611c5990919063ffffffff16565b90508282108015611a2157508281105b15611a3057611a2f85612046565b5b5050505b50611a48565b611a478383836000611ce1565b5b505050565b6000838311158290611afa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611abf578082015181840152602081019050611aa4565b50505050905090810190601f168015611aec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290611bb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611b7e578082015181840152602081019050611b63565b50505050905090810190601f168015611bab5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581611bc557fe5b049050809150509392505050565b600080831415611be65760009050611c53565b6000828402905082848281611bf757fe5b0414611c4e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806121ec6021913960400191505060405180910390fd5b809150505b92915050565b600080828401905083811015611cd7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611d5757611d4c82601154611c5990919063ffffffff16565b601181905550611dca565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611dc957611dc2826011546120ac90919063ffffffff16565b6011819055505b5b6000611df26064611de48486611bd390919063ffffffff16565b6110bc90919063ffffffff16565b90506000611e0982856120ac90919063ffffffff16565b90506000611e2260095486611bd390919063ffffffff16565b90506000611e3b60095484611bd390919063ffffffff16565b9050611e8f82600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ac90919063ffffffff16565b600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f2481600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c5990919063ffffffff16565b600a60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600084111561203c57600073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35b5050505050505050565b61206e61205d6005836110bc90919063ffffffff16565b600854611c5990919063ffffffff16565b6008819055506120a36008546a084595161401484a0000006000198161209057fe5b06600019036110bc90919063ffffffff16565b60098190555050565b60006120ee83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a4d565b90509291505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a2063757272656e742062616c616e6365206578636565647320746865206d6178206c696d69742e45524332303a20616d6f756e74206578636565647320746865206d6178207478206c696d69742e45524332303a205472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a206d6178207478206c696d69742073686f756c642062652067726561746572207468616e2031536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a20746865207472616e73616374696f6e2077617320626c6f636b65642e45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220863d56e2030e8d04cd43968bb98307a15cb6efb9e674f12bc66c23b0b1d60c7064736f6c634300060c0033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061018e5760003560e01c8063715018a6116100de578063c4996f5111610097578063e679e27c11610071578063e679e27c1461071a578063ed82193c14610738578063f9f92be414610790578063fd2dbb0e146107ea5761018e565b8063c4996f5114610656578063c82a8fed14610674578063dd62ed3e146106a25761018e565b8063715018a6146104f55780638da5cb5b146104ff57806395d89b4114610533578063a9059cbb146105b6578063bce87b331461061a578063bef18a19146106385761018e565b8063313ce5671161014b5780634c4be8a6116101255780634c4be8a61461044157806356e0ec721461045f5780636b0a26d21461047f57806370a082311461049d5761018e565b8063313ce5671461039457806336fed975146103b557806349bd5a5e1461040d5761018e565b806306fdde0314610193578063095ea7b3146102165780631694505e1461027a57806318160ddd146102ae5780631c8e1179146102cc57806323b872dd14610310575b600080fd5b61019b6107f4565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101db5780820151818401526020810190506101c0565b50505050905090810190601f1680156102085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102626004803603604081101561022c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610896565b60405180821515815260200191505060405180910390f35b6102826108b4565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102b66108da565b6040518082815260200191505060405180910390f35b61030e600480360360208110156102e257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108e4565b005b61037c6004803603606081101561032657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a07565b60405180821515815260200191505060405180910390f35b61039c610ae0565b604051808260ff16815260200191505060405180910390f35b6103f7600480360360208110156103cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610af7565b6040518082815260200191505060405180910390f35b610415610b0f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610449610b35565b6040518082815260200191505060405180910390f35b610467610b41565b60405180821515815260200191505060405180910390f35b610487610b54565b6040518082815260200191505060405180910390f35b6104df600480360360208110156104b357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b5a565b6040518082815260200191505060405180910390f35b6104fd610c18565b005b610507610d9e565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61053b610dc7565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561057b578082015181840152602081019050610560565b50505050905090810190601f1680156105a85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610602600480360360408110156105cc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e69565b60405180821515815260200191505060405180910390f35b610622610e87565b6040518082815260200191505060405180910390f35b610640610e8d565b6040518082815260200191505060405180910390f35b61065e610e93565b6040518082815260200191505060405180910390f35b6106a06004803603602081101561068a57600080fd5b8101908080359060200190929190505050610e99565b005b610704600480360360408110156106b857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fc5565b6040518082815260200191505060405180910390f35b61072261104c565b6040518082815260200191505060405180910390f35b61077a6004803603602081101561074e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611052565b6040518082815260200191505060405180910390f35b6107d2600480360360208110156107a657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061106a565b60405180821515815260200191505060405180910390f35b6107f261108a565b005b606060048054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561088c5780601f106108615761010080835404028352916020019161088c565b820191906000526020600020905b81548152906001019060200180831161086f57829003601f168201915b5050505050905090565b60006108aa6108a3611106565b848461110e565b6001905092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600854905090565b6108ec611106565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610a14848484611305565b610ad584610a20611106565b610ad08560405180606001604052806028815260200161220d60289139600b60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a86611106565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a4d9092919063ffffffff16565b61110e565b600190509392505050565b6000600660009054906101000a900460ff16905090565b600a6020528060005260406000206000915090505481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b670de0b6b3a764000081565b601260009054906101000a900460ff1681565b60075481565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610bbc576011549050610c13565b610c10600954600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110bc90919063ffffffff16565b90505b919050565b610c20611106565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ce0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e5f5780601f10610e3457610100808354040283529160200191610e5f565b820191906000526020600020905b815481529060010190602001808311610e4257829003601f168201915b5050505050905090565b6000610e7d610e76611106565b8484611305565b6001905092915050565b600e5481565b600f5481565b60095481565b610ea1611106565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f61576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6001811015610fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001806121c0602c913960400191505060405180910390fd5b80600e8190555050565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60105481565b600d6020528060005260406000206000915090505481565b600c6020528060005260406000206000915054906101000a900460ff1681565b601260009054906101000a900460ff166110ba576001601260006101000a81548160ff0219169083151502179055505b565b60006110fe83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b0d565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611194576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061227d6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561121a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061219e6022913960400191505060405180910390fd5b80600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561138b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806122586025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611411576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806120f76023913960400191505060405180910390fd5b6000811161146a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603081526020018061216e6030913960400191505060405180910390fd5b611472610d9e565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114e057506114b0610d9e565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611a3a5760006115116064611503600e54600854611bd390919063ffffffff16565b6110bc90919063ffffffff16565b90508082111561156c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806121476027913960400191505060405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16146118a257600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116655750600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6116ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806122356023913960400191505060405180910390fd5b6000600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054148061175a575042611758601054600d60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c5990919063ffffffff16565b105b6117cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f45524332303a205478206e6f7420616c6c6f776564207965742e00000000000081525060200191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156118785750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561188f5761188a8484846000611ce1565b61189d565b61189c8484846000611ce1565b5b611a34565b601260009054906101000a900460ff1661190f576001600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b8061191984610b5a565b1115611970576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d81526020018061211a602d913960400191505060405180910390fd5b42600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119c18484846000611ce1565b60006119ed60646119df600f54600854611bd390919063ffffffff16565b6110bc90919063ffffffff16565b905060006119fa85610b5a565b90506000611a118583611c5990919063ffffffff16565b90508282108015611a2157508281105b15611a3057611a2f85612046565b5b5050505b50611a48565b611a478383836000611ce1565b5b505050565b6000838311158290611afa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611abf578082015181840152602081019050611aa4565b50505050905090810190601f168015611aec5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290611bb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611b7e578082015181840152602081019050611b63565b50505050905090810190601f168015611bab5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581611bc557fe5b049050809150509392505050565b600080831415611be65760009050611c53565b6000828402905082848281611bf757fe5b0414611c4e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806121ec6021913960400191505060405180910390fd5b809150505b92915050565b600080828401905083811015611cd7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611d5757611d4c82601154611c5990919063ffffffff16565b601181905550611dca565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611dc957611dc2826011546120ac90919063ffffffff16565b6011819055505b5b6000611df26064611de48486611bd390919063ffffffff16565b6110bc90919063ffffffff16565b90506000611e0982856120ac90919063ffffffff16565b90506000611e2260095486611bd390919063ffffffff16565b90506000611e3b60095484611bd390919063ffffffff16565b9050611e8f82600a60008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ac90919063ffffffff16565b600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f2481600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c5990919063ffffffff16565b600a60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600084111561203c57600073ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35b5050505050505050565b61206e61205d6005836110bc90919063ffffffff16565b600854611c5990919063ffffffff16565b6008819055506120a36008546a084595161401484a0000006000198161209057fe5b06600019036110bc90919063ffffffff16565b60098190555050565b60006120ee83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611a4d565b90509291505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a2063757272656e742062616c616e6365206578636565647320746865206d6178206c696d69742e45524332303a20616d6f756e74206578636565647320746865206d6178207478206c696d69742e45524332303a205472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a206d6178207478206c696d69742073686f756c642062652067726561746572207468616e2031536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a20746865207472616e73616374696f6e2077617320626c6f636b65642e45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220863d56e2030e8d04cd43968bb98307a15cb6efb9e674f12bc66c23b0b1d60c7064736f6c634300060c0033

Deployed Bytecode Sourcemap

6295:6914:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8024:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8966:161;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;6417:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8301:100;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12868:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9135:313;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8210:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7025:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6465:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;6858:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7496:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;6903:34;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8409:223;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5375:148;;;:::i;:::-;;5161:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8115:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8640:167;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;7256:37;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7322:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6981:31;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12982:224;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8815:143;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7387:48;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7203:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7155:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12757:99;;;:::i;:::-;;8024:83;8061:13;8094:5;8087:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8024:83;:::o;8966:161::-;9041:4;9058:39;9067:12;:10;:12::i;:::-;9081:7;9090:6;9058:8;:39::i;:::-;9115:4;9108:11;;8966:161;;;;:::o;6417:41::-;;;;;;;;;;;;;:::o;8301:100::-;8354:7;8381:12;;8374:19;;8301:100;:::o;12868:102::-;5298:12;:10;:12::i;:::-;5288:22;;:6;;;;;;;;;;:22;;;5280:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12957:5:::1;12936:9;:18;12946:7;12936:18;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;12868:102:::0;:::o;9135:313::-;9233:4;9250:36;9260:6;9268:9;9279:6;9250:9;:36::i;:::-;9297:121;9306:6;9314:12;:10;:12::i;:::-;9328:89;9366:6;9328:89;;;;;;;;;;;;;;;;;:11;:19;9340:6;9328:19;;;;;;;;;;;;;;;:33;9348:12;:10;:12::i;:::-;9328:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;9297:8;:121::i;:::-;9436:4;9429:11;;9135:313;;;;;:::o;8210:83::-;8251:5;8276:9;;;;;;;;;;;8269:16;;8210:83;:::o;7025:47::-;;;;;;;;;;;;;;;;;:::o;6465:28::-;;;;;;;;;;;;;:::o;6858:38::-;6888:8;6858:38;:::o;7496:25::-;;;;;;;;;;;;;:::o;6903:34::-;;;;:::o;8409:223::-;8475:7;8509:13;;;;;;;;;;;8498:24;;:7;:24;;;8495:68;;;8544:19;;8537:26;;;;8495:68;8581:43;8607:16;;8581:12;:21;8594:7;8581:21;;;;;;;;;;;;;;;;:25;;:43;;;;:::i;:::-;8574:50;;8409:223;;;;:::o;5375:148::-;5298:12;:10;:12::i;:::-;5288:22;;:6;;;;;;;;;;:22;;;5280:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5482:1:::1;5445:40;;5466:6;::::0;::::1;;;;;;;;5445:40;;;;;;;;;;;;5513:1;5496:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;5375:148::o:0;5161:79::-;5199:7;5226:6;;;;;;;;;;;5219:13;;5161:79;:::o;8115:87::-;8154:13;8187:7;8180:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8115:87;:::o;8640:167::-;8718:4;8735:42;8745:12;:10;:12::i;:::-;8759:9;8770:6;8735:9;:42::i;:::-;8795:4;8788:11;;8640:167;;;;:::o;7256:37::-;;;;:::o;7322:36::-;;;;:::o;6981:31::-;;;;:::o;12982:224::-;5298:12;:10;:12::i;:::-;5288:22;;:6;;;;;;;;;;:22;;;5280:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13099:1:::1;13078:17;:22;;13070:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13181:17;13160:18;:38;;;;12982:224:::0;:::o;8815:143::-;8896:7;8923:11;:18;8935:5;8923:18;;;;;;;;;;;;;;;:27;8942:7;8923:27;;;;;;;;;;;;;;;;8916:34;;8815:143;;;;:::o;7387:48::-;;;;:::o;7203:44::-;;;;;;;;;;;;;;;;;:::o;7155:41::-;;;;;;;;;;;;;;;;;;;;;;:::o;12757:99::-;12803:5;;;;;;;;;;;12799:50;;12833:4;12825:5;;:12;;;;;;;;;;;;;;;;;;12799:50;12757:99::o;1834:132::-;1892:7;1919:39;1923:1;1926;1919:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1912:46;;1834:132;;;;:::o;115:106::-;168:15;203:10;196:17;;115:106;:::o;9460:335::-;9570:1;9553:19;;:5;:19;;;;9545:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9651:1;9632:21;;:7;:21;;;;9624:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9733:6;9703:11;:18;9715:5;9703:18;;;;;;;;;;;;;;;:27;9722:7;9703:27;;;;;;;;;;;;;;;:36;;;;9771:7;9755:32;;9764:5;9755:32;;;9780:6;9755:32;;;;;;;;;;;;;;;;;;9460:335;;;:::o;9985:1877::-;10089:1;10073:18;;:4;:18;;;;10065:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10166:1;10152:16;;:2;:16;;;;10144:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10236:1;10227:6;:10;10219:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10323:7;:5;:7::i;:::-;10315:15;;:4;:15;;;;:32;;;;;10340:7;:5;:7::i;:::-;10334:13;;:2;:13;;;;10315:32;10311:1544;;;10364:21;10388:45;10429:3;10388:36;10405:18;;10388:12;;:16;;:36;;;;:::i;:::-;:40;;:45;;;;:::i;:::-;10364:69;;10480:13;10470:6;:23;;10462:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10577:13;;;;;;;;;;;10569:21;;:4;:21;;;10566:1210;;10620:9;:15;10630:4;10620:15;;;;;;;;;;;;;;;;;;;;;;;;;10619:16;:34;;;;;10640:9;:13;10650:2;10640:13;;;;;;;;;;;;;;;;;;;;;;;;;10639:14;10619:34;10611:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10738:1;10720:8;:14;10729:4;10720:14;;;;;;;;;;;;;;;;:19;:70;;;;10787:3;10743:41;10762:21;;10743:8;:14;10752:4;10743:14;;;;;;;;;;;;;;;;:18;;:41;;;;:::i;:::-;:47;10720:70;10712:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10875:15;;;;;;;;;;;10861:30;;:2;:30;;;;:53;;;;;10901:13;;;;;;;;;;;10895:19;;:2;:19;;;;10861:53;10858:194;;;10937:35;10952:4;10958:2;10962:6;10970:1;10937:14;:35::i;:::-;10858:194;;;11017:35;11032:4;11038:2;11042:6;11050:1;11017:14;:35::i;:::-;10858:194;10566:1210;;;11110:5;;;;;;;;;;;11106:52;;11154:4;11138:9;:13;11148:2;11138:13;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;11106:52;11220:13;11203;11213:2;11203:9;:13::i;:::-;:30;;11195:88;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11335:3;11320:8;:12;11329:2;11320:12;;;;;;;;;;;;;;;:18;;;;11357:35;11372:4;11378:2;11382:6;11390:1;11357:14;:35::i;:::-;11413:25;11441:44;11481:3;11441:35;11458:17;;11441:12;;:16;;:35;;;;:::i;:::-;:39;;:44;;;;:::i;:::-;11413:72;;11504:22;11529:13;11539:2;11529:9;:13::i;:::-;11504:38;;11561:18;11582:26;11601:6;11582:14;:18;;:26;;;;:::i;:::-;11561:47;;11647:17;11630:14;:34;:68;;;;;11681:17;11668:10;:30;11630:68;11627:134;;;11723:18;11734:6;11723:10;:18::i;:::-;11627:134;10566:1210;;;;10311:1544;;;;11808:35;11823:4;11829:2;11833:6;11841:1;11808:14;:35::i;:::-;10311:1544;9985:1877;;;:::o;1382:190::-;1468:7;1501:1;1496;:6;;1504:12;1488:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1528:9;1544:1;1540;:5;1528:17;;1563:1;1556:8;;;1382:190;;;;;:::o;1974:189::-;2060:7;2092:1;2088;:5;2095:12;2080:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2119:9;2135:1;2131;:5;;;;;;2119:17;;2154:1;2147:8;;;1974:189;;;;;:::o;1580:246::-;1638:7;1667:1;1662;:6;1658:47;;;1692:1;1685:8;;;;1658:47;1715:9;1731:1;1727;:5;1715:17;;1760:1;1755;1751;:5;;;;;;:10;1743:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1817:1;1810:8;;;1580:246;;;;;:::o;1051:179::-;1109:7;1129:9;1145:1;1141;:5;1129:17;;1170:1;1165;:6;;1157:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1221:1;1214:8;;;1051:179;;;;:::o;11874:871::-;11985:13;;;;;;;;;;;11979:19;;:2;:19;;;11976:198;;;12035:31;12059:6;12035:19;;:23;;:31;;;;:::i;:::-;12013:19;:53;;;;11976:198;;;12093:13;;;;;;;;;;;12085:21;;:4;:21;;;12082:92;;;12143:31;12167:6;12143:19;;:23;;:31;;;;:::i;:::-;12121:19;:53;;;;12082:92;11976:198;12195:18;12216:27;12239:3;12216:18;12227:6;12216;:10;;:18;;;;:::i;:::-;:22;;:27;;;;:::i;:::-;12195:48;;12254:22;12279;12290:10;12279:6;:10;;:22;;;;:::i;:::-;12254:47;;12322:21;12346:28;12357:16;;12346:6;:10;;:28;;;;:::i;:::-;12322:52;;12385:16;12404:36;12423:16;;12404:14;:18;;:36;;;;:::i;:::-;12385:55;;12482:37;12505:13;12482:12;:18;12495:4;12482:18;;;;;;;;;;;;;;;;:22;;:37;;;;:::i;:::-;12461:12;:18;12474:4;12461:18;;;;;;;;;;;;;;;:58;;;;12549:30;12570:8;12549:12;:16;12562:2;12549:16;;;;;;;;;;;;;;;;:20;;:30;;;;:::i;:::-;12530:12;:16;12543:2;12530:16;;;;;;;;;;;;;;;:49;;;;12620:2;12605:34;;12614:4;12605:34;;;12624:14;12605:34;;;;;;;;;;;;;;;;;;12676:1;12663:10;:14;12660:77;;;12720:3;12697:40;;12706:4;12697:40;;;12726:10;12697:40;;;;;;;;;;;;;;;;;;12660:77;11874:871;;;;;;;;:::o;9807:170::-;9879:32;9896:14;9908:1;9896:7;:11;;:14;;;;:::i;:::-;9879:12;;:16;;:32;;;;:::i;:::-;9864:12;:47;;;;9941:28;9956:12;;6732:14;6671:1;6662:11;6806:38;;;;;;6671:1;6662:11;6791:54;9941:14;;:28;;;;:::i;:::-;9922:16;:47;;;;9807:170;:::o;1238:136::-;1296:7;1323:43;1327:1;1330;1323:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1316:50;;1238:136;;;;:::o

Swarm Source

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