ETH Price: $2,273.56 (-3.82%)

Token

WRAP-IOU (WRAP-IOU)
 

Overview

Max Total Supply

36,676.087947983778869332 WRAP-IOU

Holders

111

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
28.35 WRAP-IOU

Value
$0.00
0xc1f17a35fab69e03f98ecfce0e0a1c0eaa3e32c4
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:
ERC20WrapIou

Compiler Version
v0.8.1+commit.df193b15

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 9 : ERC20WrapIou.sol
pragma solidity ^0.8.0;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol";
import "@openzeppelin/contracts/access/Ownable.sol";

contract ERC20WrapIou is ERC20, Ownable, ERC20Pausable, ERC20Burnable {

    constructor(
        address[] memory tokenHolders,
        uint256[] memory amounts
    ) ERC20("WRAP-IOU", "WRAP-IOU") {
        require(
            tokenHolders.length == amounts.length,
            "Token holders and amounts lengths must match"
        );

        pause();
        mintMultiple(tokenHolders, amounts);
    }

    modifier isTransferAllowed(address sender) {
        if (paused()) {
            require(
                sender == owner() || msg.sender == owner(),
                "Pausable: not authorized to execute transfer while paused"
            );
        }
        _;
    }

    function mint(address to, uint256 amount) public onlyOwner {
        super._mint(to, amount);
    }

    function mintMultiple(address[] memory tokenHolders, uint256[] memory amounts) public onlyOwner {
        for (uint256 i = 0; i < tokenHolders.length; i++) {
            mint(tokenHolders[i], amounts[i]);
        }
    }

    function pause() public onlyOwner {
        _pause();
    }

    function unpause() external onlyOwner {
        _unpause();
    }

    function transfer(
        address recipient,
        uint256 amount
    ) public override isTransferAllowed(msg.sender) returns (bool) {
        return super.transfer(recipient, amount);
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override isTransferAllowed(sender) returns (bool) {
        return super.transferFrom(sender, recipient, amount);
    }


    function _beforeTokenTransfer(address from, address to, uint256 amount) internal override(ERC20, ERC20Pausable) {}
}

File 2 of 9 : ERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "./IERC20.sol";
import "./extensions/IERC20Metadata.sol";
import "../../utils/Context.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 guidelines: functions revert instead
 * of 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 Context, IERC20, IERC20Metadata {
    mapping (address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * The defaut 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_) {
        _name = name_;
        _symbol = symbol_;
    }

    /**
     * @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 18;
    }

    /**
     * @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:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, 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}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), 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}.
     *
     * Requirements:
     *
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for ``sender``'s tokens of at least
     * `amount`.
     */
    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - 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) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][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) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

    /**
     * @dev Moves tokens `amount` from `sender` to `recipient`.
     *
     * This is 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:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    /** @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:
     *
     * - `to` 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);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

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

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        _balances[account] = accountBalance - amount;
        _totalSupply -= amount;

        emit Transfer(account, address(0), 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 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 to 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 { }
}

File 3 of 9 : ERC20Burnable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../ERC20.sol";
import "../../../utils/Context.sol";

/**
 * @dev Extension of {ERC20} that allows token holders to destroy both their own
 * tokens and those that they have an allowance for, in a way that can be
 * recognized off-chain (via event analysis).
 */
abstract contract ERC20Burnable is Context, ERC20 {
    /**
     * @dev Destroys `amount` tokens from the caller.
     *
     * See {ERC20-_burn}.
     */
    function burn(uint256 amount) public virtual {
        _burn(_msgSender(), amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, deducting from the caller's
     * allowance.
     *
     * See {ERC20-_burn} and {ERC20-allowance}.
     *
     * Requirements:
     *
     * - the caller must have allowance for ``accounts``'s tokens of at least
     * `amount`.
     */
    function burnFrom(address account, uint256 amount) public virtual {
        uint256 currentAllowance = allowance(account, _msgSender());
        require(currentAllowance >= amount, "ERC20: burn amount exceeds allowance");
        _approve(account, _msgSender(), currentAllowance - amount);
        _burn(account, amount);
    }
}

File 4 of 9 : ERC20Pausable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../ERC20.sol";
import "../../../security/Pausable.sol";

/**
 * @dev ERC20 token with pausable token transfers, minting and burning.
 *
 * Useful for scenarios such as preventing trades until the end of an evaluation
 * period, or having an emergency switch for freezing all token transfers in the
 * event of a large bug.
 */
abstract contract ERC20Pausable is ERC20, Pausable {
    /**
     * @dev See {ERC20-_beforeTokenTransfer}.
     *
     * Requirements:
     *
     * - the contract must not be paused.
     */
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual override {
        super._beforeTokenTransfer(from, to, amount);

        require(!paused(), "ERC20Pausable: token transfer while paused");
    }
}

File 5 of 9 : Ownable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../utils/Context.sol";
/**
 * @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;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the 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 {
        emit OwnershipTransferred(_owner, address(0));
        _owner = 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");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

File 6 of 9 : IERC20.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

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

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

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

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. 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 `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * 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);
}

File 7 of 9 : IERC20Metadata.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../IERC20.sol";

/**
 * @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 8 of 9 : Context.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/*
 * @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) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

File 9 of 9 : Pausable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which allows children to implement an emergency stop
 * mechanism that can be triggered by an authorized account.
 *
 * This module is used through inheritance. It will make available the
 * modifiers `whenNotPaused` and `whenPaused`, which can be applied to
 * the functions of your contract. Note that they will not be pausable by
 * simply including this module, only once the modifiers are put in place.
 */
abstract contract Pausable is Context {
    /**
     * @dev Emitted when the pause is triggered by `account`.
     */
    event Paused(address account);

    /**
     * @dev Emitted when the pause is lifted by `account`.
     */
    event Unpaused(address account);

    bool private _paused;

    /**
     * @dev Initializes the contract in unpaused state.
     */
    constructor () {
        _paused = false;
    }

    /**
     * @dev Returns true if the contract is paused, and false otherwise.
     */
    function paused() public view virtual returns (bool) {
        return _paused;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is not paused.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    modifier whenNotPaused() {
        require(!paused(), "Pausable: paused");
        _;
    }

    /**
     * @dev Modifier to make a function callable only when the contract is paused.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    modifier whenPaused() {
        require(paused(), "Pausable: not paused");
        _;
    }

    /**
     * @dev Triggers stopped state.
     *
     * Requirements:
     *
     * - The contract must not be paused.
     */
    function _pause() internal virtual whenNotPaused {
        _paused = true;
        emit Paused(_msgSender());
    }

    /**
     * @dev Returns to normal state.
     *
     * Requirements:
     *
     * - The contract must be paused.
     */
    function _unpause() internal virtual whenPaused {
        _paused = false;
        emit Unpaused(_msgSender());
    }
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "metadata": {
    "useLiteralContent": true
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address[]","name":"tokenHolders","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","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":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"tokenHolders","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"mintMultiple","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b506040516200384338038062003843833981810160405281019062000037919062000937565b6040518060400160405280600881526020017f575241502d494f550000000000000000000000000000000000000000000000008152506040518060400160405280600881526020017f575241502d494f550000000000000000000000000000000000000000000000008152508160039080519060200190620000bb92919062000715565b508060049080519060200190620000d492919062000715565b5050506000620000e96200021460201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506000600560146101000a81548160ff0219169083151502179055508051825114620001ea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001e19062000ac9565b60405180910390fd5b620001fa6200021c60201b60201c565b6200020c8282620002bd60201b60201c565b505062000eb3565b600033905090565b6200022c6200021460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620002526200040860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620002ab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002a29062000aa7565b60405180910390fd5b620002bb6200043260201b60201c565b565b620002cd6200021460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620002f36200040860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16146200034c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003439062000aa7565b60405180910390fd5b60005b82518110156200040357620003ed83828151811062000397577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151838381518110620003d9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151620004ea60201b60201c565b8080620003fa9062000cc9565b9150506200034f565b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620004426200059460201b60201c565b1562000485576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200047c9062000a85565b60405180910390fd5b6001600560146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258620004d16200021460201b60201c565b604051620004e0919062000a68565b60405180910390a1565b620004fa6200021460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620005206200040860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000579576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005709062000aa7565b60405180910390fd5b620005908282620005ab60201b62000fde1760201c565b5050565b6000600560149054906101000a900460ff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200061e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006159062000aeb565b60405180910390fd5b62000632600083836200071060201b60201c565b806002600082825462000646919062000bc2565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200069d919062000bc2565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000704919062000b0d565b60405180910390a35050565b505050565b828054620007239062000c5d565b90600052602060002090601f01602090048101928262000747576000855562000793565b82601f106200076257805160ff191683800117855562000793565b8280016001018555821562000793579182015b828111156200079257825182559160200191906001019062000775565b5b509050620007a29190620007a6565b5090565b5b80821115620007c1576000816000905550600101620007a7565b5090565b6000620007dc620007d68462000b53565b62000b2a565b90508083825260208201905082856020860282011115620007fc57600080fd5b60005b85811015620008305781620008158882620008af565b845260208401935060208301925050600181019050620007ff565b5050509392505050565b6000620008516200084b8462000b82565b62000b2a565b905080838252602082019050828560208602820111156200087157600080fd5b60005b85811015620008a557816200088a888262000920565b84526020840193506020830192505060018101905062000874565b5050509392505050565b600081519050620008c08162000e7f565b92915050565b600082601f830112620008d857600080fd5b8151620008ea848260208601620007c5565b91505092915050565b600082601f8301126200090557600080fd5b8151620009178482602086016200083a565b91505092915050565b600081519050620009318162000e99565b92915050565b600080604083850312156200094b57600080fd5b600083015167ffffffffffffffff8111156200096657600080fd5b6200097485828601620008c6565b925050602083015167ffffffffffffffff8111156200099257600080fd5b620009a085828601620008f3565b9150509250929050565b620009b58162000c1f565b82525050565b6000620009ca60108362000bb1565b9150620009d78262000db5565b602082019050919050565b6000620009f160208362000bb1565b9150620009fe8262000dde565b602082019050919050565b600062000a18602c8362000bb1565b915062000a258262000e07565b604082019050919050565b600062000a3f601f8362000bb1565b915062000a4c8262000e56565b602082019050919050565b62000a628162000c53565b82525050565b600060208201905062000a7f6000830184620009aa565b92915050565b6000602082019050818103600083015262000aa081620009bb565b9050919050565b6000602082019050818103600083015262000ac281620009e2565b9050919050565b6000602082019050818103600083015262000ae48162000a09565b9050919050565b6000602082019050818103600083015262000b068162000a30565b9050919050565b600060208201905062000b24600083018462000a57565b92915050565b600062000b3662000b49565b905062000b44828262000c93565b919050565b6000604051905090565b600067ffffffffffffffff82111562000b715762000b7062000d75565b5b602082029050602081019050919050565b600067ffffffffffffffff82111562000ba05762000b9f62000d75565b5b602082029050602081019050919050565b600082825260208201905092915050565b600062000bcf8262000c53565b915062000bdc8362000c53565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000c145762000c1362000d17565b5b828201905092915050565b600062000c2c8262000c33565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000600282049050600182168062000c7657607f821691505b6020821081141562000c8d5762000c8c62000d46565b5b50919050565b62000c9e8262000da4565b810181811067ffffffffffffffff8211171562000cc05762000cbf62000d75565b5b80604052505050565b600062000cd68262000c53565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000d0c5762000d0b62000d17565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f546f6b656e20686f6c6465727320616e6420616d6f756e7473206c656e67746860008201527f73206d757374206d617463680000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b62000e8a8162000c1f565b811462000e9657600080fd5b50565b62000ea48162000c53565b811462000eb057600080fd5b50565b6129808062000ec36000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c80635c975abb116100b85780638da5cb5b1161007c5780638da5cb5b1461030257806395d89b4114610320578063a457c2d71461033e578063a9059cbb1461036e578063dd62ed3e1461039e578063f2fde38b146103ce57610137565b80635c975abb1461028457806370a08231146102a2578063715018a6146102d257806379cc6790146102dc5780638456cb59146102f857610137565b8063313ce567116100ff578063313ce567146101f457806339509351146102125780633f4ba83a1461024257806340c10f191461024c57806342966c681461026857610137565b806306fdde031461013c57806307ea54771461015a578063095ea7b31461017657806318160ddd146101a657806323b872dd146101c4575b600080fd5b6101446103ea565b6040516101519190611f77565b60405180910390f35b610174600480360381019061016f9190611c07565b61047c565b005b610190600480360381019061018b9190611bcb565b6105a6565b60405161019d9190611f5c565b60405180910390f35b6101ae6105c4565b6040516101bb9190612199565b60405180910390f35b6101de60048036038101906101d99190611b7c565b6105ce565b6040516101eb9190611f5c565b60405180910390f35b6101fc6106a6565b60405161020991906121b4565b60405180910390f35b61022c60048036038101906102279190611bcb565b6106af565b6040516102399190611f5c565b60405180910390f35b61024a61075b565b005b61026660048036038101906102619190611bcb565b6107e1565b005b610282600480360381019061027d9190611c73565b61086b565b005b61028c61087f565b6040516102999190611f5c565b60405180910390f35b6102bc60048036038101906102b79190611b17565b610896565b6040516102c99190612199565b60405180910390f35b6102da6108de565b005b6102f660048036038101906102f19190611bcb565b610a1b565b005b610300610a9f565b005b61030a610b25565b6040516103179190611f41565b60405180910390f35b610328610b4f565b6040516103359190611f77565b60405180910390f35b61035860048036038101906103539190611bcb565b610be1565b6040516103659190611f5c565b60405180910390f35b61038860048036038101906103839190611bcb565b610cd5565b6040516103959190611f5c565b60405180910390f35b6103b860048036038101906103b39190611b40565b610dab565b6040516103c59190612199565b60405180910390f35b6103e860048036038101906103e39190611b17565b610e32565b005b6060600380546103f99061237a565b80601f01602080910402602001604051908101604052809291908181526020018280546104259061237a565b80156104725780601f1061044757610100808354040283529160200191610472565b820191906000526020600020905b81548152906001019060200180831161045557829003601f168201915b5050505050905090565b610484611132565b73ffffffffffffffffffffffffffffffffffffffff166104a2610b25565b73ffffffffffffffffffffffffffffffffffffffff16146104f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ef90612099565b60405180910390fd5b60005b82518110156105a15761058e838281518110610540577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151838381518110610581577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516107e1565b8080610599906123dd565b9150506104fb565b505050565b60006105ba6105b3611132565b848461113a565b6001905092915050565b6000600254905090565b6000836105d961087f565b15610691576105e6610b25565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806106515750610622610b25565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610690576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068790612139565b60405180910390fd5b5b61069c858585611305565b9150509392505050565b60006012905090565b60006107516106bc611132565b8484600160006106ca611132565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461074c9190612268565b61113a565b6001905092915050565b610763611132565b73ffffffffffffffffffffffffffffffffffffffff16610781610b25565b73ffffffffffffffffffffffffffffffffffffffff16146107d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ce90612099565b60405180910390fd5b6107df611406565b565b6107e9611132565b73ffffffffffffffffffffffffffffffffffffffff16610807610b25565b73ffffffffffffffffffffffffffffffffffffffff161461085d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085490612099565b60405180910390fd5b6108678282610fde565b5050565b61087c610876611132565b826114a8565b50565b6000600560149054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108e6611132565b73ffffffffffffffffffffffffffffffffffffffff16610904610b25565b73ffffffffffffffffffffffffffffffffffffffff161461095a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095190612099565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000610a2e83610a29611132565b610dab565b905081811015610a73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6a906120b9565b60405180910390fd5b610a9083610a7f611132565b8484610a8b91906122be565b61113a565b610a9a83836114a8565b505050565b610aa7611132565b73ffffffffffffffffffffffffffffffffffffffff16610ac5610b25565b73ffffffffffffffffffffffffffffffffffffffff1614610b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1290612099565b60405180910390fd5b610b2361167c565b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610b5e9061237a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b8a9061237a565b8015610bd75780601f10610bac57610100808354040283529160200191610bd7565b820191906000526020600020905b815481529060010190602001808311610bba57829003601f168201915b5050505050905090565b60008060016000610bf0611132565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610cad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca490612159565b60405180910390fd5b610cca610cb8611132565b858584610cc591906122be565b61113a565b600191505092915050565b600033610ce061087f565b15610d9857610ced610b25565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610d585750610d29610b25565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610d97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8e90612139565b60405180910390fd5b5b610da2848461171f565b91505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610e3a611132565b73ffffffffffffffffffffffffffffffffffffffff16610e58610b25565b73ffffffffffffffffffffffffffffffffffffffff1614610eae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea590612099565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1590611ff9565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561104e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104590612179565b60405180910390fd5b61105a6000838361173d565b806002600082825461106c9190612268565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546110c19190612268565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111269190612199565b60405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156111aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a190612119565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561121a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121190612019565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112f89190612199565b60405180910390a3505050565b6000611312848484611742565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061135d611132565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156113dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d490612079565b60405180910390fd5b6113fa856113e9611132565b85846113f591906122be565b61113a565b60019150509392505050565b61140e61087f565b61144d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144490611fb9565b60405180910390fd5b6000600560146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611491611132565b60405161149e9190611f41565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611518576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150f906120d9565b60405180910390fd5b6115248260008361173d565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a190611fd9565b60405180910390fd5b81816115b691906122be565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816002600082825461160a91906122be565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161166f9190612199565b60405180910390a3505050565b61168461087f565b156116c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bb90612059565b60405180910390fd5b6001600560146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611708611132565b6040516117159190611f41565b60405180910390a1565b600061173361172c611132565b8484611742565b6001905092915050565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156117b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a9906120f9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611822576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181990611f99565b60405180910390fd5b61182d83838361173d565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156118b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118aa90612039565b60405180910390fd5b81816118bf91906122be565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461194f9190612268565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516119b39190612199565b60405180910390a350505050565b60006119d46119cf846121f4565b6121cf565b905080838252602082019050828560208602820111156119f357600080fd5b60005b85811015611a235781611a098882611a99565b8452602084019350602083019250506001810190506119f6565b5050509392505050565b6000611a40611a3b84612220565b6121cf565b90508083825260208201905082856020860282011115611a5f57600080fd5b60005b85811015611a8f5781611a758882611b02565b845260208401935060208301925050600181019050611a62565b5050509392505050565b600081359050611aa88161291c565b92915050565b600082601f830112611abf57600080fd5b8135611acf8482602086016119c1565b91505092915050565b600082601f830112611ae957600080fd5b8135611af9848260208601611a2d565b91505092915050565b600081359050611b1181612933565b92915050565b600060208284031215611b2957600080fd5b6000611b3784828501611a99565b91505092915050565b60008060408385031215611b5357600080fd5b6000611b6185828601611a99565b9250506020611b7285828601611a99565b9150509250929050565b600080600060608486031215611b9157600080fd5b6000611b9f86828701611a99565b9350506020611bb086828701611a99565b9250506040611bc186828701611b02565b9150509250925092565b60008060408385031215611bde57600080fd5b6000611bec85828601611a99565b9250506020611bfd85828601611b02565b9150509250929050565b60008060408385031215611c1a57600080fd5b600083013567ffffffffffffffff811115611c3457600080fd5b611c4085828601611aae565b925050602083013567ffffffffffffffff811115611c5d57600080fd5b611c6985828601611ad8565b9150509250929050565b600060208284031215611c8557600080fd5b6000611c9384828501611b02565b91505092915050565b611ca5816122f2565b82525050565b611cb481612304565b82525050565b6000611cc58261224c565b611ccf8185612257565b9350611cdf818560208601612347565b611ce8816124b3565b840191505092915050565b6000611d00602383612257565b9150611d0b826124c4565b604082019050919050565b6000611d23601483612257565b9150611d2e82612513565b602082019050919050565b6000611d46602283612257565b9150611d518261253c565b604082019050919050565b6000611d69602683612257565b9150611d748261258b565b604082019050919050565b6000611d8c602283612257565b9150611d97826125da565b604082019050919050565b6000611daf602683612257565b9150611dba82612629565b604082019050919050565b6000611dd2601083612257565b9150611ddd82612678565b602082019050919050565b6000611df5602883612257565b9150611e00826126a1565b604082019050919050565b6000611e18602083612257565b9150611e23826126f0565b602082019050919050565b6000611e3b602483612257565b9150611e4682612719565b604082019050919050565b6000611e5e602183612257565b9150611e6982612768565b604082019050919050565b6000611e81602583612257565b9150611e8c826127b7565b604082019050919050565b6000611ea4602483612257565b9150611eaf82612806565b604082019050919050565b6000611ec7603983612257565b9150611ed282612855565b604082019050919050565b6000611eea602583612257565b9150611ef5826128a4565b604082019050919050565b6000611f0d601f83612257565b9150611f18826128f3565b602082019050919050565b611f2c81612330565b82525050565b611f3b8161233a565b82525050565b6000602082019050611f566000830184611c9c565b92915050565b6000602082019050611f716000830184611cab565b92915050565b60006020820190508181036000830152611f918184611cba565b905092915050565b60006020820190508181036000830152611fb281611cf3565b9050919050565b60006020820190508181036000830152611fd281611d16565b9050919050565b60006020820190508181036000830152611ff281611d39565b9050919050565b6000602082019050818103600083015261201281611d5c565b9050919050565b6000602082019050818103600083015261203281611d7f565b9050919050565b6000602082019050818103600083015261205281611da2565b9050919050565b6000602082019050818103600083015261207281611dc5565b9050919050565b6000602082019050818103600083015261209281611de8565b9050919050565b600060208201905081810360008301526120b281611e0b565b9050919050565b600060208201905081810360008301526120d281611e2e565b9050919050565b600060208201905081810360008301526120f281611e51565b9050919050565b6000602082019050818103600083015261211281611e74565b9050919050565b6000602082019050818103600083015261213281611e97565b9050919050565b6000602082019050818103600083015261215281611eba565b9050919050565b6000602082019050818103600083015261217281611edd565b9050919050565b6000602082019050818103600083015261219281611f00565b9050919050565b60006020820190506121ae6000830184611f23565b92915050565b60006020820190506121c96000830184611f32565b92915050565b60006121d96121ea565b90506121e582826123ac565b919050565b6000604051905090565b600067ffffffffffffffff82111561220f5761220e612484565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561223b5761223a612484565b5b602082029050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061227382612330565b915061227e83612330565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122b3576122b2612426565b5b828201905092915050565b60006122c982612330565b91506122d483612330565b9250828210156122e7576122e6612426565b5b828203905092915050565b60006122fd82612310565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561236557808201518184015260208101905061234a565b83811115612374576000848401525b50505050565b6000600282049050600182168061239257607f821691505b602082108114156123a6576123a5612455565b5b50919050565b6123b5826124b3565b810181811067ffffffffffffffff821117156123d4576123d3612484565b5b80604052505050565b60006123e882612330565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561241b5761241a612426565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a206e6f7420617574686f72697a656420746f206578656360008201527f757465207472616e73666572207768696c652070617573656400000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b612925816122f2565b811461293057600080fd5b50565b61293c81612330565b811461294757600080fd5b5056fea26469706673582212203c7eac74faa44d2ff117a4a78701ffd894fb734e028b59ffc946b5e7efd45b7d64736f6c63430008010033000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000008a0000000000000000000000000000000000000000000000000000000000000004200000000000000000000000000a2ddfa736214563cea9aef5100f2e90c40291800000000000000000000000003fadce719ca1cfe4f114e18c862be25e40fbf3c0000000000000000000000000ebcf026946a4de6155961d66d53b0100c6271a1000000000000000000000000133d93566f9699b3af46fe150daa8a67a9563ed600000000000000000000000015344ecdc2c4edfcb092e284d93c20f0529fd8a60000000000000000000000001806b72247189250cb32d16014dd5282815a9af20000000000000000000000001e77a07c44cc4b21b2652dcab2aebd3300295282000000000000000000000000240cf70d8a648be133feb342d71e5e81c686e5f800000000000000000000000027f7e530d0c1ab780d8d6962e9cfd45a9c96d8b90000000000000000000000002e7f4dd3acd226ddae10246a45337f815cf6b3ff00000000000000000000000032087947f4ea79c3e17f84bc2d0e5212fdeca668000000000000000000000000339adea1f8eb0ab44f2e429ec05495b0e6154e68000000000000000000000000355382c41debac9ff3161eaa37472e8efeb0db6a00000000000000000000000036dbcbb5c90e9b00ab658353696610cc5d7b700200000000000000000000000037341cbb14c5f128a70b149726ad8b2ce6f4c79300000000000000000000000039fd60c5d585644e2d6084b0d659adbe86d450ed0000000000000000000000003a8af31d3cfe775172853528167bb2b5760bf7b90000000000000000000000003e7dd7df9c1ffd12b8ecd94a27472bdc4d87ab7e00000000000000000000000043226e434e3120e98ce4c4dd52d358a2a390b8d400000000000000000000000050ce06ab2404c72fbd57620ea8aa0e282065a83100000000000000000000000058b753f0c417494226af608b63e80028255cbc640000000000000000000000005db06acd673531218b10430ba6de9b69913ad545000000000000000000000000603de400427109449691363c45acb89f02ebbb21000000000000000000000000611bb77d28ee1c06fdc026d7c796d3b1147bf71800000000000000000000000061580ab72e647f32bbb1939abdc7c0de49371a0800000000000000000000000061ffe691821291d02e9ba5d33098adcee71a3a17000000000000000000000000639749b7b08aee65039c21d8a411103c6cebebf000000000000000000000000066b1de0f14a0ce971f7f248415063d44caf193980000000000000000000000007681c36da544f25aa37b14d799628530cb07132200000000000000000000000076bc4c780dd85558bc4b24a4f262f4eb0be78ca700000000000000000000000077d5327f5ecab2f81ba73b2e32b25aaf725e7af500000000000000000000000078b864a7bce3888460ae9793b827ce521ac0d7bf0000000000000000000000007b2fe039d506ab01f29f5d57b69b3d2882a896bc0000000000000000000000007c95176406181f8f8b3c4b3b756a1994d77a510c0000000000000000000000007f3a152f09324f2aee916ce069d3908603449173000000000000000000000000937f5b32bc3cafcd1b02462f93e6ae5a843f6c6a00000000000000000000000099ad257e59ef87866e155417597956c40f23784a0000000000000000000000009a97dbc9baa91707b5bde45c810536c17b8ceb150000000000000000000000009fcd5693e875fe267c6c94151f78e733d8751abf000000000000000000000000a13ee4362f171b5c62be230e5eb2fee8c375b875000000000000000000000000a15ca74e65bf72730811abf95163e89ad9b9dff6000000000000000000000000a21392dd4b12cb543fb6d1e4e8759b3ac6e55169000000000000000000000000a34c8558b22bced464a4c0cf222457bdc632d1d8000000000000000000000000a905366592eb4b83aec2704ad6e5965ef3bf851f000000000000000000000000aa01dec5307cf17f20881a3286dcaa062578cea7000000000000000000000000acba499f7f33119001077700734010c5fbb82fee000000000000000000000000acf22f5efef78ab84c169269b7a2e2dcd1066aaa000000000000000000000000b1b7586656116d546033e3baff69bfcd6592225e000000000000000000000000b5d9c1cde53c0e2d1987a1680b242d576f884df9000000000000000000000000b975a92bd975b9910db41e0c0f8c037288663282000000000000000000000000bd9f96663e07a83ff18915c9074d9dc04d8e64c9000000000000000000000000c02624affa30299fa164e7176a37610835a923a7000000000000000000000000c3c54ee8b495a5004602aff40c5880fb8e375aad000000000000000000000000c9d486048a9b82172f6f2a2ce6d9024c9d1097dc000000000000000000000000cbe203901e2f3ca910558efba39a48af89e3c558000000000000000000000000d0f9ab32d8f0960a26f53ae79316689e8f1e3492000000000000000000000000d8879be0032092eb5e610d5a2ab64e56ae010348000000000000000000000000e69801ca7dd2b8b41178df3796abe7b01f005b42000000000000000000000000ee3eb94148cd432df78f380c4ec0f12b1d9fc551000000000000000000000000ef7cfd3a5a1a9ddd3f4582f14b9a98b3e86eded1000000000000000000000000f2d89aed137edab8be23584b43621024869e6d39000000000000000000000000f6bd8c23142533661d67dc2c724e12c6f43f5b1c000000000000000000000000f7bc1f442d436afe5754b565bff030c281c9aa90000000000000000000000000f93d4ec4cadec63a68fe13ad5bb1abed44ebb81c000000000000000000000000fc39cf99b4bd04f9689d7a1fc4c822a6d754502b000000000000000000000000fca1430f46267ae2e44d52831dcda37058c5860a00000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000045f1ad4c03f800000000000000000000000000000000000000000000000000004ab9ff29eb073a00000000000000000000000000000000000000000000000004563918244f40000000000000000000000000000000000000000000000000000340aad21b3b700000000000000000000000000000000000000000000000000000d570bc83658200000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000b0130e075bc4c000000000000000000000000000000000000000000000000000c1c3a78e70e63800000000000000000000000000000000000000000000000001b1ae4d6e2ef500000000000000000000000000000000000000000000000000006ac091161071ab0000000000000000000000000000000000000000000000000029a2241af62c00000000000000000000000000000000000000000000000000000a688906bd8b000000000000000000000000000000000000000000000000000256da7a87095b980000000000000000000000000000000000000000000000000008ac7230489e80000000000000000000000000000000000000000000000000000ebe3403181b3c0000000000000000000000000000000000000000000000000008ac7230489e80000000000000000000000000000000000000000000000000000347541f902fa0000000000000000000000000000000000000000000000000001314fb3706298000000000000000000000000000000000000000000000000000e2c01f32888e1c0000000000000000000000000000000000000000000000000001bc16d674ec80000000000000000000000000000000000000000000000000001158e460913d00000000000000000000000000000000000000000000000000003c5c8734928fc00000000000000000000000000000000000000000000000000042b85aae7d60d7b4000000000000000000000000000000000000000000000000d9cb6679d7c9600000000000000000000000000000000000000000000000000383b00a72fddda20000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000001ef61aadfde58000000000000000000000000000000000000000000000000001215a14882ee5000000000000000000000000000000000000000000000000000727de34a24f9000000000000000000000000000000000000000000000000000004563918244f4000000000000000000000000000000000000000000000000000270801d946c9400000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000010c3d83b78654e00000000000000000000000000000000000000000000000000249ab9f677b090000000000000000000000000000000000000000000000000001d59fd4b53f3800000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000004563918244f40000000000000000000000000000000000000000000000000004ed821d4270fa2000000000000000000000000000000000000000000000000000ebec21ee1da400000000000000000000000000000000000000000000000000049b9ca9a6943400000000000000000000000000000000000000000000000000008f0c478a967c2500000000000000000000000000000000000000000000000002086ac35105260000000000000000000000000000000000000000000000000006cfc75b03b7c540000000000000000000000000000000000000000000000000031b327e695de2000000000000000000000000000000000000000000000000000ad78ebc5ac620000000000000000000000000000000000000000000000000007ea6027001a3e60000000000000000000000000000000000000000000000000002808064f88e9a8000000000000000000000000000000000000000000000000006ac091161071ab00000000000000000000000000000000000000000000000000b2d998f816d8c000000000000000000000000000000000000000000000000000100762616b9380000000000000000000000000000000000000000000000000002685391334fdf80000000000000000000000000000000000000000000000000015af1d78b58c40000000000000000000000000000000000000000000000000002086ac35105260000000000000000000000000000000000000000000000000002b5e3af16b188000000000000000000000000000000000000000000000000001102a7d07d92b900000000000000000000000000000000000000000000000000001bc16d674ec800000000000000000000000000000000000000000000000000097c9ce4cf6d5c00000000000000000000000000000000000000000000000000165382eaf245870000000000000000000000000000000000000000000000000028a857425466f800000000000000000000000000000000000000000000000000001f399b1438a10000000000000000000000000000000000000000000000000003afb087b8769000000000000000000000000000000000000000000000000000068155a43676e00000000000000000000000000000000000000000000000000005867782732a3a8e000000000000000000000000000000000000000000000000004563918244f40000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c80635c975abb116100b85780638da5cb5b1161007c5780638da5cb5b1461030257806395d89b4114610320578063a457c2d71461033e578063a9059cbb1461036e578063dd62ed3e1461039e578063f2fde38b146103ce57610137565b80635c975abb1461028457806370a08231146102a2578063715018a6146102d257806379cc6790146102dc5780638456cb59146102f857610137565b8063313ce567116100ff578063313ce567146101f457806339509351146102125780633f4ba83a1461024257806340c10f191461024c57806342966c681461026857610137565b806306fdde031461013c57806307ea54771461015a578063095ea7b31461017657806318160ddd146101a657806323b872dd146101c4575b600080fd5b6101446103ea565b6040516101519190611f77565b60405180910390f35b610174600480360381019061016f9190611c07565b61047c565b005b610190600480360381019061018b9190611bcb565b6105a6565b60405161019d9190611f5c565b60405180910390f35b6101ae6105c4565b6040516101bb9190612199565b60405180910390f35b6101de60048036038101906101d99190611b7c565b6105ce565b6040516101eb9190611f5c565b60405180910390f35b6101fc6106a6565b60405161020991906121b4565b60405180910390f35b61022c60048036038101906102279190611bcb565b6106af565b6040516102399190611f5c565b60405180910390f35b61024a61075b565b005b61026660048036038101906102619190611bcb565b6107e1565b005b610282600480360381019061027d9190611c73565b61086b565b005b61028c61087f565b6040516102999190611f5c565b60405180910390f35b6102bc60048036038101906102b79190611b17565b610896565b6040516102c99190612199565b60405180910390f35b6102da6108de565b005b6102f660048036038101906102f19190611bcb565b610a1b565b005b610300610a9f565b005b61030a610b25565b6040516103179190611f41565b60405180910390f35b610328610b4f565b6040516103359190611f77565b60405180910390f35b61035860048036038101906103539190611bcb565b610be1565b6040516103659190611f5c565b60405180910390f35b61038860048036038101906103839190611bcb565b610cd5565b6040516103959190611f5c565b60405180910390f35b6103b860048036038101906103b39190611b40565b610dab565b6040516103c59190612199565b60405180910390f35b6103e860048036038101906103e39190611b17565b610e32565b005b6060600380546103f99061237a565b80601f01602080910402602001604051908101604052809291908181526020018280546104259061237a565b80156104725780601f1061044757610100808354040283529160200191610472565b820191906000526020600020905b81548152906001019060200180831161045557829003601f168201915b5050505050905090565b610484611132565b73ffffffffffffffffffffffffffffffffffffffff166104a2610b25565b73ffffffffffffffffffffffffffffffffffffffff16146104f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ef90612099565b60405180910390fd5b60005b82518110156105a15761058e838281518110610540577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151838381518110610581577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516107e1565b8080610599906123dd565b9150506104fb565b505050565b60006105ba6105b3611132565b848461113a565b6001905092915050565b6000600254905090565b6000836105d961087f565b15610691576105e6610b25565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806106515750610622610b25565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610690576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161068790612139565b60405180910390fd5b5b61069c858585611305565b9150509392505050565b60006012905090565b60006107516106bc611132565b8484600160006106ca611132565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461074c9190612268565b61113a565b6001905092915050565b610763611132565b73ffffffffffffffffffffffffffffffffffffffff16610781610b25565b73ffffffffffffffffffffffffffffffffffffffff16146107d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ce90612099565b60405180910390fd5b6107df611406565b565b6107e9611132565b73ffffffffffffffffffffffffffffffffffffffff16610807610b25565b73ffffffffffffffffffffffffffffffffffffffff161461085d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085490612099565b60405180910390fd5b6108678282610fde565b5050565b61087c610876611132565b826114a8565b50565b6000600560149054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6108e6611132565b73ffffffffffffffffffffffffffffffffffffffff16610904610b25565b73ffffffffffffffffffffffffffffffffffffffff161461095a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095190612099565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000610a2e83610a29611132565b610dab565b905081811015610a73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6a906120b9565b60405180910390fd5b610a9083610a7f611132565b8484610a8b91906122be565b61113a565b610a9a83836114a8565b505050565b610aa7611132565b73ffffffffffffffffffffffffffffffffffffffff16610ac5610b25565b73ffffffffffffffffffffffffffffffffffffffff1614610b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1290612099565b60405180910390fd5b610b2361167c565b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610b5e9061237a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b8a9061237a565b8015610bd75780601f10610bac57610100808354040283529160200191610bd7565b820191906000526020600020905b815481529060010190602001808311610bba57829003601f168201915b5050505050905090565b60008060016000610bf0611132565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610cad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca490612159565b60405180910390fd5b610cca610cb8611132565b858584610cc591906122be565b61113a565b600191505092915050565b600033610ce061087f565b15610d9857610ced610b25565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610d585750610d29610b25565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b610d97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8e90612139565b60405180910390fd5b5b610da2848461171f565b91505092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610e3a611132565b73ffffffffffffffffffffffffffffffffffffffff16610e58610b25565b73ffffffffffffffffffffffffffffffffffffffff1614610eae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea590612099565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1590611ff9565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561104e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104590612179565b60405180910390fd5b61105a6000838361173d565b806002600082825461106c9190612268565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546110c19190612268565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111269190612199565b60405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156111aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a190612119565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561121a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121190612019565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112f89190612199565b60405180910390a3505050565b6000611312848484611742565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061135d611132565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156113dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113d490612079565b60405180910390fd5b6113fa856113e9611132565b85846113f591906122be565b61113a565b60019150509392505050565b61140e61087f565b61144d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144490611fb9565b60405180910390fd5b6000600560146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611491611132565b60405161149e9190611f41565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611518576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150f906120d9565b60405180910390fd5b6115248260008361173d565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a190611fd9565b60405180910390fd5b81816115b691906122be565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816002600082825461160a91906122be565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161166f9190612199565b60405180910390a3505050565b61168461087f565b156116c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bb90612059565b60405180910390fd5b6001600560146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611708611132565b6040516117159190611f41565b60405180910390a1565b600061173361172c611132565b8484611742565b6001905092915050565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156117b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a9906120f9565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611822576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181990611f99565b60405180910390fd5b61182d83838361173d565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156118b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118aa90612039565b60405180910390fd5b81816118bf91906122be565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461194f9190612268565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516119b39190612199565b60405180910390a350505050565b60006119d46119cf846121f4565b6121cf565b905080838252602082019050828560208602820111156119f357600080fd5b60005b85811015611a235781611a098882611a99565b8452602084019350602083019250506001810190506119f6565b5050509392505050565b6000611a40611a3b84612220565b6121cf565b90508083825260208201905082856020860282011115611a5f57600080fd5b60005b85811015611a8f5781611a758882611b02565b845260208401935060208301925050600181019050611a62565b5050509392505050565b600081359050611aa88161291c565b92915050565b600082601f830112611abf57600080fd5b8135611acf8482602086016119c1565b91505092915050565b600082601f830112611ae957600080fd5b8135611af9848260208601611a2d565b91505092915050565b600081359050611b1181612933565b92915050565b600060208284031215611b2957600080fd5b6000611b3784828501611a99565b91505092915050565b60008060408385031215611b5357600080fd5b6000611b6185828601611a99565b9250506020611b7285828601611a99565b9150509250929050565b600080600060608486031215611b9157600080fd5b6000611b9f86828701611a99565b9350506020611bb086828701611a99565b9250506040611bc186828701611b02565b9150509250925092565b60008060408385031215611bde57600080fd5b6000611bec85828601611a99565b9250506020611bfd85828601611b02565b9150509250929050565b60008060408385031215611c1a57600080fd5b600083013567ffffffffffffffff811115611c3457600080fd5b611c4085828601611aae565b925050602083013567ffffffffffffffff811115611c5d57600080fd5b611c6985828601611ad8565b9150509250929050565b600060208284031215611c8557600080fd5b6000611c9384828501611b02565b91505092915050565b611ca5816122f2565b82525050565b611cb481612304565b82525050565b6000611cc58261224c565b611ccf8185612257565b9350611cdf818560208601612347565b611ce8816124b3565b840191505092915050565b6000611d00602383612257565b9150611d0b826124c4565b604082019050919050565b6000611d23601483612257565b9150611d2e82612513565b602082019050919050565b6000611d46602283612257565b9150611d518261253c565b604082019050919050565b6000611d69602683612257565b9150611d748261258b565b604082019050919050565b6000611d8c602283612257565b9150611d97826125da565b604082019050919050565b6000611daf602683612257565b9150611dba82612629565b604082019050919050565b6000611dd2601083612257565b9150611ddd82612678565b602082019050919050565b6000611df5602883612257565b9150611e00826126a1565b604082019050919050565b6000611e18602083612257565b9150611e23826126f0565b602082019050919050565b6000611e3b602483612257565b9150611e4682612719565b604082019050919050565b6000611e5e602183612257565b9150611e6982612768565b604082019050919050565b6000611e81602583612257565b9150611e8c826127b7565b604082019050919050565b6000611ea4602483612257565b9150611eaf82612806565b604082019050919050565b6000611ec7603983612257565b9150611ed282612855565b604082019050919050565b6000611eea602583612257565b9150611ef5826128a4565b604082019050919050565b6000611f0d601f83612257565b9150611f18826128f3565b602082019050919050565b611f2c81612330565b82525050565b611f3b8161233a565b82525050565b6000602082019050611f566000830184611c9c565b92915050565b6000602082019050611f716000830184611cab565b92915050565b60006020820190508181036000830152611f918184611cba565b905092915050565b60006020820190508181036000830152611fb281611cf3565b9050919050565b60006020820190508181036000830152611fd281611d16565b9050919050565b60006020820190508181036000830152611ff281611d39565b9050919050565b6000602082019050818103600083015261201281611d5c565b9050919050565b6000602082019050818103600083015261203281611d7f565b9050919050565b6000602082019050818103600083015261205281611da2565b9050919050565b6000602082019050818103600083015261207281611dc5565b9050919050565b6000602082019050818103600083015261209281611de8565b9050919050565b600060208201905081810360008301526120b281611e0b565b9050919050565b600060208201905081810360008301526120d281611e2e565b9050919050565b600060208201905081810360008301526120f281611e51565b9050919050565b6000602082019050818103600083015261211281611e74565b9050919050565b6000602082019050818103600083015261213281611e97565b9050919050565b6000602082019050818103600083015261215281611eba565b9050919050565b6000602082019050818103600083015261217281611edd565b9050919050565b6000602082019050818103600083015261219281611f00565b9050919050565b60006020820190506121ae6000830184611f23565b92915050565b60006020820190506121c96000830184611f32565b92915050565b60006121d96121ea565b90506121e582826123ac565b919050565b6000604051905090565b600067ffffffffffffffff82111561220f5761220e612484565b5b602082029050602081019050919050565b600067ffffffffffffffff82111561223b5761223a612484565b5b602082029050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600061227382612330565b915061227e83612330565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156122b3576122b2612426565b5b828201905092915050565b60006122c982612330565b91506122d483612330565b9250828210156122e7576122e6612426565b5b828203905092915050565b60006122fd82612310565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561236557808201518184015260208101905061234a565b83811115612374576000848401525b50505050565b6000600282049050600182168061239257607f821691505b602082108114156123a6576123a5612455565b5b50919050565b6123b5826124b3565b810181811067ffffffffffffffff821117156123d4576123d3612484565b5b80604052505050565b60006123e882612330565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561241b5761241a612426565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f5061757361626c653a206e6f7420617574686f72697a656420746f206578656360008201527f757465207472616e73666572207768696c652070617573656400000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b612925816122f2565b811461293057600080fd5b50565b61293c81612330565b811461294757600080fd5b5056fea26469706673582212203c7eac74faa44d2ff117a4a78701ffd894fb734e028b59ffc946b5e7efd45b7d64736f6c63430008010033

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

000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000008a0000000000000000000000000000000000000000000000000000000000000004200000000000000000000000000a2ddfa736214563cea9aef5100f2e90c40291800000000000000000000000003fadce719ca1cfe4f114e18c862be25e40fbf3c0000000000000000000000000ebcf026946a4de6155961d66d53b0100c6271a1000000000000000000000000133d93566f9699b3af46fe150daa8a67a9563ed600000000000000000000000015344ecdc2c4edfcb092e284d93c20f0529fd8a60000000000000000000000001806b72247189250cb32d16014dd5282815a9af20000000000000000000000001e77a07c44cc4b21b2652dcab2aebd3300295282000000000000000000000000240cf70d8a648be133feb342d71e5e81c686e5f800000000000000000000000027f7e530d0c1ab780d8d6962e9cfd45a9c96d8b90000000000000000000000002e7f4dd3acd226ddae10246a45337f815cf6b3ff00000000000000000000000032087947f4ea79c3e17f84bc2d0e5212fdeca668000000000000000000000000339adea1f8eb0ab44f2e429ec05495b0e6154e68000000000000000000000000355382c41debac9ff3161eaa37472e8efeb0db6a00000000000000000000000036dbcbb5c90e9b00ab658353696610cc5d7b700200000000000000000000000037341cbb14c5f128a70b149726ad8b2ce6f4c79300000000000000000000000039fd60c5d585644e2d6084b0d659adbe86d450ed0000000000000000000000003a8af31d3cfe775172853528167bb2b5760bf7b90000000000000000000000003e7dd7df9c1ffd12b8ecd94a27472bdc4d87ab7e00000000000000000000000043226e434e3120e98ce4c4dd52d358a2a390b8d400000000000000000000000050ce06ab2404c72fbd57620ea8aa0e282065a83100000000000000000000000058b753f0c417494226af608b63e80028255cbc640000000000000000000000005db06acd673531218b10430ba6de9b69913ad545000000000000000000000000603de400427109449691363c45acb89f02ebbb21000000000000000000000000611bb77d28ee1c06fdc026d7c796d3b1147bf71800000000000000000000000061580ab72e647f32bbb1939abdc7c0de49371a0800000000000000000000000061ffe691821291d02e9ba5d33098adcee71a3a17000000000000000000000000639749b7b08aee65039c21d8a411103c6cebebf000000000000000000000000066b1de0f14a0ce971f7f248415063d44caf193980000000000000000000000007681c36da544f25aa37b14d799628530cb07132200000000000000000000000076bc4c780dd85558bc4b24a4f262f4eb0be78ca700000000000000000000000077d5327f5ecab2f81ba73b2e32b25aaf725e7af500000000000000000000000078b864a7bce3888460ae9793b827ce521ac0d7bf0000000000000000000000007b2fe039d506ab01f29f5d57b69b3d2882a896bc0000000000000000000000007c95176406181f8f8b3c4b3b756a1994d77a510c0000000000000000000000007f3a152f09324f2aee916ce069d3908603449173000000000000000000000000937f5b32bc3cafcd1b02462f93e6ae5a843f6c6a00000000000000000000000099ad257e59ef87866e155417597956c40f23784a0000000000000000000000009a97dbc9baa91707b5bde45c810536c17b8ceb150000000000000000000000009fcd5693e875fe267c6c94151f78e733d8751abf000000000000000000000000a13ee4362f171b5c62be230e5eb2fee8c375b875000000000000000000000000a15ca74e65bf72730811abf95163e89ad9b9dff6000000000000000000000000a21392dd4b12cb543fb6d1e4e8759b3ac6e55169000000000000000000000000a34c8558b22bced464a4c0cf222457bdc632d1d8000000000000000000000000a905366592eb4b83aec2704ad6e5965ef3bf851f000000000000000000000000aa01dec5307cf17f20881a3286dcaa062578cea7000000000000000000000000acba499f7f33119001077700734010c5fbb82fee000000000000000000000000acf22f5efef78ab84c169269b7a2e2dcd1066aaa000000000000000000000000b1b7586656116d546033e3baff69bfcd6592225e000000000000000000000000b5d9c1cde53c0e2d1987a1680b242d576f884df9000000000000000000000000b975a92bd975b9910db41e0c0f8c037288663282000000000000000000000000bd9f96663e07a83ff18915c9074d9dc04d8e64c9000000000000000000000000c02624affa30299fa164e7176a37610835a923a7000000000000000000000000c3c54ee8b495a5004602aff40c5880fb8e375aad000000000000000000000000c9d486048a9b82172f6f2a2ce6d9024c9d1097dc000000000000000000000000cbe203901e2f3ca910558efba39a48af89e3c558000000000000000000000000d0f9ab32d8f0960a26f53ae79316689e8f1e3492000000000000000000000000d8879be0032092eb5e610d5a2ab64e56ae010348000000000000000000000000e69801ca7dd2b8b41178df3796abe7b01f005b42000000000000000000000000ee3eb94148cd432df78f380c4ec0f12b1d9fc551000000000000000000000000ef7cfd3a5a1a9ddd3f4582f14b9a98b3e86eded1000000000000000000000000f2d89aed137edab8be23584b43621024869e6d39000000000000000000000000f6bd8c23142533661d67dc2c724e12c6f43f5b1c000000000000000000000000f7bc1f442d436afe5754b565bff030c281c9aa90000000000000000000000000f93d4ec4cadec63a68fe13ad5bb1abed44ebb81c000000000000000000000000fc39cf99b4bd04f9689d7a1fc4c822a6d754502b000000000000000000000000fca1430f46267ae2e44d52831dcda37058c5860a00000000000000000000000000000000000000000000000000000000000000420000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000045f1ad4c03f800000000000000000000000000000000000000000000000000004ab9ff29eb073a00000000000000000000000000000000000000000000000004563918244f40000000000000000000000000000000000000000000000000000340aad21b3b700000000000000000000000000000000000000000000000000000d570bc83658200000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000008ac7230489e8000000000000000000000000000000000000000000000000000b0130e075bc4c000000000000000000000000000000000000000000000000000c1c3a78e70e63800000000000000000000000000000000000000000000000001b1ae4d6e2ef500000000000000000000000000000000000000000000000000006ac091161071ab0000000000000000000000000000000000000000000000000029a2241af62c00000000000000000000000000000000000000000000000000000a688906bd8b000000000000000000000000000000000000000000000000000256da7a87095b980000000000000000000000000000000000000000000000000008ac7230489e80000000000000000000000000000000000000000000000000000ebe3403181b3c0000000000000000000000000000000000000000000000000008ac7230489e80000000000000000000000000000000000000000000000000000347541f902fa0000000000000000000000000000000000000000000000000001314fb3706298000000000000000000000000000000000000000000000000000e2c01f32888e1c0000000000000000000000000000000000000000000000000001bc16d674ec80000000000000000000000000000000000000000000000000001158e460913d00000000000000000000000000000000000000000000000000003c5c8734928fc00000000000000000000000000000000000000000000000000042b85aae7d60d7b4000000000000000000000000000000000000000000000000d9cb6679d7c9600000000000000000000000000000000000000000000000000383b00a72fddda20000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000001ef61aadfde58000000000000000000000000000000000000000000000000001215a14882ee5000000000000000000000000000000000000000000000000000727de34a24f9000000000000000000000000000000000000000000000000000004563918244f4000000000000000000000000000000000000000000000000000270801d946c9400000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000010c3d83b78654e00000000000000000000000000000000000000000000000000249ab9f677b090000000000000000000000000000000000000000000000000001d59fd4b53f3800000000000000000000000000000000000000000000000000008ac7230489e800000000000000000000000000000000000000000000000000004563918244f40000000000000000000000000000000000000000000000000004ed821d4270fa2000000000000000000000000000000000000000000000000000ebec21ee1da400000000000000000000000000000000000000000000000000049b9ca9a6943400000000000000000000000000000000000000000000000000008f0c478a967c2500000000000000000000000000000000000000000000000002086ac35105260000000000000000000000000000000000000000000000000006cfc75b03b7c540000000000000000000000000000000000000000000000000031b327e695de2000000000000000000000000000000000000000000000000000ad78ebc5ac620000000000000000000000000000000000000000000000000007ea6027001a3e60000000000000000000000000000000000000000000000000002808064f88e9a8000000000000000000000000000000000000000000000000006ac091161071ab00000000000000000000000000000000000000000000000000b2d998f816d8c000000000000000000000000000000000000000000000000000100762616b9380000000000000000000000000000000000000000000000000002685391334fdf80000000000000000000000000000000000000000000000000015af1d78b58c40000000000000000000000000000000000000000000000000002086ac35105260000000000000000000000000000000000000000000000000002b5e3af16b188000000000000000000000000000000000000000000000000001102a7d07d92b900000000000000000000000000000000000000000000000000001bc16d674ec800000000000000000000000000000000000000000000000000097c9ce4cf6d5c00000000000000000000000000000000000000000000000000165382eaf245870000000000000000000000000000000000000000000000000028a857425466f800000000000000000000000000000000000000000000000000001f399b1438a10000000000000000000000000000000000000000000000000003afb087b8769000000000000000000000000000000000000000000000000000068155a43676e00000000000000000000000000000000000000000000000000005867782732a3a8e000000000000000000000000000000000000000000000000004563918244f40000

-----Decoded View---------------
Arg [0] : tokenHolders (address[]): 0x00a2Ddfa736214563CEa9AEf5100f2e90c402918,0x03fAdCE719cA1cFE4F114E18c862Be25e40fbF3c,0x0EBcf026946A4de6155961d66D53b0100c6271a1,0x133D93566f9699B3Af46fE150daA8a67a9563ED6,0x15344EcDc2c4EDFCB092E284d93c20F0529FD8a6,0x1806B72247189250CB32D16014Dd5282815a9Af2,0x1E77a07c44CC4B21b2652dcAB2aebD3300295282,0x240Cf70D8A648BE133fEB342D71E5e81C686e5f8,0x27f7E530d0c1aB780d8d6962e9Cfd45a9C96d8b9,0x2E7F4dD3acD226DdAe10246a45337F815CF6B3ff,0x32087947f4ea79c3e17F84bC2D0E5212FDecA668,0x339aDeA1f8Eb0Ab44f2E429eC05495b0e6154E68,0x355382c41dEBaC9FF3161Eaa37472e8EFEB0DB6a,0x36dbcbB5C90E9b00aB658353696610CC5d7B7002,0x37341cbb14c5F128A70B149726ad8B2CE6F4C793,0x39Fd60c5D585644e2d6084B0d659aDbE86D450eD,0x3A8Af31D3cFE775172853528167bb2b5760bf7b9,0x3E7dd7DF9C1FfD12B8ecD94A27472BDc4d87AB7E,0x43226e434e3120E98ce4c4dd52d358a2A390b8D4,0x50CE06Ab2404C72fbD57620EA8aa0E282065A831,0x58B753F0c417494226Af608B63E80028255CBc64,0x5Db06acd673531218B10430bA6dE9b69913Ad545,0x603De400427109449691363C45acb89F02EBBb21,0x611bB77d28Ee1c06fdC026d7c796D3B1147BF718,0x61580AB72e647f32BBb1939abDC7C0De49371A08,0x61FfE691821291D02E9Ba5D33098ADcee71a3a17,0x639749b7b08aEe65039c21d8a411103C6ceBEBF0,0x66b1De0f14a0ce971F7f248415063D44CAF19398,0x7681c36dA544f25aA37B14d799628530cB071322,0x76bc4C780Dd85558Bc4B24a4f262f4eB0bE78ca7,0x77D5327F5ecaB2f81BA73b2E32b25aaf725e7af5,0x78B864A7bcE3888460Ae9793B827cE521AC0d7Bf,0x7B2FE039D506ab01f29F5d57B69b3D2882a896BC,0x7c95176406181f8f8b3c4b3B756a1994D77A510C,0x7f3A152F09324f2aee916CE069D3908603449173,0x937F5b32Bc3cafcd1B02462F93e6AE5a843f6C6A,0x99Ad257e59Ef87866E155417597956c40f23784a,0x9A97Dbc9BAa91707B5bde45C810536C17b8cEB15,0x9FcD5693E875Fe267C6c94151f78E733d8751abf,0xa13Ee4362f171B5c62be230E5EB2fEe8C375b875,0xa15Ca74e65bf72730811ABF95163E89aD9b9DFF6,0xA21392dD4b12CB543Fb6d1e4e8759B3AC6e55169,0xA34c8558B22bcEd464a4c0cf222457bDC632D1d8,0xa905366592Eb4b83aEC2704Ad6E5965eF3bf851f,0xAa01DeC5307CF17F20881A3286dcaA062578cea7,0xACBa499f7F33119001077700734010C5fBb82FEe,0xAcF22f5Efef78aB84C169269B7A2E2dcd1066aAa,0xB1B7586656116D546033e3bAFF69BFcD6592225E,0xB5d9c1cdE53c0e2D1987A1680B242d576f884dF9,0xB975A92Bd975B9910db41E0C0f8c037288663282,0xbD9f96663E07a83ff18915c9074d9dc04d8E64c9,0xc02624Affa30299fA164e7176A37610835A923A7,0xC3C54Ee8B495A5004602AFf40c5880fb8E375aaD,0xc9d486048A9B82172F6f2A2ce6D9024c9D1097dC,0xCBE203901E2F3CA910558Efba39a48Af89e3c558,0xd0F9AB32D8F0960a26f53Ae79316689e8f1e3492,0xd8879be0032092eb5E610d5a2aB64E56Ae010348,0xe69801CA7dD2B8B41178dF3796ABE7b01F005b42,0xEe3Eb94148cd432Df78f380C4Ec0F12B1d9fC551,0xeF7cFd3A5a1a9ddD3F4582f14B9A98B3e86eDED1,0xf2D89aeD137EDaB8be23584B43621024869E6D39,0xF6BD8C23142533661D67dc2c724E12C6F43F5B1C,0xf7bC1F442d436AFe5754b565bff030c281c9Aa90,0xf93d4eC4cADeC63A68FE13aD5BB1Abed44ebb81c,0xfC39CF99B4bd04F9689d7a1fC4c822a6D754502B,0xFCA1430f46267Ae2E44d52831DcDA37058C5860A
Arg [1] : amounts (uint256[]): 10000000000000000000,5040000000000000000,5384615385000000000,80000000000000000000,60000000000000000000,15380000000000000000,10000000000000000000,10000000000000000000,203000000000000000000,223395000000000000000,500000000000000000000,123076923000000000000,48000000000000000000,12000000000000000000,690431000000000000000,10000000000000000000,16997500000000000000,10000000000000000000,3780000000000000000,22000000000000000000,261425500000000000000,2000000000000000000,20000000000000000000,69592000000000000000,76923076923077000000,251100000000000000000,1037269250000000000000,10000000000000000000,2231000000000000000,20850000000000000000,132000000000000000000,5000000000000000000,45000000000000000000,10000000000000000000,19328750000000000000,42202000000000000000,33840000000000000000,10000000000000000000,5000000000000000000,90901250000000000000,17000000000000000000,85000000000000000000,10307692307700000000,37500000000000000000,125652500000000000000,57300000000000000000,200000000000000000000,2336252000000000000000,46153000000000000000,123076923000000000000,206200000000000000000,18480000000000000000,44411000000000000000,25000000000000000000,37500000000000000000,50000000000000000000,313786000000000000000,2000000000000000000,175000000000000000000,411846000000000000000,750000000000000000000,2250000000000000000,68000000000000000000,120000000000000000000,101923076923000000000,5000000000000000000

-----Encoded View---------------
136 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 00000000000000000000000000000000000000000000000000000000000008a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000042
Arg [3] : 00000000000000000000000000a2ddfa736214563cea9aef5100f2e90c402918
Arg [4] : 00000000000000000000000003fadce719ca1cfe4f114e18c862be25e40fbf3c
Arg [5] : 0000000000000000000000000ebcf026946a4de6155961d66d53b0100c6271a1
Arg [6] : 000000000000000000000000133d93566f9699b3af46fe150daa8a67a9563ed6
Arg [7] : 00000000000000000000000015344ecdc2c4edfcb092e284d93c20f0529fd8a6
Arg [8] : 0000000000000000000000001806b72247189250cb32d16014dd5282815a9af2
Arg [9] : 0000000000000000000000001e77a07c44cc4b21b2652dcab2aebd3300295282
Arg [10] : 000000000000000000000000240cf70d8a648be133feb342d71e5e81c686e5f8
Arg [11] : 00000000000000000000000027f7e530d0c1ab780d8d6962e9cfd45a9c96d8b9
Arg [12] : 0000000000000000000000002e7f4dd3acd226ddae10246a45337f815cf6b3ff
Arg [13] : 00000000000000000000000032087947f4ea79c3e17f84bc2d0e5212fdeca668
Arg [14] : 000000000000000000000000339adea1f8eb0ab44f2e429ec05495b0e6154e68
Arg [15] : 000000000000000000000000355382c41debac9ff3161eaa37472e8efeb0db6a
Arg [16] : 00000000000000000000000036dbcbb5c90e9b00ab658353696610cc5d7b7002
Arg [17] : 00000000000000000000000037341cbb14c5f128a70b149726ad8b2ce6f4c793
Arg [18] : 00000000000000000000000039fd60c5d585644e2d6084b0d659adbe86d450ed
Arg [19] : 0000000000000000000000003a8af31d3cfe775172853528167bb2b5760bf7b9
Arg [20] : 0000000000000000000000003e7dd7df9c1ffd12b8ecd94a27472bdc4d87ab7e
Arg [21] : 00000000000000000000000043226e434e3120e98ce4c4dd52d358a2a390b8d4
Arg [22] : 00000000000000000000000050ce06ab2404c72fbd57620ea8aa0e282065a831
Arg [23] : 00000000000000000000000058b753f0c417494226af608b63e80028255cbc64
Arg [24] : 0000000000000000000000005db06acd673531218b10430ba6de9b69913ad545
Arg [25] : 000000000000000000000000603de400427109449691363c45acb89f02ebbb21
Arg [26] : 000000000000000000000000611bb77d28ee1c06fdc026d7c796d3b1147bf718
Arg [27] : 00000000000000000000000061580ab72e647f32bbb1939abdc7c0de49371a08
Arg [28] : 00000000000000000000000061ffe691821291d02e9ba5d33098adcee71a3a17
Arg [29] : 000000000000000000000000639749b7b08aee65039c21d8a411103c6cebebf0
Arg [30] : 00000000000000000000000066b1de0f14a0ce971f7f248415063d44caf19398
Arg [31] : 0000000000000000000000007681c36da544f25aa37b14d799628530cb071322
Arg [32] : 00000000000000000000000076bc4c780dd85558bc4b24a4f262f4eb0be78ca7
Arg [33] : 00000000000000000000000077d5327f5ecab2f81ba73b2e32b25aaf725e7af5
Arg [34] : 00000000000000000000000078b864a7bce3888460ae9793b827ce521ac0d7bf
Arg [35] : 0000000000000000000000007b2fe039d506ab01f29f5d57b69b3d2882a896bc
Arg [36] : 0000000000000000000000007c95176406181f8f8b3c4b3b756a1994d77a510c
Arg [37] : 0000000000000000000000007f3a152f09324f2aee916ce069d3908603449173
Arg [38] : 000000000000000000000000937f5b32bc3cafcd1b02462f93e6ae5a843f6c6a
Arg [39] : 00000000000000000000000099ad257e59ef87866e155417597956c40f23784a
Arg [40] : 0000000000000000000000009a97dbc9baa91707b5bde45c810536c17b8ceb15
Arg [41] : 0000000000000000000000009fcd5693e875fe267c6c94151f78e733d8751abf
Arg [42] : 000000000000000000000000a13ee4362f171b5c62be230e5eb2fee8c375b875
Arg [43] : 000000000000000000000000a15ca74e65bf72730811abf95163e89ad9b9dff6
Arg [44] : 000000000000000000000000a21392dd4b12cb543fb6d1e4e8759b3ac6e55169
Arg [45] : 000000000000000000000000a34c8558b22bced464a4c0cf222457bdc632d1d8
Arg [46] : 000000000000000000000000a905366592eb4b83aec2704ad6e5965ef3bf851f
Arg [47] : 000000000000000000000000aa01dec5307cf17f20881a3286dcaa062578cea7
Arg [48] : 000000000000000000000000acba499f7f33119001077700734010c5fbb82fee
Arg [49] : 000000000000000000000000acf22f5efef78ab84c169269b7a2e2dcd1066aaa
Arg [50] : 000000000000000000000000b1b7586656116d546033e3baff69bfcd6592225e
Arg [51] : 000000000000000000000000b5d9c1cde53c0e2d1987a1680b242d576f884df9
Arg [52] : 000000000000000000000000b975a92bd975b9910db41e0c0f8c037288663282
Arg [53] : 000000000000000000000000bd9f96663e07a83ff18915c9074d9dc04d8e64c9
Arg [54] : 000000000000000000000000c02624affa30299fa164e7176a37610835a923a7
Arg [55] : 000000000000000000000000c3c54ee8b495a5004602aff40c5880fb8e375aad
Arg [56] : 000000000000000000000000c9d486048a9b82172f6f2a2ce6d9024c9d1097dc
Arg [57] : 000000000000000000000000cbe203901e2f3ca910558efba39a48af89e3c558
Arg [58] : 000000000000000000000000d0f9ab32d8f0960a26f53ae79316689e8f1e3492
Arg [59] : 000000000000000000000000d8879be0032092eb5e610d5a2ab64e56ae010348
Arg [60] : 000000000000000000000000e69801ca7dd2b8b41178df3796abe7b01f005b42
Arg [61] : 000000000000000000000000ee3eb94148cd432df78f380c4ec0f12b1d9fc551
Arg [62] : 000000000000000000000000ef7cfd3a5a1a9ddd3f4582f14b9a98b3e86eded1
Arg [63] : 000000000000000000000000f2d89aed137edab8be23584b43621024869e6d39
Arg [64] : 000000000000000000000000f6bd8c23142533661d67dc2c724e12c6f43f5b1c
Arg [65] : 000000000000000000000000f7bc1f442d436afe5754b565bff030c281c9aa90
Arg [66] : 000000000000000000000000f93d4ec4cadec63a68fe13ad5bb1abed44ebb81c
Arg [67] : 000000000000000000000000fc39cf99b4bd04f9689d7a1fc4c822a6d754502b
Arg [68] : 000000000000000000000000fca1430f46267ae2e44d52831dcda37058c5860a
Arg [69] : 0000000000000000000000000000000000000000000000000000000000000042
Arg [70] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [71] : 00000000000000000000000000000000000000000000000045f1ad4c03f80000
Arg [72] : 0000000000000000000000000000000000000000000000004ab9ff29eb073a00
Arg [73] : 000000000000000000000000000000000000000000000004563918244f400000
Arg [74] : 00000000000000000000000000000000000000000000000340aad21b3b700000
Arg [75] : 000000000000000000000000000000000000000000000000d570bc8365820000
Arg [76] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [77] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [78] : 00000000000000000000000000000000000000000000000b0130e075bc4c0000
Arg [79] : 00000000000000000000000000000000000000000000000c1c3a78e70e638000
Arg [80] : 00000000000000000000000000000000000000000000001b1ae4d6e2ef500000
Arg [81] : 000000000000000000000000000000000000000000000006ac091161071ab000
Arg [82] : 0000000000000000000000000000000000000000000000029a2241af62c00000
Arg [83] : 000000000000000000000000000000000000000000000000a688906bd8b00000
Arg [84] : 0000000000000000000000000000000000000000000000256da7a87095b98000
Arg [85] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [86] : 000000000000000000000000000000000000000000000000ebe3403181b3c000
Arg [87] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [88] : 000000000000000000000000000000000000000000000000347541f902fa0000
Arg [89] : 000000000000000000000000000000000000000000000001314fb37062980000
Arg [90] : 00000000000000000000000000000000000000000000000e2c01f32888e1c000
Arg [91] : 0000000000000000000000000000000000000000000000001bc16d674ec80000
Arg [92] : 000000000000000000000000000000000000000000000001158e460913d00000
Arg [93] : 000000000000000000000000000000000000000000000003c5c8734928fc0000
Arg [94] : 0000000000000000000000000000000000000000000000042b85aae7d60d7b40
Arg [95] : 00000000000000000000000000000000000000000000000d9cb6679d7c960000
Arg [96] : 0000000000000000000000000000000000000000000000383b00a72fddda2000
Arg [97] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [98] : 0000000000000000000000000000000000000000000000001ef61aadfde58000
Arg [99] : 000000000000000000000000000000000000000000000001215a14882ee50000
Arg [100] : 00000000000000000000000000000000000000000000000727de34a24f900000
Arg [101] : 0000000000000000000000000000000000000000000000004563918244f40000
Arg [102] : 00000000000000000000000000000000000000000000000270801d946c940000
Arg [103] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [104] : 0000000000000000000000000000000000000000000000010c3d83b78654e000
Arg [105] : 00000000000000000000000000000000000000000000000249ab9f677b090000
Arg [106] : 000000000000000000000000000000000000000000000001d59fd4b53f380000
Arg [107] : 0000000000000000000000000000000000000000000000008ac7230489e80000
Arg [108] : 0000000000000000000000000000000000000000000000004563918244f40000
Arg [109] : 000000000000000000000000000000000000000000000004ed821d4270fa2000
Arg [110] : 000000000000000000000000000000000000000000000000ebec21ee1da40000
Arg [111] : 0000000000000000000000000000000000000000000000049b9ca9a694340000
Arg [112] : 0000000000000000000000000000000000000000000000008f0c478a967c2500
Arg [113] : 000000000000000000000000000000000000000000000002086ac35105260000
Arg [114] : 000000000000000000000000000000000000000000000006cfc75b03b7c54000
Arg [115] : 0000000000000000000000000000000000000000000000031b327e695de20000
Arg [116] : 00000000000000000000000000000000000000000000000ad78ebc5ac6200000
Arg [117] : 00000000000000000000000000000000000000000000007ea6027001a3e60000
Arg [118] : 000000000000000000000000000000000000000000000002808064f88e9a8000
Arg [119] : 000000000000000000000000000000000000000000000006ac091161071ab000
Arg [120] : 00000000000000000000000000000000000000000000000b2d998f816d8c0000
Arg [121] : 00000000000000000000000000000000000000000000000100762616b9380000
Arg [122] : 000000000000000000000000000000000000000000000002685391334fdf8000
Arg [123] : 0000000000000000000000000000000000000000000000015af1d78b58c40000
Arg [124] : 000000000000000000000000000000000000000000000002086ac35105260000
Arg [125] : 000000000000000000000000000000000000000000000002b5e3af16b1880000
Arg [126] : 00000000000000000000000000000000000000000000001102a7d07d92b90000
Arg [127] : 0000000000000000000000000000000000000000000000001bc16d674ec80000
Arg [128] : 0000000000000000000000000000000000000000000000097c9ce4cf6d5c0000
Arg [129] : 0000000000000000000000000000000000000000000000165382eaf245870000
Arg [130] : 000000000000000000000000000000000000000000000028a857425466f80000
Arg [131] : 0000000000000000000000000000000000000000000000001f399b1438a10000
Arg [132] : 000000000000000000000000000000000000000000000003afb087b876900000
Arg [133] : 0000000000000000000000000000000000000000000000068155a43676e00000
Arg [134] : 000000000000000000000000000000000000000000000005867782732a3a8e00
Arg [135] : 0000000000000000000000000000000000000000000000004563918244f40000


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.