ETH Price: $2,653.41 (+1.27%)

Contract

0x69954a3FD8a73B209E494DAb3A8E01B5E990853C
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer152681712022-08-03 7:25:15819 days ago1659511515IN
Active: ACTIV Token
0 ETH0.000270734.95838916
Transfer152681702022-08-03 7:24:46819 days ago1659511486IN
Active: ACTIV Token
0 ETH0.000249754.57421306
Transfer152681682022-08-03 7:24:21819 days ago1659511461IN
Active: ACTIV Token
0 ETH0.000252394.62352236
Transfer152681662022-08-03 7:24:06819 days ago1659511446IN
Active: ACTIV Token
0 ETH0.000260534.77156225
Transfer152681642022-08-03 7:23:46819 days ago1659511426IN
Active: ACTIV Token
0 ETH0.000253394.64091161
Transfer152681592022-08-03 7:23:14819 days ago1659511394IN
Active: ACTIV Token
0 ETH0.000300645.50629552
Transfer152681542022-08-03 7:22:53819 days ago1659511373IN
Active: ACTIV Token
0 ETH0.000374846.86516558
Transfer152681532022-08-03 7:22:37819 days ago1659511357IN
Active: ACTIV Token
0 ETH0.000360046.59406758
Transfer152681512022-08-03 7:22:12819 days ago1659511332IN
Active: ACTIV Token
0 ETH0.000333766.11278651
Transfer152681502022-08-03 7:21:58819 days ago1659511318IN
Active: ACTIV Token
0 ETH0.000321835.89429645
Transfer152681492022-08-03 7:21:44819 days ago1659511304IN
Active: ACTIV Token
0 ETH0.000323525.92523336
Transfer152681452022-08-03 7:19:57819 days ago1659511197IN
Active: ACTIV Token
0 ETH0.000248984.5600534
Transfer152681442022-08-03 7:19:44819 days ago1659511184IN
Active: ACTIV Token
0 ETH0.000230434.2202636
Transfer152681422022-08-03 7:19:37819 days ago1659511177IN
Active: ACTIV Token
0 ETH0.000242274.43722745
Transfer152681402022-08-03 7:19:23819 days ago1659511163IN
Active: ACTIV Token
0 ETH0.000269344.93403093
Transfer152681302022-08-03 7:18:15819 days ago1659511095IN
Active: ACTIV Token
0 ETH0.000331396.069464
Transfer152681302022-08-03 7:18:15819 days ago1659511095IN
Active: ACTIV Token
0 ETH0.000331326.069464
Transfer152681302022-08-03 7:18:15819 days ago1659511095IN
Active: ACTIV Token
0 ETH0.000331396.069464
Transfer152681302022-08-03 7:18:15819 days ago1659511095IN
Active: ACTIV Token
0 ETH0.000331396.069464
Transfer152681262022-08-03 7:16:57819 days ago1659511017IN
Active: ACTIV Token
0 ETH0.0003025.53110993
Transfer152681252022-08-03 7:16:13819 days ago1659510973IN
Active: ACTIV Token
0 ETH0.000277615.08330109
Transfer152681252022-08-03 7:16:13819 days ago1659510973IN
Active: ACTIV Token
0 ETH0.000277555.08330109
Transfer152681242022-08-03 7:15:55819 days ago1659510955IN
Active: ACTIV Token
0 ETH0.000255814.68522663
Transfer152680932022-08-03 7:10:59819 days ago1659510659IN
Active: ACTIV Token
0 ETH0.000381256.98100823
Transfer152680912022-08-03 7:10:31819 days ago1659510631IN
Active: ACTIV Token
0 ETH0.000377086.90617469
View all transactions

Advanced mode:
Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Active

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

File 1 of 8: Active.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./IActiveToken.sol";

contract Active is IActiveToken {
    constructor(
        string memory _name,
        string memory _symbol,
        uint256 _amount
    ) ERC20(_name, _symbol) {
        setMaxSupply(_amount * 10**decimals());
        _mint(_msgSender(), maxSupply());
    }

    //Don't accept ETH or BNB
    receive() external payable {
        revert("Don't accept ETH or BNB");
    }
}

File 2 of 8: 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) {
        return msg.data;
    }
}

File 3 of 8: ERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./IERC20.sol";
import "./IERC20Metadata.sol";
import "./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 default value of {decimals} is 18. To select a different value for
     * {decimals} you should overload it.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name_, string memory symbol_) {
        _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");
        unchecked {
            _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");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Moves `amount` of tokens from `sender` to `recipient`.
     *
     * This internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `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");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(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:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

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

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

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

    /**
     * @dev 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");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(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 transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

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

File 4 of 8: IActiveToken.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

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

contract HasMinters is Ownable {
    event MinterAdded(address indexed _minter);
    event MinterRemoved(address indexed _minter);

    address[] public minters;
    mapping(address => bool) public minter;

    modifier onlyMinter() {
        require(minter[msg.sender], "invalid minter");
        _;
    }

    function addMinters(address[] memory _addedMinters) public onlyOwner {
        address _minter;

        for (uint256 i = 0; i < _addedMinters.length; i++) {
            _minter = _addedMinters[i];

            if (!minter[_minter]) {
                minters.push(_minter);
                minter[_minter] = true;
                emit MinterAdded(_minter);
            }
        }
    }

    function removeMinters(address[] memory _removedMinters) public onlyOwner {
        address _minter;

        for (uint256 it = 0; it < _removedMinters.length; it++) {
            _minter = _removedMinters[it];

            if (minter[_minter]) {
                minter[_minter] = false;
                emit MinterRemoved(_minter);
            }
        }

        uint256 i = 0;

        while (i < minters.length) {
            _minter = minters[i];

            if (!minter[_minter]) {
                minters[i] = minters[minters.length - 1];
                delete minters[minters.length - 1];
                // minters.length--;
            } else {
                i++;
            }
        }
    }

    function isMinter(address _addr) public view returns (bool) {
        return minter[_addr];
    }
}

abstract contract IActiveToken is ERC20, Pausable, Ownable, HasMinters {
    uint256 private _maxSupply;

    function setMaxSupply(uint256 amount) internal onlyOwner {
        _maxSupply = amount;
    }

    function maxSupply() public view returns (uint256) {
        return _maxSupply;
    }

    function burn(uint256 amount) public virtual {
        _burn(_msgSender(), amount);
    }

    function mint(address to, uint256 amount) public virtual onlyMinter {
        require(totalSupply() + amount <= _maxSupply, "over maxSupply");
        _mint(to, amount);
    }

    function burnFrom(address account, uint256 amount) public virtual {
        uint256 currentAllowance = allowance(account, _msgSender());
        require(currentAllowance >= amount, "ERC20: burn amount exceeds allowance");
        unchecked {
            _approve(account, _msgSender(), currentAllowance - amount);
        }
        _burn(account, amount);
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual override {
        super._beforeTokenTransfer(from, to, amount);

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

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

    function start() public onlyOwner {
        _unpause();
    }
}

File 5 of 8: 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 6 of 8: 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 7 of 8: Ownable.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./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() {
        _setOwner(_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 {
        _setOwner(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");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

File 8 of 8: Pausable.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./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());
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint256","name":"_amount","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":"_minter","type":"address"}],"name":"MinterAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_minter","type":"address"}],"name":"MinterRemoved","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":"_addedMinters","type":"address[]"}],"name":"addMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"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":"_addr","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"","type":"address"}],"name":"minter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"minters","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_removedMinters","type":"address[]"}],"name":"removeMinters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"start","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stop","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"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b5060405162003bf638038062003bf6833981810160405281019062000037919062000603565b8282816003908051906020019062000051929190620004ca565b5080600490805190602001906200006a929190620004ca565b5050506000600560006101000a81548160ff021916908315150217905550620000a86200009c6200011c60201b60201c565b6200012460201b60201c565b620000e3620000bc620001ea60201b60201c565b600a620000ca91906200093b565b82620000d7919062000a78565b620001f360201b60201c565b62000113620000f76200011c60201b60201c565b620001076200028c60201b60201c565b6200029660201b60201c565b50505062000c10565b600033905090565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006012905090565b620002036200011c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620002296200040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000282576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200027990620007aa565b60405180910390fd5b8060088190555050565b6000600854905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000309576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200030090620007cc565b60405180910390fd5b6200031d600083836200043960201b60201c565b806002600082825462000331919062000883565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000388919062000883565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620003ef9190620007ee565b60405180910390a36200040b60008383620004a960201b60201c565b5050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b62000451838383620004ae60201b620016d11760201c565b62000461620004b360201b60201c565b15620004a4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200049b9062000788565b60405180910390fd5b505050565b505050565b505050565b6000600560009054906101000a900460ff16905090565b828054620004d89062000b26565b90600052602060002090601f016020900481019282620004fc576000855562000548565b82601f106200051757805160ff191683800117855562000548565b8280016001018555821562000548579182015b82811115620005475782518255916020019190600101906200052a565b5b5090506200055791906200055b565b5090565b5b80821115620005765760008160009055506001016200055c565b5090565b6000620005916200058b846200083f565b6200080b565b905082815260208101848484011115620005aa57600080fd5b620005b784828562000af0565b509392505050565b600082601f830112620005d157600080fd5b8151620005e38482602086016200057a565b91505092915050565b600081519050620005fd8162000bf6565b92915050565b6000806000606084860312156200061957600080fd5b600084015167ffffffffffffffff8111156200063457600080fd5b6200064286828701620005bf565b935050602084015167ffffffffffffffff8111156200066057600080fd5b6200066e86828701620005bf565b92505060406200068186828701620005ec565b9150509250925092565b60006200069a602b8362000872565b91507f45524332305061757361626c65203a20746f6b656e207472616e73666572207760008301527f68696c65207061757365640000000000000000000000000000000000000000006020830152604082019050919050565b60006200070260208362000872565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600062000744601f8362000872565b91507f45524332303a206d696e7420746f20746865207a65726f2061646472657373006000830152602082019050919050565b620007828162000ad9565b82525050565b60006020820190508181036000830152620007a3816200068b565b9050919050565b60006020820190508181036000830152620007c581620006f3565b9050919050565b60006020820190508181036000830152620007e78162000735565b9050919050565b600060208201905062000805600083018462000777565b92915050565b6000604051905081810181811067ffffffffffffffff8211171562000835576200083462000bba565b5b8060405250919050565b600067ffffffffffffffff8211156200085d576200085c62000bba565b5b601f19601f8301169050602081019050919050565b600082825260208201905092915050565b6000620008908262000ad9565b91506200089d8362000ad9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620008d557620008d462000b5c565b5b828201905092915050565b6000808291508390505b600185111562000932578086048111156200090a576200090962000b5c565b5b60018516156200091a5780820291505b80810290506200092a8562000be9565b9450620008ea565b94509492505050565b6000620009488262000ad9565b9150620009558362000ae3565b9250620009847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200098c565b905092915050565b6000826200099e576001905062000a71565b81620009ae576000905062000a71565b8160018114620009c75760028114620009d25762000a08565b600191505062000a71565b60ff841115620009e757620009e662000b5c565b5b8360020a91508482111562000a015762000a0062000b5c565b5b5062000a71565b5060208310610133831016604e8410600b841016171562000a425782820a90508381111562000a3c5762000a3b62000b5c565b5b62000a71565b62000a518484846001620008e0565b9250905081840481111562000a6b5762000a6a62000b5c565b5b81810290505b9392505050565b600062000a858262000ad9565b915062000a928362000ad9565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000ace5762000acd62000b5c565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60005b8381101562000b1057808201518184015260208101905062000af3565b8381111562000b20576000848401525b50505050565b6000600282049050600182168062000b3f57607f821691505b6020821081141562000b565762000b5562000b8b565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008160011c9050919050565b62000c018162000ad9565b811462000c0d57600080fd5b50565b612fd68062000c206000396000f3fe6080604052600436106101855760003560e01c8063715018a6116100d1578063a457c2d71161008a578063be9a655511610064578063be9a6555146105ec578063d5abeb0114610603578063dd62ed3e1461062e578063f2fde38b1461066b576101c5565b8063a457c2d714610535578063a9059cbb14610572578063aa271e1a146105af576101c5565b8063715018a61461043957806371e2a6571461045057806379cc6790146104795780638623ec7b146104a25780638da5cb5b146104df57806395d89b411461050a576101c5565b8063395093511161013e57806342966c681161011857806342966c681461037f5780635c975abb146103a85780635fc1964f146103d357806370a08231146103fc576101c5565b806339509351146102dc5780633dd08c381461031957806340c10f1914610356576101c5565b806306fdde03146101ca57806307da68f5146101f5578063095ea7b31461020c57806318160ddd1461024957806323b872dd14610274578063313ce567146102b1576101c5565b366101c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101bc90612a98565b60405180910390fd5b600080fd5b3480156101d657600080fd5b506101df610694565b6040516101ec9190612a16565b60405180910390f35b34801561020157600080fd5b5061020a610726565b005b34801561021857600080fd5b50610233600480360381019061022e919061223d565b6107ac565b60405161024091906129fb565b60405180910390f35b34801561025557600080fd5b5061025e6107ca565b60405161026b9190612c98565b60405180910390f35b34801561028057600080fd5b5061029b600480360381019061029691906121ee565b6107d4565b6040516102a891906129fb565b60405180910390f35b3480156102bd57600080fd5b506102c66108cc565b6040516102d39190612cb3565b60405180910390f35b3480156102e857600080fd5b5061030360048036038101906102fe919061223d565b6108d5565b60405161031091906129fb565b60405180910390f35b34801561032557600080fd5b50610340600480360381019061033b9190612189565b610981565b60405161034d91906129fb565b60405180910390f35b34801561036257600080fd5b5061037d6004803603810190610378919061223d565b6109a1565b005b34801561038b57600080fd5b506103a660048036038101906103a191906122ba565b610a92565b005b3480156103b457600080fd5b506103bd610aa6565b6040516103ca91906129fb565b60405180910390f35b3480156103df57600080fd5b506103fa60048036038101906103f59190612279565b610abd565b005b34801561040857600080fd5b50610423600480360381019061041e9190612189565b610ee5565b6040516104309190612c98565b60405180910390f35b34801561044557600080fd5b5061044e610f2d565b005b34801561045c57600080fd5b5061047760048036038101906104729190612279565b610fb5565b005b34801561048557600080fd5b506104a0600480360381019061049b919061223d565b6111ed565b005b3480156104ae57600080fd5b506104c960048036038101906104c491906122ba565b611268565b6040516104d691906129e0565b60405180910390f35b3480156104eb57600080fd5b506104f46112a7565b60405161050191906129e0565b60405180910390f35b34801561051657600080fd5b5061051f6112d1565b60405161052c9190612a16565b60405180910390f35b34801561054157600080fd5b5061055c6004803603810190610557919061223d565b611363565b60405161056991906129fb565b60405180910390f35b34801561057e57600080fd5b506105996004803603810190610594919061223d565b61144e565b6040516105a691906129fb565b60405180910390f35b3480156105bb57600080fd5b506105d660048036038101906105d19190612189565b61146c565b6040516105e391906129fb565b60405180910390f35b3480156105f857600080fd5b506106016114c2565b005b34801561060f57600080fd5b50610618611548565b6040516106259190612c98565b60405180910390f35b34801561063a57600080fd5b50610655600480360381019061065091906121b2565b611552565b6040516106629190612c98565b60405180910390f35b34801561067757600080fd5b50610692600480360381019061068d9190612189565b6115d9565b005b6060600380546106a390612e59565b80601f01602080910402602001604051908101604052809291908181526020018280546106cf90612e59565b801561071c5780601f106106f15761010080835404028352916020019161071c565b820191906000526020600020905b8154815290600101906020018083116106ff57829003601f168201915b5050505050905090565b61072e6116d6565b73ffffffffffffffffffffffffffffffffffffffff1661074c6112a7565b73ffffffffffffffffffffffffffffffffffffffff16146107a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079990612b78565b60405180910390fd5b6107aa6116de565b565b60006107c06107b96116d6565b8484611781565b6001905092915050565b6000600254905090565b60006107e184848461194c565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061082c6116d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156108ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a390612b58565b60405180910390fd5b6108c0856108b86116d6565b858403611781565b60019150509392505050565b60006012905090565b60006109776108e26116d6565b8484600160006108f06116d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546109729190612d47565b611781565b6001905092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610a2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2490612b98565b60405180910390fd5b60085481610a396107ca565b610a439190612d47565b1115610a84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7b90612c18565b60405180910390fd5b610a8e8282611bcd565b5050565b610aa3610a9d6116d6565b82611d2d565b50565b6000600560009054906101000a900460ff16905090565b610ac56116d6565b73ffffffffffffffffffffffffffffffffffffffff16610ae36112a7565b73ffffffffffffffffffffffffffffffffffffffff1614610b39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3090612b78565b60405180910390fd5b600080600090505b8251811015610c8e57828181518110610b83577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519150600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c7b576000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669260405160405180910390a25b8080610c8690612e8b565b915050610b41565b5060005b600680549050811015610ee05760068181548110610cd9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610ecc5760066001600680549050610d6b9190612d9d565b81548110610da2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660068281548110610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060066001600680549050610e639190612d9d565b81548110610e9a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055610edb565b8080610ed790612e8b565b9150505b610c92565b505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610f356116d6565b73ffffffffffffffffffffffffffffffffffffffff16610f536112a7565b73ffffffffffffffffffffffffffffffffffffffff1614610fa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa090612b78565b60405180910390fd5b610fb36000611f04565b565b610fbd6116d6565b73ffffffffffffffffffffffffffffffffffffffff16610fdb6112a7565b73ffffffffffffffffffffffffffffffffffffffff1614611031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102890612b78565b60405180910390fd5b600080600090505b82518110156111e85782818151811061107b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519150600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166111d5576006829080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f660405160405180910390a25b80806111e090612e8b565b915050611039565b505050565b6000611200836111fb6116d6565b611552565b905081811015611245576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123c90612bb8565b60405180910390fd5b611259836112516116d6565b848403611781565b6112638383611d2d565b505050565b6006818154811061127857600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546112e090612e59565b80601f016020809104026020016040519081016040528092919081815260200182805461130c90612e59565b80156113595780601f1061132e57610100808354040283529160200191611359565b820191906000526020600020905b81548152906001019060200180831161133c57829003601f168201915b5050505050905090565b600080600160006113726116d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561142f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142690612c58565b60405180910390fd5b61144361143a6116d6565b85858403611781565b600191505092915050565b600061146261145b6116d6565b848461194c565b6001905092915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6114ca6116d6565b73ffffffffffffffffffffffffffffffffffffffff166114e86112a7565b73ffffffffffffffffffffffffffffffffffffffff161461153e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153590612b78565b60405180910390fd5b611546611fca565b565b6000600854905090565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6115e16116d6565b73ffffffffffffffffffffffffffffffffffffffff166115ff6112a7565b73ffffffffffffffffffffffffffffffffffffffff1614611655576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164c90612b78565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156116c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bc90612ab8565b60405180910390fd5b6116ce81611f04565b50565b505050565b600033905090565b6116e6610aa6565b15611726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171d90612b38565b60405180910390fd5b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861176a6116d6565b60405161177791906129e0565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156117f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e890612c38565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611861576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185890612ad8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161193f9190612c98565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119b390612bf8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2390612a38565b60405180910390fd5b611a3783838361206c565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611abd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab490612af8565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b509190612d47565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611bb49190612c98565b60405180910390a3611bc78484846120c4565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3490612c78565b60405180910390fd5b611c496000838361206c565b8060026000828254611c5b9190612d47565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611cb09190612d47565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d159190612c98565b60405180910390a3611d29600083836120c4565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9490612bd8565b60405180910390fd5b611da98260008361206c565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611e2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2690612a78565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160026000828254611e869190612d9d565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611eeb9190612c98565b60405180910390a3611eff836000846120c4565b505050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b611fd2610aa6565b612011576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200890612a58565b60405180910390fd5b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6120556116d6565b60405161206291906129e0565b60405180910390a1565b6120778383836116d1565b61207f610aa6565b156120bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120b690612b18565b60405180910390fd5b505050565b505050565b60006120dc6120d784612cff565b612cce565b905080838252602082019050828560208602820111156120fb57600080fd5b60005b8581101561212b57816121118882612135565b8452602084019350602083019250506001810190506120fe565b5050509392505050565b60008135905061214481612f72565b92915050565b600082601f83011261215b57600080fd5b813561216b8482602086016120c9565b91505092915050565b60008135905061218381612f89565b92915050565b60006020828403121561219b57600080fd5b60006121a984828501612135565b91505092915050565b600080604083850312156121c557600080fd5b60006121d385828601612135565b92505060206121e485828601612135565b9150509250929050565b60008060006060848603121561220357600080fd5b600061221186828701612135565b935050602061222286828701612135565b925050604061223386828701612174565b9150509250925092565b6000806040838503121561225057600080fd5b600061225e85828601612135565b925050602061226f85828601612174565b9150509250929050565b60006020828403121561228b57600080fd5b600082013567ffffffffffffffff8111156122a557600080fd5b6122b18482850161214a565b91505092915050565b6000602082840312156122cc57600080fd5b60006122da84828501612174565b91505092915050565b6122ec81612dd1565b82525050565b6122fb81612de3565b82525050565b600061230c82612d2b565b6123168185612d36565b9350612326818560208601612e26565b61232f81612f61565b840191505092915050565b6000612347602383612d36565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006123ad601483612d36565b91507f5061757361626c653a206e6f74207061757365640000000000000000000000006000830152602082019050919050565b60006123ed602283612d36565b91507f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008301527f63650000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612453601783612d36565b91507f446f6e27742061636365707420455448206f7220424e420000000000000000006000830152602082019050919050565b6000612493602683612d36565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124f9602283612d36565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061255f602683612d36565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206260008301527f616c616e636500000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006125c5602b83612d36565b91507f45524332305061757361626c65203a20746f6b656e207472616e73666572207760008301527f68696c65207061757365640000000000000000000000000000000000000000006020830152604082019050919050565b600061262b601083612d36565b91507f5061757361626c653a20706175736564000000000000000000000000000000006000830152602082019050919050565b600061266b602883612d36565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b60006126d1602083612d36565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000612711600e83612d36565b91507f696e76616c6964206d696e7465720000000000000000000000000000000000006000830152602082019050919050565b6000612751602483612d36565b91507f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008301527f616e6365000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006127b7602183612d36565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061281d602583612d36565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612883600e83612d36565b91507f6f766572206d6178537570706c790000000000000000000000000000000000006000830152602082019050919050565b60006128c3602483612d36565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612929602583612d36565b91507f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008301527f207a65726f0000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061298f601f83612d36565b91507f45524332303a206d696e7420746f20746865207a65726f2061646472657373006000830152602082019050919050565b6129cb81612e0f565b82525050565b6129da81612e19565b82525050565b60006020820190506129f560008301846122e3565b92915050565b6000602082019050612a1060008301846122f2565b92915050565b60006020820190508181036000830152612a308184612301565b905092915050565b60006020820190508181036000830152612a518161233a565b9050919050565b60006020820190508181036000830152612a71816123a0565b9050919050565b60006020820190508181036000830152612a91816123e0565b9050919050565b60006020820190508181036000830152612ab181612446565b9050919050565b60006020820190508181036000830152612ad181612486565b9050919050565b60006020820190508181036000830152612af1816124ec565b9050919050565b60006020820190508181036000830152612b1181612552565b9050919050565b60006020820190508181036000830152612b31816125b8565b9050919050565b60006020820190508181036000830152612b518161261e565b9050919050565b60006020820190508181036000830152612b718161265e565b9050919050565b60006020820190508181036000830152612b91816126c4565b9050919050565b60006020820190508181036000830152612bb181612704565b9050919050565b60006020820190508181036000830152612bd181612744565b9050919050565b60006020820190508181036000830152612bf1816127aa565b9050919050565b60006020820190508181036000830152612c1181612810565b9050919050565b60006020820190508181036000830152612c3181612876565b9050919050565b60006020820190508181036000830152612c51816128b6565b9050919050565b60006020820190508181036000830152612c718161291c565b9050919050565b60006020820190508181036000830152612c9181612982565b9050919050565b6000602082019050612cad60008301846129c2565b92915050565b6000602082019050612cc860008301846129d1565b92915050565b6000604051905081810181811067ffffffffffffffff82111715612cf557612cf4612f32565b5b8060405250919050565b600067ffffffffffffffff821115612d1a57612d19612f32565b5b602082029050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000612d5282612e0f565b9150612d5d83612e0f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d9257612d91612ed4565b5b828201905092915050565b6000612da882612e0f565b9150612db383612e0f565b925082821015612dc657612dc5612ed4565b5b828203905092915050565b6000612ddc82612def565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612e44578082015181840152602081019050612e29565b83811115612e53576000848401525b50505050565b60006002820490506001821680612e7157607f821691505b60208210811415612e8557612e84612f03565b5b50919050565b6000612e9682612e0f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ec957612ec8612ed4565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b612f7b81612dd1565b8114612f8657600080fd5b50565b612f9281612e0f565b8114612f9d57600080fd5b5056fea2646970667358221220449829756ed265607e50d7549888b75d7c322508a5c990c70a9ff7a9ebee1c8f64736f6c63430008000033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000b2d05e000000000000000000000000000000000000000000000000000000000000000006414354495645000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000054143544956000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101855760003560e01c8063715018a6116100d1578063a457c2d71161008a578063be9a655511610064578063be9a6555146105ec578063d5abeb0114610603578063dd62ed3e1461062e578063f2fde38b1461066b576101c5565b8063a457c2d714610535578063a9059cbb14610572578063aa271e1a146105af576101c5565b8063715018a61461043957806371e2a6571461045057806379cc6790146104795780638623ec7b146104a25780638da5cb5b146104df57806395d89b411461050a576101c5565b8063395093511161013e57806342966c681161011857806342966c681461037f5780635c975abb146103a85780635fc1964f146103d357806370a08231146103fc576101c5565b806339509351146102dc5780633dd08c381461031957806340c10f1914610356576101c5565b806306fdde03146101ca57806307da68f5146101f5578063095ea7b31461020c57806318160ddd1461024957806323b872dd14610274578063313ce567146102b1576101c5565b366101c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101bc90612a98565b60405180910390fd5b600080fd5b3480156101d657600080fd5b506101df610694565b6040516101ec9190612a16565b60405180910390f35b34801561020157600080fd5b5061020a610726565b005b34801561021857600080fd5b50610233600480360381019061022e919061223d565b6107ac565b60405161024091906129fb565b60405180910390f35b34801561025557600080fd5b5061025e6107ca565b60405161026b9190612c98565b60405180910390f35b34801561028057600080fd5b5061029b600480360381019061029691906121ee565b6107d4565b6040516102a891906129fb565b60405180910390f35b3480156102bd57600080fd5b506102c66108cc565b6040516102d39190612cb3565b60405180910390f35b3480156102e857600080fd5b5061030360048036038101906102fe919061223d565b6108d5565b60405161031091906129fb565b60405180910390f35b34801561032557600080fd5b50610340600480360381019061033b9190612189565b610981565b60405161034d91906129fb565b60405180910390f35b34801561036257600080fd5b5061037d6004803603810190610378919061223d565b6109a1565b005b34801561038b57600080fd5b506103a660048036038101906103a191906122ba565b610a92565b005b3480156103b457600080fd5b506103bd610aa6565b6040516103ca91906129fb565b60405180910390f35b3480156103df57600080fd5b506103fa60048036038101906103f59190612279565b610abd565b005b34801561040857600080fd5b50610423600480360381019061041e9190612189565b610ee5565b6040516104309190612c98565b60405180910390f35b34801561044557600080fd5b5061044e610f2d565b005b34801561045c57600080fd5b5061047760048036038101906104729190612279565b610fb5565b005b34801561048557600080fd5b506104a0600480360381019061049b919061223d565b6111ed565b005b3480156104ae57600080fd5b506104c960048036038101906104c491906122ba565b611268565b6040516104d691906129e0565b60405180910390f35b3480156104eb57600080fd5b506104f46112a7565b60405161050191906129e0565b60405180910390f35b34801561051657600080fd5b5061051f6112d1565b60405161052c9190612a16565b60405180910390f35b34801561054157600080fd5b5061055c6004803603810190610557919061223d565b611363565b60405161056991906129fb565b60405180910390f35b34801561057e57600080fd5b506105996004803603810190610594919061223d565b61144e565b6040516105a691906129fb565b60405180910390f35b3480156105bb57600080fd5b506105d660048036038101906105d19190612189565b61146c565b6040516105e391906129fb565b60405180910390f35b3480156105f857600080fd5b506106016114c2565b005b34801561060f57600080fd5b50610618611548565b6040516106259190612c98565b60405180910390f35b34801561063a57600080fd5b50610655600480360381019061065091906121b2565b611552565b6040516106629190612c98565b60405180910390f35b34801561067757600080fd5b50610692600480360381019061068d9190612189565b6115d9565b005b6060600380546106a390612e59565b80601f01602080910402602001604051908101604052809291908181526020018280546106cf90612e59565b801561071c5780601f106106f15761010080835404028352916020019161071c565b820191906000526020600020905b8154815290600101906020018083116106ff57829003601f168201915b5050505050905090565b61072e6116d6565b73ffffffffffffffffffffffffffffffffffffffff1661074c6112a7565b73ffffffffffffffffffffffffffffffffffffffff16146107a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079990612b78565b60405180910390fd5b6107aa6116de565b565b60006107c06107b96116d6565b8484611781565b6001905092915050565b6000600254905090565b60006107e184848461194c565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061082c6116d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156108ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a390612b58565b60405180910390fd5b6108c0856108b86116d6565b858403611781565b60019150509392505050565b60006012905090565b60006109776108e26116d6565b8484600160006108f06116d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546109729190612d47565b611781565b6001905092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610a2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2490612b98565b60405180910390fd5b60085481610a396107ca565b610a439190612d47565b1115610a84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7b90612c18565b60405180910390fd5b610a8e8282611bcd565b5050565b610aa3610a9d6116d6565b82611d2d565b50565b6000600560009054906101000a900460ff16905090565b610ac56116d6565b73ffffffffffffffffffffffffffffffffffffffff16610ae36112a7565b73ffffffffffffffffffffffffffffffffffffffff1614610b39576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3090612b78565b60405180910390fd5b600080600090505b8251811015610c8e57828181518110610b83577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519150600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c7b576000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669260405160405180910390a25b8080610c8690612e8b565b915050610b41565b5060005b600680549050811015610ee05760068181548110610cd9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610ecc5760066001600680549050610d6b9190612d9d565b81548110610da2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660068281548110610e07577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060066001600680549050610e639190612d9d565b81548110610e9a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055610edb565b8080610ed790612e8b565b9150505b610c92565b505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610f356116d6565b73ffffffffffffffffffffffffffffffffffffffff16610f536112a7565b73ffffffffffffffffffffffffffffffffffffffff1614610fa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa090612b78565b60405180910390fd5b610fb36000611f04565b565b610fbd6116d6565b73ffffffffffffffffffffffffffffffffffffffff16610fdb6112a7565b73ffffffffffffffffffffffffffffffffffffffff1614611031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102890612b78565b60405180910390fd5b600080600090505b82518110156111e85782818151811061107b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519150600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166111d5576006829080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f660405160405180910390a25b80806111e090612e8b565b915050611039565b505050565b6000611200836111fb6116d6565b611552565b905081811015611245576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123c90612bb8565b60405180910390fd5b611259836112516116d6565b848403611781565b6112638383611d2d565b505050565b6006818154811061127857600080fd5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546112e090612e59565b80601f016020809104026020016040519081016040528092919081815260200182805461130c90612e59565b80156113595780601f1061132e57610100808354040283529160200191611359565b820191906000526020600020905b81548152906001019060200180831161133c57829003601f168201915b5050505050905090565b600080600160006113726116d6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508281101561142f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142690612c58565b60405180910390fd5b61144361143a6116d6565b85858403611781565b600191505092915050565b600061146261145b6116d6565b848461194c565b6001905092915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6114ca6116d6565b73ffffffffffffffffffffffffffffffffffffffff166114e86112a7565b73ffffffffffffffffffffffffffffffffffffffff161461153e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153590612b78565b60405180910390fd5b611546611fca565b565b6000600854905090565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6115e16116d6565b73ffffffffffffffffffffffffffffffffffffffff166115ff6112a7565b73ffffffffffffffffffffffffffffffffffffffff1614611655576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164c90612b78565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156116c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116bc90612ab8565b60405180910390fd5b6116ce81611f04565b50565b505050565b600033905090565b6116e6610aa6565b15611726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171d90612b38565b60405180910390fd5b6001600560006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861176a6116d6565b60405161177791906129e0565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156117f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e890612c38565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611861576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161185890612ad8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161193f9190612c98565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119b390612bf8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2390612a38565b60405180910390fd5b611a3783838361206c565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611abd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab490612af8565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611b509190612d47565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611bb49190612c98565b60405180910390a3611bc78484846120c4565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3490612c78565b60405180910390fd5b611c496000838361206c565b8060026000828254611c5b9190612d47565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611cb09190612d47565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d159190612c98565b60405180910390a3611d29600083836120c4565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611d9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9490612bd8565b60405180910390fd5b611da98260008361206c565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611e2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2690612a78565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508160026000828254611e869190612d9d565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611eeb9190612c98565b60405180910390a3611eff836000846120c4565b505050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b611fd2610aa6565b612011576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200890612a58565b60405180910390fd5b6000600560006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6120556116d6565b60405161206291906129e0565b60405180910390a1565b6120778383836116d1565b61207f610aa6565b156120bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120b690612b18565b60405180910390fd5b505050565b505050565b60006120dc6120d784612cff565b612cce565b905080838252602082019050828560208602820111156120fb57600080fd5b60005b8581101561212b57816121118882612135565b8452602084019350602083019250506001810190506120fe565b5050509392505050565b60008135905061214481612f72565b92915050565b600082601f83011261215b57600080fd5b813561216b8482602086016120c9565b91505092915050565b60008135905061218381612f89565b92915050565b60006020828403121561219b57600080fd5b60006121a984828501612135565b91505092915050565b600080604083850312156121c557600080fd5b60006121d385828601612135565b92505060206121e485828601612135565b9150509250929050565b60008060006060848603121561220357600080fd5b600061221186828701612135565b935050602061222286828701612135565b925050604061223386828701612174565b9150509250925092565b6000806040838503121561225057600080fd5b600061225e85828601612135565b925050602061226f85828601612174565b9150509250929050565b60006020828403121561228b57600080fd5b600082013567ffffffffffffffff8111156122a557600080fd5b6122b18482850161214a565b91505092915050565b6000602082840312156122cc57600080fd5b60006122da84828501612174565b91505092915050565b6122ec81612dd1565b82525050565b6122fb81612de3565b82525050565b600061230c82612d2b565b6123168185612d36565b9350612326818560208601612e26565b61232f81612f61565b840191505092915050565b6000612347602383612d36565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006123ad601483612d36565b91507f5061757361626c653a206e6f74207061757365640000000000000000000000006000830152602082019050919050565b60006123ed602283612d36565b91507f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008301527f63650000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612453601783612d36565b91507f446f6e27742061636365707420455448206f7220424e420000000000000000006000830152602082019050919050565b6000612493602683612d36565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124f9602283612d36565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061255f602683612d36565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206260008301527f616c616e636500000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006125c5602b83612d36565b91507f45524332305061757361626c65203a20746f6b656e207472616e73666572207760008301527f68696c65207061757365640000000000000000000000000000000000000000006020830152604082019050919050565b600061262b601083612d36565b91507f5061757361626c653a20706175736564000000000000000000000000000000006000830152602082019050919050565b600061266b602883612d36565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b60006126d1602083612d36565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6000612711600e83612d36565b91507f696e76616c6964206d696e7465720000000000000000000000000000000000006000830152602082019050919050565b6000612751602483612d36565b91507f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008301527f616e6365000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006127b7602183612d36565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061281d602583612d36565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612883600e83612d36565b91507f6f766572206d6178537570706c790000000000000000000000000000000000006000830152602082019050919050565b60006128c3602483612d36565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000612929602583612d36565b91507f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008301527f207a65726f0000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061298f601f83612d36565b91507f45524332303a206d696e7420746f20746865207a65726f2061646472657373006000830152602082019050919050565b6129cb81612e0f565b82525050565b6129da81612e19565b82525050565b60006020820190506129f560008301846122e3565b92915050565b6000602082019050612a1060008301846122f2565b92915050565b60006020820190508181036000830152612a308184612301565b905092915050565b60006020820190508181036000830152612a518161233a565b9050919050565b60006020820190508181036000830152612a71816123a0565b9050919050565b60006020820190508181036000830152612a91816123e0565b9050919050565b60006020820190508181036000830152612ab181612446565b9050919050565b60006020820190508181036000830152612ad181612486565b9050919050565b60006020820190508181036000830152612af1816124ec565b9050919050565b60006020820190508181036000830152612b1181612552565b9050919050565b60006020820190508181036000830152612b31816125b8565b9050919050565b60006020820190508181036000830152612b518161261e565b9050919050565b60006020820190508181036000830152612b718161265e565b9050919050565b60006020820190508181036000830152612b91816126c4565b9050919050565b60006020820190508181036000830152612bb181612704565b9050919050565b60006020820190508181036000830152612bd181612744565b9050919050565b60006020820190508181036000830152612bf1816127aa565b9050919050565b60006020820190508181036000830152612c1181612810565b9050919050565b60006020820190508181036000830152612c3181612876565b9050919050565b60006020820190508181036000830152612c51816128b6565b9050919050565b60006020820190508181036000830152612c718161291c565b9050919050565b60006020820190508181036000830152612c9181612982565b9050919050565b6000602082019050612cad60008301846129c2565b92915050565b6000602082019050612cc860008301846129d1565b92915050565b6000604051905081810181811067ffffffffffffffff82111715612cf557612cf4612f32565b5b8060405250919050565b600067ffffffffffffffff821115612d1a57612d19612f32565b5b602082029050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000612d5282612e0f565b9150612d5d83612e0f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612d9257612d91612ed4565b5b828201905092915050565b6000612da882612e0f565b9150612db383612e0f565b925082821015612dc657612dc5612ed4565b5b828203905092915050565b6000612ddc82612def565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612e44578082015181840152602081019050612e29565b83811115612e53576000848401525b50505050565b60006002820490506001821680612e7157607f821691505b60208210811415612e8557612e84612f03565b5b50919050565b6000612e9682612e0f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ec957612ec8612ed4565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b612f7b81612dd1565b8114612f8657600080fd5b50565b612f9281612e0f565b8114612f9d57600080fd5b5056fea2646970667358221220449829756ed265607e50d7549888b75d7c322508a5c990c70a9ff7a9ebee1c8f64736f6c63430008000033

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

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000b2d05e000000000000000000000000000000000000000000000000000000000000000006414354495645000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000054143544956000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): ACTIVE
Arg [1] : _symbol (string): ACTIV
Arg [2] : _amount (uint256): 3000000000

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 00000000000000000000000000000000000000000000000000000000b2d05e00
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [4] : 4143544956450000000000000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [6] : 4143544956000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

87:375:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;420:33;;;;;;;;;;:::i;:::-;;;;;;;;87:375;;;;2052:98:2;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2862:58:3;;;;;;;;;;;;;:::i;:::-;;4149:166:2;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3140:106;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4782:478;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2989:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5655:212;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;295:38:3;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2043:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1948:89;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1033:84:7;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;833:708:3;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3304:125:2;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1597:92:6;;;;;;;;;;;;;:::i;:::-;;441:386:3;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2224:361;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;265:24;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;965:85:6;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2263:102:2;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6354:405;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3632:172;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1547:97:3;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2926:61;;;;;;;;;;;;;:::i;:::-;;1857:85;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3862:149:2;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1838:189:6;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2052:98:2;2106:13;2138:5;2131:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2052:98;:::o;2862:58:3:-;1188:12:6;:10;:12::i;:::-;1177:23;;:7;:5;:7::i;:::-;:23;;;1169:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2905:8:3::1;:6;:8::i;:::-;2862:58::o:0;4149:166:2:-;4232:4;4248:39;4257:12;:10;:12::i;:::-;4271:7;4280:6;4248:8;:39::i;:::-;4304:4;4297:11;;4149:166;;;;:::o;3140:106::-;3201:7;3227:12;;3220:19;;3140:106;:::o;4782:478::-;4918:4;4934:36;4944:6;4952:9;4963:6;4934:9;:36::i;:::-;4981:24;5008:11;:19;5020:6;5008:19;;;;;;;;;;;;;;;:33;5028:12;:10;:12::i;:::-;5008:33;;;;;;;;;;;;;;;;4981:60;;5079:6;5059:16;:26;;5051:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;5164:57;5173:6;5181:12;:10;:12::i;:::-;5214:6;5195:16;:25;5164:8;:57::i;:::-;5249:4;5242:11;;;4782:478;;;;;:::o;2989:91::-;3047:5;3071:2;3064:9;;2989:91;:::o;5655:212::-;5743:4;5759:80;5768:12;:10;:12::i;:::-;5782:7;5828:10;5791:11;:25;5803:12;:10;:12::i;:::-;5791:25;;;;;;;;;;;;;;;:34;5817:7;5791:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;5759:8;:80::i;:::-;5856:4;5849:11;;5655:212;;;;:::o;295:38:3:-;;;;;;;;;;;;;;;;;;;;;;:::o;2043:175::-;380:6;:18;387:10;380:18;;;;;;;;;;;;;;;;;;;;;;;;;372:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;2155:10:::1;;2145:6;2129:13;:11;:13::i;:::-;:22;;;;:::i;:::-;:36;;2121:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;2194:17;2200:2;2204:6;2194:5;:17::i;:::-;2043:175:::0;;:::o;1948:89::-;2003:27;2009:12;:10;:12::i;:::-;2023:6;2003:5;:27::i;:::-;1948:89;:::o;1033:84:7:-;1080:4;1103:7;;;;;;;;;;;1096:14;;1033:84;:::o;833:708:3:-;1188:12:6;:10;:12::i;:::-;1177:23;;:7;:5;:7::i;:::-;:23;;;1169:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;917:15:3::1;948:10:::0;961:1:::1;948:14;;943:246;969:15;:22;964:2;:27;943:246;;;1023:15;1039:2;1023:19;;;;;;;;;;;;;;;;;;;;;;1013:29;;1061:6;:15;1068:7;1061:15;;;;;;;;;;;;;;;;;;;;;;;;;1057:122;;;1114:5;1096:6;:15;1103:7;1096:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;1156:7;1142:22;;;;;;;;;;;;1057:122;993:4;;;;;:::i;:::-;;;;943:246;;;;1199:9;1223:312;1234:7;:14;;;;1230:1;:18;1223:312;;;1274:7;1282:1;1274:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1264:20;;1304:6;:15;1311:7;1304:15;;;;;;;;;;;;;;;;;;;;;;;;;1299:226;;1352:7;1377:1;1360:7;:14;;;;:18;;;;:::i;:::-;1352:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1339:7;1347:1;1339:10;;;;;;;;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;1404:7;1429:1;1412:7;:14;;;;:18;;;;:::i;:::-;1404:27;;;;;;;;;;;;;;;;;;;;;;;;1397:34;;;;;;;;;;;1299:226;;;1507:3;;;;;:::i;:::-;;;;1299:226;1223:312;;;1247:1:6;;833:708:3::0;:::o;3304:125:2:-;3378:7;3404:9;:18;3414:7;3404:18;;;;;;;;;;;;;;;;3397:25;;3304:125;;;:::o;1597:92:6:-;1188:12;:10;:12::i;:::-;1177:23;;:7;:5;:7::i;:::-;:23;;;1169:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1661:21:::1;1679:1;1661:9;:21::i;:::-;1597:92::o:0;441:386:3:-;1188:12:6;:10;:12::i;:::-;1177:23;;:7;:5;:7::i;:::-;:23;;;1169:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;520:15:3::1;551:9:::0;563:1:::1;551:13;;546:275;570:13;:20;566:1;:24;546:275;;;621:13;635:1;621:16;;;;;;;;;;;;;;;;;;;;;;611:26;;657:6;:15;664:7;657:15;;;;;;;;;;;;;;;;;;;;;;;;;652:159;;692:7;705;692:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;749:4;731:6;:15;738:7;731:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;788:7;776:20;;;;;;;;;;;;652:159;592:3;;;;;:::i;:::-;;;;546:275;;;;1247:1:6;441:386:3::0;:::o;2224:361::-;2300:24;2327:32;2337:7;2346:12;:10;:12::i;:::-;2327:9;:32::i;:::-;2300:59;;2397:6;2377:16;:26;;2369:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;2478:58;2487:7;2496:12;:10;:12::i;:::-;2529:6;2510:16;:25;2478:8;:58::i;:::-;2556:22;2562:7;2571:6;2556:5;:22::i;:::-;2224:361;;;:::o;265:24::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;965:85:6:-;1011:7;1037:6;;;;;;;;;;;1030:13;;965:85;:::o;2263:102:2:-;2319:13;2351:7;2344:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2263:102;:::o;6354:405::-;6447:4;6463:24;6490:11;:25;6502:12;:10;:12::i;:::-;6490:25;;;;;;;;;;;;;;;:34;6516:7;6490:34;;;;;;;;;;;;;;;;6463:61;;6562:15;6542:16;:35;;6534:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;6653:67;6662:12;:10;:12::i;:::-;6676:7;6704:15;6685:16;:34;6653:8;:67::i;:::-;6748:4;6741:11;;;6354:405;;;;:::o;3632:172::-;3718:4;3734:42;3744:12;:10;:12::i;:::-;3758:9;3769:6;3734:9;:42::i;:::-;3793:4;3786:11;;3632:172;;;;:::o;1547:97:3:-;1601:4;1624:6;:13;1631:5;1624:13;;;;;;;;;;;;;;;;;;;;;;;;;1617:20;;1547:97;;;:::o;2926:61::-;1188:12:6;:10;:12::i;:::-;1177:23;;:7;:5;:7::i;:::-;:23;;;1169:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2970:10:3::1;:8;:10::i;:::-;2926:61::o:0;1857:85::-;1899:7;1925:10;;1918:17;;1857:85;:::o;3862:149:2:-;3951:7;3977:11;:18;3989:5;3977:18;;;;;;;;;;;;;;;:27;3996:7;3977:27;;;;;;;;;;;;;;;;3970:34;;3862:149;;;;:::o;1838:189:6:-;1188:12;:10;:12::i;:::-;1177:23;;:7;:5;:7::i;:::-;:23;;;1169:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1946:1:::1;1926:22;;:8;:22;;;;1918:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2001:19;2011:8;2001:9;:19::i;:::-;1838:189:::0;:::o;10884:121:2:-;;;;:::o;585:96:1:-;638:7;664:10;657:17;;585:96;:::o;1798:115:7:-;1347:8;:6;:8::i;:::-;1346:9;1338:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;1867:4:::1;1857:7;;:14;;;;;;;;;;;;;;;;;;1886:20;1893:12;:10;:12::i;:::-;1886:20;;;;;;:::i;:::-;;;;;;;;1798:115::o:0;9930:370:2:-;10078:1;10061:19;;:5;:19;;;;10053:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10158:1;10139:21;;:7;:21;;;;10131:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10240:6;10210:11;:18;10222:5;10210:18;;;;;;;;;;;;;;;:27;10229:7;10210:27;;;;;;;;;;;;;;;:36;;;;10277:7;10261:32;;10270:5;10261:32;;;10286:6;10261:32;;;;;;:::i;:::-;;;;;;;;9930:370;;;:::o;7233:713::-;7386:1;7368:20;;:6;:20;;;;7360:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;7469:1;7448:23;;:9;:23;;;;7440:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;7522:47;7543:6;7551:9;7562:6;7522:20;:47::i;:::-;7580:21;7604:9;:17;7614:6;7604:17;;;;;;;;;;;;;;;;7580:41;;7656:6;7639:13;:23;;7631:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;7775:6;7759:13;:22;7739:9;:17;7749:6;7739:17;;;;;;;;;;;;;;;:42;;;;7825:6;7801:9;:20;7811:9;7801:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;7864:9;7847:35;;7856:6;7847:35;;;7875:6;7847:35;;;;;;:::i;:::-;;;;;;;;7893:46;7913:6;7921:9;7932:6;7893:19;:46::i;:::-;7233:713;;;;:::o;8222:389::-;8324:1;8305:21;;:7;:21;;;;8297:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;8373:49;8402:1;8406:7;8415:6;8373:20;:49::i;:::-;8449:6;8433:12;;:22;;;;;;;:::i;:::-;;;;;;;;8487:6;8465:9;:18;8475:7;8465:18;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;8529:7;8508:37;;8525:1;8508:37;;;8538:6;8508:37;;;;;;:::i;:::-;;;;;;;;8556:48;8584:1;8588:7;8597:6;8556:19;:48::i;:::-;8222:389;;:::o;8931:576::-;9033:1;9014:21;;:7;:21;;;;9006:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9084:49;9105:7;9122:1;9126:6;9084:20;:49::i;:::-;9144:22;9169:9;:18;9179:7;9169:18;;;;;;;;;;;;;;;;9144:43;;9223:6;9205:14;:24;;9197:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9340:6;9323:14;:23;9302:9;:18;9312:7;9302:18;;;;;;;;;;;;;;;:44;;;;9382:6;9366:12;;:22;;;;;;;:::i;:::-;;;;;;;;9430:1;9404:37;;9413:7;9404:37;;;9434:6;9404:37;;;;;;:::i;:::-;;;;;;;;9452:48;9472:7;9489:1;9493:6;9452:19;:48::i;:::-;8931:576;;;:::o;2033:169:6:-;2088:16;2107:6;;;;;;;;;;;2088:25;;2132:8;2123:6;;:17;;;;;;;;;;;;;;;;;;2186:8;2155:40;;2176:8;2155:40;;;;;;;;;;;;2033:169;;:::o;2045:117:7:-;1612:8;:6;:8::i;:::-;1604:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;2113:5:::1;2103:7;;:15;;;;;;;;;;;;;;;;;;2133:22;2142:12;:10;:12::i;:::-;2133:22;;;;;;:::i;:::-;;;;;;;;2045:117::o:0;2591:265:3:-;2729:44;2756:4;2762:2;2766:6;2729:26;:44::i;:::-;2793:8;:6;:8::i;:::-;2792:9;2784:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;2591:265;;;:::o;11593:120:2:-;;;;:::o;24:622:8:-;;145:80;160:64;217:6;160:64;:::i;:::-;145:80;:::i;:::-;136:89;;245:5;273:6;266:5;259:21;299:4;292:5;288:16;281:23;;324:6;374:3;366:4;358:6;354:17;349:3;345:27;342:36;339:2;;;391:1;388;381:12;339:2;419:1;404:236;429:6;426:1;423:13;404:236;;;496:3;524:37;557:3;545:10;524:37;:::i;:::-;519:3;512:50;591:4;586:3;582:14;575:21;;625:4;620:3;616:14;609:21;;464:176;451:1;448;444:9;439:14;;404:236;;;408:14;126:520;;;;;;;:::o;652:139::-;;736:6;723:20;714:29;;752:33;779:5;752:33;:::i;:::-;704:87;;;;:::o;814:303::-;;934:3;927:4;919:6;915:17;911:27;901:2;;952:1;949;942:12;901:2;992:6;979:20;1017:94;1107:3;1099:6;1092:4;1084:6;1080:17;1017:94;:::i;:::-;1008:103;;891:226;;;;;:::o;1123:139::-;;1207:6;1194:20;1185:29;;1223:33;1250:5;1223:33;:::i;:::-;1175:87;;;;:::o;1268:262::-;;1376:2;1364:9;1355:7;1351:23;1347:32;1344:2;;;1392:1;1389;1382:12;1344:2;1435:1;1460:53;1505:7;1496:6;1485:9;1481:22;1460:53;:::i;:::-;1450:63;;1406:117;1334:196;;;;:::o;1536:407::-;;;1661:2;1649:9;1640:7;1636:23;1632:32;1629:2;;;1677:1;1674;1667:12;1629:2;1720:1;1745:53;1790:7;1781:6;1770:9;1766:22;1745:53;:::i;:::-;1735:63;;1691:117;1847:2;1873:53;1918:7;1909:6;1898:9;1894:22;1873:53;:::i;:::-;1863:63;;1818:118;1619:324;;;;;:::o;1949:552::-;;;;2091:2;2079:9;2070:7;2066:23;2062:32;2059:2;;;2107:1;2104;2097:12;2059:2;2150:1;2175:53;2220:7;2211:6;2200:9;2196:22;2175:53;:::i;:::-;2165:63;;2121:117;2277:2;2303:53;2348:7;2339:6;2328:9;2324:22;2303:53;:::i;:::-;2293:63;;2248:118;2405:2;2431:53;2476:7;2467:6;2456:9;2452:22;2431:53;:::i;:::-;2421:63;;2376:118;2049:452;;;;;:::o;2507:407::-;;;2632:2;2620:9;2611:7;2607:23;2603:32;2600:2;;;2648:1;2645;2638:12;2600:2;2691:1;2716:53;2761:7;2752:6;2741:9;2737:22;2716:53;:::i;:::-;2706:63;;2662:117;2818:2;2844:53;2889:7;2880:6;2869:9;2865:22;2844:53;:::i;:::-;2834:63;;2789:118;2590:324;;;;;:::o;2920:405::-;;3053:2;3041:9;3032:7;3028:23;3024:32;3021:2;;;3069:1;3066;3059:12;3021:2;3140:1;3129:9;3125:17;3112:31;3170:18;3162:6;3159:30;3156:2;;;3202:1;3199;3192:12;3156:2;3230:78;3300:7;3291:6;3280:9;3276:22;3230:78;:::i;:::-;3220:88;;3083:235;3011:314;;;;:::o;3331:262::-;;3439:2;3427:9;3418:7;3414:23;3410:32;3407:2;;;3455:1;3452;3445:12;3407:2;3498:1;3523:53;3568:7;3559:6;3548:9;3544:22;3523:53;:::i;:::-;3513:63;;3469:117;3397:196;;;;:::o;3599:118::-;3686:24;3704:5;3686:24;:::i;:::-;3681:3;3674:37;3664:53;;:::o;3723:109::-;3804:21;3819:5;3804:21;:::i;:::-;3799:3;3792:34;3782:50;;:::o;3838:364::-;;3954:39;3987:5;3954:39;:::i;:::-;4009:71;4073:6;4068:3;4009:71;:::i;:::-;4002:78;;4089:52;4134:6;4129:3;4122:4;4115:5;4111:16;4089:52;:::i;:::-;4166:29;4188:6;4166:29;:::i;:::-;4161:3;4157:39;4150:46;;3930:272;;;;;:::o;4208:367::-;;4371:67;4435:2;4430:3;4371:67;:::i;:::-;4364:74;;4468:34;4464:1;4459:3;4455:11;4448:55;4534:5;4529:2;4524:3;4520:12;4513:27;4566:2;4561:3;4557:12;4550:19;;4354:221;;;:::o;4581:318::-;;4744:67;4808:2;4803:3;4744:67;:::i;:::-;4737:74;;4841:22;4837:1;4832:3;4828:11;4821:43;4890:2;4885:3;4881:12;4874:19;;4727:172;;;:::o;4905:366::-;;5068:67;5132:2;5127:3;5068:67;:::i;:::-;5061:74;;5165:34;5161:1;5156:3;5152:11;5145:55;5231:4;5226:2;5221:3;5217:12;5210:26;5262:2;5257:3;5253:12;5246:19;;5051:220;;;:::o;5277:321::-;;5440:67;5504:2;5499:3;5440:67;:::i;:::-;5433:74;;5537:25;5533:1;5528:3;5524:11;5517:46;5589:2;5584:3;5580:12;5573:19;;5423:175;;;:::o;5604:370::-;;5767:67;5831:2;5826:3;5767:67;:::i;:::-;5760:74;;5864:34;5860:1;5855:3;5851:11;5844:55;5930:8;5925:2;5920:3;5916:12;5909:30;5965:2;5960:3;5956:12;5949:19;;5750:224;;;:::o;5980:366::-;;6143:67;6207:2;6202:3;6143:67;:::i;:::-;6136:74;;6240:34;6236:1;6231:3;6227:11;6220:55;6306:4;6301:2;6296:3;6292:12;6285:26;6337:2;6332:3;6328:12;6321:19;;6126:220;;;:::o;6352:370::-;;6515:67;6579:2;6574:3;6515:67;:::i;:::-;6508:74;;6612:34;6608:1;6603:3;6599:11;6592:55;6678:8;6673:2;6668:3;6664:12;6657:30;6713:2;6708:3;6704:12;6697:19;;6498:224;;;:::o;6728:375::-;;6891:67;6955:2;6950:3;6891:67;:::i;:::-;6884:74;;6988:34;6984:1;6979:3;6975:11;6968:55;7054:13;7049:2;7044:3;7040:12;7033:35;7094:2;7089:3;7085:12;7078:19;;6874:229;;;:::o;7109:314::-;;7272:67;7336:2;7331:3;7272:67;:::i;:::-;7265:74;;7369:18;7365:1;7360:3;7356:11;7349:39;7414:2;7409:3;7405:12;7398:19;;7255:168;;;:::o;7429:372::-;;7592:67;7656:2;7651:3;7592:67;:::i;:::-;7585:74;;7689:34;7685:1;7680:3;7676:11;7669:55;7755:10;7750:2;7745:3;7741:12;7734:32;7792:2;7787:3;7783:12;7776:19;;7575:226;;;:::o;7807:330::-;;7970:67;8034:2;8029:3;7970:67;:::i;:::-;7963:74;;8067:34;8063:1;8058:3;8054:11;8047:55;8128:2;8123:3;8119:12;8112:19;;7953:184;;;:::o;8143:312::-;;8306:67;8370:2;8365:3;8306:67;:::i;:::-;8299:74;;8403:16;8399:1;8394:3;8390:11;8383:37;8446:2;8441:3;8437:12;8430:19;;8289:166;;;:::o;8461:368::-;;8624:67;8688:2;8683:3;8624:67;:::i;:::-;8617:74;;8721:34;8717:1;8712:3;8708:11;8701:55;8787:6;8782:2;8777:3;8773:12;8766:28;8820:2;8815:3;8811:12;8804:19;;8607:222;;;:::o;8835:365::-;;8998:67;9062:2;9057:3;8998:67;:::i;:::-;8991:74;;9095:34;9091:1;9086:3;9082:11;9075:55;9161:3;9156:2;9151:3;9147:12;9140:25;9191:2;9186:3;9182:12;9175:19;;8981:219;;;:::o;9206:369::-;;9369:67;9433:2;9428:3;9369:67;:::i;:::-;9362:74;;9466:34;9462:1;9457:3;9453:11;9446:55;9532:7;9527:2;9522:3;9518:12;9511:29;9566:2;9561:3;9557:12;9550:19;;9352:223;;;:::o;9581:312::-;;9744:67;9808:2;9803:3;9744:67;:::i;:::-;9737:74;;9841:16;9837:1;9832:3;9828:11;9821:37;9884:2;9879:3;9875:12;9868:19;;9727:166;;;:::o;9899:368::-;;10062:67;10126:2;10121:3;10062:67;:::i;:::-;10055:74;;10159:34;10155:1;10150:3;10146:11;10139:55;10225:6;10220:2;10215:3;10211:12;10204:28;10258:2;10253:3;10249:12;10242:19;;10045:222;;;:::o;10273:369::-;;10436:67;10500:2;10495:3;10436:67;:::i;:::-;10429:74;;10533:34;10529:1;10524:3;10520:11;10513:55;10599:7;10594:2;10589:3;10585:12;10578:29;10633:2;10628:3;10624:12;10617:19;;10419:223;;;:::o;10648:329::-;;10811:67;10875:2;10870:3;10811:67;:::i;:::-;10804:74;;10908:33;10904:1;10899:3;10895:11;10888:54;10968:2;10963:3;10959:12;10952:19;;10794:183;;;:::o;10983:118::-;11070:24;11088:5;11070:24;:::i;:::-;11065:3;11058:37;11048:53;;:::o;11107:112::-;11190:22;11206:5;11190:22;:::i;:::-;11185:3;11178:35;11168:51;;:::o;11225:222::-;;11356:2;11345:9;11341:18;11333:26;;11369:71;11437:1;11426:9;11422:17;11413:6;11369:71;:::i;:::-;11323:124;;;;:::o;11453:210::-;;11578:2;11567:9;11563:18;11555:26;;11591:65;11653:1;11642:9;11638:17;11629:6;11591:65;:::i;:::-;11545:118;;;;:::o;11669:313::-;;11820:2;11809:9;11805:18;11797:26;;11869:9;11863:4;11859:20;11855:1;11844:9;11840:17;11833:47;11897:78;11970:4;11961:6;11897:78;:::i;:::-;11889:86;;11787:195;;;;:::o;11988:419::-;;12192:2;12181:9;12177:18;12169:26;;12241:9;12235:4;12231:20;12227:1;12216:9;12212:17;12205:47;12269:131;12395:4;12269:131;:::i;:::-;12261:139;;12159:248;;;:::o;12413:419::-;;12617:2;12606:9;12602:18;12594:26;;12666:9;12660:4;12656:20;12652:1;12641:9;12637:17;12630:47;12694:131;12820:4;12694:131;:::i;:::-;12686:139;;12584:248;;;:::o;12838:419::-;;13042:2;13031:9;13027:18;13019:26;;13091:9;13085:4;13081:20;13077:1;13066:9;13062:17;13055:47;13119:131;13245:4;13119:131;:::i;:::-;13111:139;;13009:248;;;:::o;13263:419::-;;13467:2;13456:9;13452:18;13444:26;;13516:9;13510:4;13506:20;13502:1;13491:9;13487:17;13480:47;13544:131;13670:4;13544:131;:::i;:::-;13536:139;;13434:248;;;:::o;13688:419::-;;13892:2;13881:9;13877:18;13869:26;;13941:9;13935:4;13931:20;13927:1;13916:9;13912:17;13905:47;13969:131;14095:4;13969:131;:::i;:::-;13961:139;;13859:248;;;:::o;14113:419::-;;14317:2;14306:9;14302:18;14294:26;;14366:9;14360:4;14356:20;14352:1;14341:9;14337:17;14330:47;14394:131;14520:4;14394:131;:::i;:::-;14386:139;;14284:248;;;:::o;14538:419::-;;14742:2;14731:9;14727:18;14719:26;;14791:9;14785:4;14781:20;14777:1;14766:9;14762:17;14755:47;14819:131;14945:4;14819:131;:::i;:::-;14811:139;;14709:248;;;:::o;14963:419::-;;15167:2;15156:9;15152:18;15144:26;;15216:9;15210:4;15206:20;15202:1;15191:9;15187:17;15180:47;15244:131;15370:4;15244:131;:::i;:::-;15236:139;;15134:248;;;:::o;15388:419::-;;15592:2;15581:9;15577:18;15569:26;;15641:9;15635:4;15631:20;15627:1;15616:9;15612:17;15605:47;15669:131;15795:4;15669:131;:::i;:::-;15661:139;;15559:248;;;:::o;15813:419::-;;16017:2;16006:9;16002:18;15994:26;;16066:9;16060:4;16056:20;16052:1;16041:9;16037:17;16030:47;16094:131;16220:4;16094:131;:::i;:::-;16086:139;;15984:248;;;:::o;16238:419::-;;16442:2;16431:9;16427:18;16419:26;;16491:9;16485:4;16481:20;16477:1;16466:9;16462:17;16455:47;16519:131;16645:4;16519:131;:::i;:::-;16511:139;;16409:248;;;:::o;16663:419::-;;16867:2;16856:9;16852:18;16844:26;;16916:9;16910:4;16906:20;16902:1;16891:9;16887:17;16880:47;16944:131;17070:4;16944:131;:::i;:::-;16936:139;;16834:248;;;:::o;17088:419::-;;17292:2;17281:9;17277:18;17269:26;;17341:9;17335:4;17331:20;17327:1;17316:9;17312:17;17305:47;17369:131;17495:4;17369:131;:::i;:::-;17361:139;;17259:248;;;:::o;17513:419::-;;17717:2;17706:9;17702:18;17694:26;;17766:9;17760:4;17756:20;17752:1;17741:9;17737:17;17730:47;17794:131;17920:4;17794:131;:::i;:::-;17786:139;;17684:248;;;:::o;17938:419::-;;18142:2;18131:9;18127:18;18119:26;;18191:9;18185:4;18181:20;18177:1;18166:9;18162:17;18155:47;18219:131;18345:4;18219:131;:::i;:::-;18211:139;;18109:248;;;:::o;18363:419::-;;18567:2;18556:9;18552:18;18544:26;;18616:9;18610:4;18606:20;18602:1;18591:9;18587:17;18580:47;18644:131;18770:4;18644:131;:::i;:::-;18636:139;;18534:248;;;:::o;18788:419::-;;18992:2;18981:9;18977:18;18969:26;;19041:9;19035:4;19031:20;19027:1;19016:9;19012:17;19005:47;19069:131;19195:4;19069:131;:::i;:::-;19061:139;;18959:248;;;:::o;19213:419::-;;19417:2;19406:9;19402:18;19394:26;;19466:9;19460:4;19456:20;19452:1;19441:9;19437:17;19430:47;19494:131;19620:4;19494:131;:::i;:::-;19486:139;;19384:248;;;:::o;19638:419::-;;19842:2;19831:9;19827:18;19819:26;;19891:9;19885:4;19881:20;19877:1;19866:9;19862:17;19855:47;19919:131;20045:4;19919:131;:::i;:::-;19911:139;;19809:248;;;:::o;20063:222::-;;20194:2;20183:9;20179:18;20171:26;;20207:71;20275:1;20264:9;20260:17;20251:6;20207:71;:::i;:::-;20161:124;;;;:::o;20291:214::-;;20418:2;20407:9;20403:18;20395:26;;20431:67;20495:1;20484:9;20480:17;20471:6;20431:67;:::i;:::-;20385:120;;;;:::o;20511:283::-;;20577:2;20571:9;20561:19;;20619:4;20611:6;20607:17;20726:6;20714:10;20711:22;20690:18;20678:10;20675:34;20672:62;20669:2;;;20737:18;;:::i;:::-;20669:2;20777:10;20773:2;20766:22;20551:243;;;;:::o;20800:311::-;;20967:18;20959:6;20956:30;20953:2;;;20989:18;;:::i;:::-;20953:2;21039:4;21031:6;21027:17;21019:25;;21099:4;21093;21089:15;21081:23;;20882:229;;;:::o;21117:99::-;;21203:5;21197:12;21187:22;;21176:40;;;:::o;21222:169::-;;21340:6;21335:3;21328:19;21380:4;21375:3;21371:14;21356:29;;21318:73;;;;:::o;21397:305::-;;21456:20;21474:1;21456:20;:::i;:::-;21451:25;;21490:20;21508:1;21490:20;:::i;:::-;21485:25;;21644:1;21576:66;21572:74;21569:1;21566:81;21563:2;;;21650:18;;:::i;:::-;21563:2;21694:1;21691;21687:9;21680:16;;21441:261;;;;:::o;21708:191::-;;21768:20;21786:1;21768:20;:::i;:::-;21763:25;;21802:20;21820:1;21802:20;:::i;:::-;21797:25;;21841:1;21838;21835:8;21832:2;;;21846:18;;:::i;:::-;21832:2;21891:1;21888;21884:9;21876:17;;21753:146;;;;:::o;21905:96::-;;21971:24;21989:5;21971:24;:::i;:::-;21960:35;;21950:51;;;:::o;22007:90::-;;22084:5;22077:13;22070:21;22059:32;;22049:48;;;:::o;22103:126::-;;22180:42;22173:5;22169:54;22158:65;;22148:81;;;:::o;22235:77::-;;22301:5;22290:16;;22280:32;;;:::o;22318:86::-;;22393:4;22386:5;22382:16;22371:27;;22361:43;;;:::o;22410:307::-;22478:1;22488:113;22502:6;22499:1;22496:13;22488:113;;;22587:1;22582:3;22578:11;22572:18;22568:1;22563:3;22559:11;22552:39;22524:2;22521:1;22517:10;22512:15;;22488:113;;;22619:6;22616:1;22613:13;22610:2;;;22699:1;22690:6;22685:3;22681:16;22674:27;22610:2;22459:258;;;;:::o;22723:320::-;;22804:1;22798:4;22794:12;22784:22;;22851:1;22845:4;22841:12;22872:18;22862:2;;22928:4;22920:6;22916:17;22906:27;;22862:2;22990;22982:6;22979:14;22959:18;22956:38;22953:2;;;23009:18;;:::i;:::-;22953:2;22774:269;;;;:::o;23049:233::-;;23111:24;23129:5;23111:24;:::i;:::-;23102:33;;23157:66;23150:5;23147:77;23144:2;;;23227:18;;:::i;:::-;23144:2;23274:1;23267:5;23263:13;23256:20;;23092:190;;;:::o;23288:180::-;23336:77;23333:1;23326:88;23433:4;23430:1;23423:15;23457:4;23454:1;23447:15;23474:180;23522:77;23519:1;23512:88;23619:4;23616:1;23609:15;23643:4;23640:1;23633:15;23660:180;23708:77;23705:1;23698:88;23805:4;23802:1;23795:15;23829:4;23826:1;23819:15;23846:102;;23938:2;23934:7;23929:2;23922:5;23918:14;23914:28;23904:38;;23894:54;;;:::o;23954:122::-;24027:24;24045:5;24027:24;:::i;:::-;24020:5;24017:35;24007:2;;24066:1;24063;24056:12;24007:2;23997:79;:::o;24082:122::-;24155:24;24173:5;24155:24;:::i;:::-;24148:5;24145:35;24135:2;;24194:1;24191;24184:12;24135:2;24125:79;:::o

Swarm Source

ipfs://449829756ed265607e50d7549888b75d7c322508a5c990c70a9ff7a9ebee1c8f

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

ACTIVE is a Web3 service that rewards activity actions When a user wears or uses NFTs: sneakers, soccer balls, basketballs, or golf clubs to actively engage in an exercise the corresponding NFT, $CARBON can be accumulated. $CARBON can be used to craft a new NFT or upgrade an existing NFT.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.