Contract 0x7408b3264f66a78ded7e6123a321d172e9f74f55

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x0ce80c07d51dd861c6762131233d8d5e807e8ce8955b0e116f1a5d6752fd3d77Transfer284578342022-05-18 6:04:552 days 18 hrs ago0x6ee5d692b5d5a419c8358e426f5ccd3ca7c00b7f IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.001594434547 30.001590877
0x1897f7ac1c4a73948013af5298ed10be3fc432b56da7b93643bad73ef40c749fTransfer284323992022-05-17 14:34:053 days 10 hrs ago0x38fdf77593811bec765ace12f0449ed077bf54bd IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.00586117355 110.236670817
0x972466d4a273d814d2b1c9bbec42a9890ff06c31ec6df0c9cd8fb0d419cfc6a7Transfer284289992022-05-17 12:24:253 days 12 hrs ago0xc308d8c992a50e56dcf5329cdf13af2fe96fdf99 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.001268573762 31.040000071
0xbaab559e0b4c74761626c71c12ee27a09cb0a50e0ac11e542e1bfeea3c5bb015Transfer284259452022-05-17 10:34:533 days 14 hrs ago0xc308d8c992a50e56dcf5329cdf13af2fe96fdf99 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.001742406149 30.069999998
0x4c6495531239e5ff15494fe5fbf534b7044febeb3f82d083ef631dcf522edbc8Transfer284246732022-05-17 9:48:563 days 14 hrs ago0xc308d8c992a50e56dcf5329cdf13af2fe96fdf99 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.001269689923 31.085565518
0x1dee1f2b6f2d9d1162d364cbff39058b53a2bb65cde7f77e9dede5cfa4beb9e5Transfer283600862022-05-15 19:48:555 days 4 hrs ago0xa9c5dd596a0c92fc447e2edc2dbe03129aaa0de3 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.001907696171 32.929352384
0x4967c5aa6b1b2f3466e127cdb05def0a9d34fc98f1681adcd2af9777948e7186Transfer281629532022-05-10 19:04:1810 days 5 hrs ago0xa9c5dd596a0c92fc447e2edc2dbe03129aaa0de3 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.005939648958 102.526176073
0x5173c5ec5bbaea8c487e3775af43e71b5421e74f12f9089b8f058e0e481cf794Transfer281382912022-05-10 4:33:0010 days 20 hrs ago0xd65448affe1475f101378a744a62c00f04cf50d6 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.0057957100
0x612b2120598e8813e69d3ab58c03e64d11ace686efb255a524d31b6ba66cc39aTransfer279106082022-05-04 10:33:4016 days 14 hrs ago0xd65448affe1475f101378a744a62c00f04cf50d6 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.0057945100
0x1faebb3dbc276a6aa3b7c729f00818997b420c3cc6292bdf6019fd2b6a5ca5d2Transfer278720682022-05-03 11:00:0717 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002410762271 41.604319127
0xbbead1aca0d902180f6e899baeb2bd09e74f7cc2348f37415ae60408e51fb4beTransfer278718902022-05-03 10:53:5917 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002104408524 51.521814766
0x2e4d92ec3cd00a432f7e6044873e0a1a34c3e96b6906947b4ca04a49ed081ca9Transfer278718662022-05-03 10:53:0717 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002545048505 43.921796621
0xd94f5d30b7c96609a1d2855075547b6f0deca774629fd8ceafc142f6878e2dcbTransfer278718502022-05-03 10:52:3517 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002604342853 44.945083325
0xe7cb7d86e261a8e2a40c7fdbfe3b2dd617444961300e3bacd0172627b9eb879dTransfer278718372022-05-03 10:52:0917 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002994164307 51.672522343
0x97ff0d4a602cda783692a98d2452e7b4d3e98a08d0473ed6e60e0038f0dbbd2bTransfer278718212022-05-03 10:51:3717 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.00299183933 51.632398495
0x7a4631d06ca8141688cda58d1be51619af1a2e69d59199fe2e262b0ce51f8f74Transfer278718082022-05-03 10:51:1117 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002806884744 48.440499518
0x451ead0fb43fb8f87e68003697234b09e70fd55c012646b290217d312038c1d5Transfer278717892022-05-03 10:50:2917 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002605086611 44.957918916
0xa0585cdf2d0a373ea329d7376ffb98481ab7e991da00b692f23247237775d3e9Transfer278717662022-05-03 10:49:4317 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002937633779 50.696932946
0x94e4250a914f6293aeefb84434543696747aee270f12f9476f990d846372b559Transfer278717522022-05-03 10:49:1517 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002845352276 49.104362359
0x9397ab8782b45a2577b8eda2fd0c187008ee2968ddc019d4f537cb61d469c02dTransfer278717102022-05-03 10:47:4717 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.003093787537 53.391794596
0x28f19d8111092f176ee0b446766c586da39d309e2ac1f0476922e74ddd6a6ccfTransfer278716632022-05-03 10:46:0917 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002445569713 42.205017051
0x15b8a356442ff03d2e56e769994d51baf778d592642dc06307198e38b29ee6bfTransfer278716312022-05-03 10:45:0517 days 13 hrs ago0x29ee6cbcbb9b0c8c6333865aa1c850611968a9ab IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.002357969139 40.69322874
0x5e5bf3c491ff9ed54112b6289e11f7663ac9ea32a13070654ddc6b120220a0caTransfer273700382022-04-20 17:31:3030 days 7 hrs ago0xd65448affe1475f101378a744a62c00f04cf50d6 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.0040857100
0x7152eae73c8841aa8eff62aa66ba8470c803c40640de0e88d99ace719c966941Transfer273698832022-04-20 17:26:1230 days 7 hrs ago0xd65448affe1475f101378a744a62c00f04cf50d6 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.0057933100
0xb77e938bae71a91e180efce04c1af2e815f84bdf300ff380d52cb5b97334f657Transfer269030162022-04-08 20:12:0142 days 4 hrs ago0xd65448affe1475f101378a744a62c00f04cf50d6 IN  0x7408b3264f66a78ded7e6123a321d172e9f74f550 MATIC0.0057945100
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ERCXToken

Compiler Version
v0.8.3+commit.8d00100c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2022-02-10
*/

/**
 *Submitted for verification at Etherscan.io on 2021-08-12
*/

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.2;


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



/// @title Ownable 
/// @custom:version 1.0.1
/*
 * Ownable
 *
 * Base contract with an owner.
 * Provides onlyOwner modifier, which prevents function from running if it is called by anyone other than the owner.
 * Provides onlyOwnerOrApi modifier, which prevents function from running if it is called by other than above OR from one API code.
 * Provides onlyOwnerOrApiOrContract modifier, which prevents function from running if it is called by other than above OR one smart contract code.
 * Provides onlySuperOwnerOrOwnerOrApiOrContract modifier, which prevents function from running if it is called by other than all whitelisted addresses.
 */
abstract contract Ownable {
    address public superOwnerAddr;
    address public ownerAddr;
    mapping(address => bool) public ApiAddr; // list of allowed apis
    mapping(address => bool) public ContractAddr; // list of allowed contracts

    constructor(address superOwner, address owner, address api) {
        superOwnerAddr = superOwner;
        ownerAddr = owner;
        ApiAddr[api] = true;
    }

    modifier onlySuperOwner() {
        require(msg.sender == superOwnerAddr, "Access denied for this address [0].");
        _;
    }

    modifier onlyOwner() {
        require(msg.sender == ownerAddr, "Access denied for this address [1].");
        _;
    }

    modifier onlyOwnerOrApi() {
        require(msg.sender == ownerAddr || ApiAddr[msg.sender] == true, "Access denied for this address [2].");
        _;
    }

    modifier onlyOwnerOrApiOrContract() {
        require(msg.sender == ownerAddr || ApiAddr[msg.sender] == true || ContractAddr[msg.sender] == true, "Access denied for this address [3].");
        _;
    }

    modifier onlySuperOwnerOrOwnerOrApiOrContract() {
        require(msg.sender == superOwnerAddr || msg.sender == ownerAddr || ApiAddr[msg.sender] == true || ContractAddr[msg.sender] == true, "Access denied for this address [3].");
        _;
    }

    function setOwnerAddr(address _address) public onlySuperOwner {
        ownerAddr = _address;
    }
    
    function addApiAddr(address _address) public onlyOwner {
        ApiAddr[_address] = true;
    }

    function removeApiAddr(address _address) public onlyOwner {
        ApiAddr[_address] = false;
    }

    function addContractAddr(address _address) public onlyOwner {
        ContractAddr[_address] = true;
    }

    function removeContractAddr(address _address) public onlyOwner {
        ContractAddr[_address] = false;
    }
}

 /**
 * @title Contract that will work with ERC223 tokens.
 */
 
/// @title ERC223ReceivingContract - Extension for ERC20 Token 
/// @custom:version 1.0.0
abstract contract ERC223ReceivingContract {
/**
 * @dev Standard ERC223 function that will handle incoming token transfers.
 *
 * @param _from  Token sender address.
 * @param _value Amount of tokens.
 * @param _data  Transaction metadata.
 */

    function tokenFallback(address _from, uint256 _value, bytes memory _data) virtual public;
}



/// @title ERCXToken - Extended ERC20 Token
/// @custom:version 1.0.1
contract ERCXToken is IERC20, Ownable {
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    uint256 private _totalSupply;
    string private _name;
    string private _symbol;

    uint8 private _decimals;
    uint256 private _maxSupply;

    /**
     * ERC223 interface extension with additional data argument
     */
    event Transfer(address indexed from, address indexed to, uint256 value, bytes data);

    constructor (
        string memory tokenName,
        string memory tokenSymbol,
        uint8 tokenDecimals,
        uint256 tokenTotalSupply,
        uint256 tokenMaxSupply,
        address superOwner,
        address owner,
        address api,
        address initialTokenHolder
    )
    Ownable(superOwner, owner, api)
     {
        _name = tokenName;
        _symbol = tokenSymbol;
        _decimals = tokenDecimals;
        _totalSupply = tokenTotalSupply;
	    _maxSupply = tokenMaxSupply;
        _balances[initialTokenHolder] = _totalSupply;
        emit Transfer(address(0), initialTokenHolder, _totalSupply);

        bytes memory empty;
        emit Transfer(address(0), initialTokenHolder, _totalSupply, empty);
    }

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

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view 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 returns (uint8) {
        return _decimals;
    }

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

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

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view 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 override returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

    /**
    * @dev Transfer token for a specified address (ERC223)
    * @param to The address to transfer to.
    * @param value The amount to be transferred.
    * @param data Transaction metadata.
    */
    function transfer(address to, uint256 value, bytes memory data) public returns (bool) {
        _transfer223(msg.sender, to, value, data);
        return true;
    }

    /**
    * @dev Transfer token for a specified addresses (ERC223)
    * @param from The address to transfer from.
    * @param to The address to transfer to.
    * @param value The amount to be transferred.
    * @param data Transaction metadata to be forwarded to the receiving smart contract.
    */
    function _transfer223(address from, address to, uint256 value, bytes memory data) internal {
        require(value <= _balances[from], "Value must not be higher than sender's balance.");
        require(to != address(0), "Receiver address must be set.");

        uint256 codeLength;
        assembly {
            codeLength := extcodesize(to)
        }

        _balances[from] = _balances[from] - value;
        _balances[to] = _balances[to] + value;

        if(codeLength > 0) { // receiver is a contract address
            ERC223ReceivingContract receiver = ERC223ReceivingContract(to);
            receiver.tokenFallback(msg.sender, value, data);
        }

        emit Transfer(from, to, value);
        emit Transfer(from, to, value, data);
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view 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 override returns (bool) {
        _approve(msg.sender, 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 override returns (bool) {
        _transfer(sender, recipient, amount);

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

        return true;
    }

    /**
     * @dev Moves tokens `amount` from `sender` to `recipient`.
     *
     * This is internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    function _transfer(address sender, address recipient, uint256 amount) internal {
        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");

        uint256 codeLength;
        bytes memory empty;
        assembly {
             codeLength := extcodesize(recipient)
        }

        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        if (codeLength > 0) { // odbiorca jest kontraktem, nie walletem
            ERC223ReceivingContract receiver = ERC223ReceivingContract(recipient);
            receiver.tokenFallback(msg.sender, amount, empty);
        }

        emit Transfer(sender, recipient, amount);
        emit Transfer(sender, recipient, amount, empty);
    }

    /**
     * @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 {
        require(account != address(0), "ERC20: burn from the zero address");

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

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

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

        bytes memory empty;
        emit Transfer(account, address(0), amount, empty);
    }

    /**
     * @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 {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

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

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

    /**
    * @dev Burns a specific amount of tokens.
    * @param value The amount of token to be burned.
    */
    function burn(uint256 value) public onlySuperOwnerOrOwnerOrApiOrContract {
        _burn(msg.sender, value);
    }

   /**
    * @dev Internal function that burns an amount of the token of a given
    * account, deducting from the sender's allowance for said account. Uses the
    * internal burn function.
    * @param account The account whose tokens will be burnt.
    * @param value The amount that will be burnt.
    */
    function _burnFrom(address account, uint256 value) internal {
        require(value <= _allowances[account][msg.sender], "Amount must not be higher than allowed balance.");
        // Should https://github.com/OpenZeppelin/zeppelin-solidity/issues/707 be accepted,
        // this function needs to emit an event with the updated approval.
        _allowances[account][msg.sender] = _allowances[account][msg.sender] - value;
        _burn(account, value);
    }

    /**
    * @dev Burns a specific amount of tokens from the target address and decrements allowance
    * @param from address The address which you want to send tokens from
    * @param value uint256 The amount of token to be burned
    */
    function burnFrom(address from, uint256 value) public onlySuperOwnerOrOwnerOrApiOrContract {
        _burnFrom(from, value);
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"tokenName","type":"string"},{"internalType":"string","name":"tokenSymbol","type":"string"},{"internalType":"uint8","name":"tokenDecimals","type":"uint8"},{"internalType":"uint256","name":"tokenTotalSupply","type":"uint256"},{"internalType":"uint256","name":"tokenMaxSupply","type":"uint256"},{"internalType":"address","name":"superOwner","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"api","type":"address"},{"internalType":"address","name":"initialTokenHolder","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"ApiAddr","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"ContractAddr","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"addApiAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"addContractAddr","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":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"value","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":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ownerAddr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"removeApiAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"removeContractAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"setOwnerAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"superOwnerAddr","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"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"}]

60806040523480156200001157600080fd5b50604051620035ea380380620035ea833981810160405281019062000037919062000406565b838383826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050505088600790805190602001906200012e9291906200029f565b508760089080519060200190620001479291906200029f565b5086600960006101000a81548160ff021916908360ff1602179055508560068190555084600a81905550600654600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60065460405162000219919062000563565b60405180910390a360608173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c16600654846040516200028792919062000580565b60405180910390a350505050505050505050620007d9565b828054620002ad90620006b0565b90600052602060002090601f016020900481019282620002d157600085556200031d565b82601f10620002ec57805160ff19168380011785556200031d565b828001600101855582156200031d579182015b828111156200031c578251825591602001919060010190620002ff565b5b5090506200032c919062000330565b5090565b5b808211156200034b57600081600090555060010162000331565b5090565b6000620003666200036084620005dd565b620005b4565b9050828152602081018484840111156200037f57600080fd5b6200038c8482856200067a565b509392505050565b600081519050620003a5816200078b565b92915050565b600082601f830112620003bd57600080fd5b8151620003cf8482602086016200034f565b91505092915050565b600081519050620003e981620007a5565b92915050565b6000815190506200040081620007bf565b92915050565b60008060008060008060008060006101208a8c0312156200042657600080fd5b60008a015167ffffffffffffffff8111156200044157600080fd5b6200044f8c828d01620003ab565b99505060208a015167ffffffffffffffff8111156200046d57600080fd5b6200047b8c828d01620003ab565b98505060406200048e8c828d01620003ef565b9750506060620004a18c828d01620003d8565b9650506080620004b48c828d01620003d8565b95505060a0620004c78c828d0162000394565b94505060c0620004da8c828d0162000394565b93505060e0620004ed8c828d0162000394565b925050610100620005018c828d0162000394565b9150509295985092959850929598565b60006200051e8262000613565b6200052a81856200061e565b93506200053c8185602086016200067a565b62000547816200077a565b840191505092915050565b6200055d8162000663565b82525050565b60006020820190506200057a600083018462000552565b92915050565b600060408201905062000597600083018562000552565b8181036020830152620005ab818462000511565b90509392505050565b6000620005c0620005d3565b9050620005ce8282620006e6565b919050565b6000604051905090565b600067ffffffffffffffff821115620005fb57620005fa6200074b565b5b62000606826200077a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b60006200063c8262000643565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b838110156200069a5780820151818401526020810190506200067d565b83811115620006aa576000848401525b50505050565b60006002820490506001821680620006c957607f821691505b60208210811415620006e057620006df6200071c565b5b50919050565b620006f1826200077a565b810181811067ffffffffffffffff821117156200071357620007126200074b565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b62000796816200062f565b8114620007a257600080fd5b50565b620007b08162000663565b8114620007bc57600080fd5b50565b620007ca816200066d565b8114620007d657600080fd5b50565b612e0180620007e96000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c806370a08231116100c3578063a457c2d71161007c578063a457c2d7146103d9578063a9059cbb14610409578063be45fd6214610439578063d5abeb0114610469578063dd62ed3e14610487578063e074278d146104b757610158565b806370a08231146103195780637853e6501461034957806379cc6790146103655780638408c92d1461038157806395d89b411461039d5780639c675eaa146103bb57610158565b8063313ce56711610115578063313ce56714610247578063395093511461026557806342966c68146102955780635a8be781146102b15780635d5bf9d6146102e157806367087c98146102fd57610158565b806306fdde031461015d5780630958a13b1461017b578063095ea7b3146101ab57806318160ddd146101db57806323b872dd146101f95780632a8e593a14610229575b600080fd5b6101656104d3565b604051610172919061240a565b60405180910390f35b61019560048036038101906101909190611f5b565b610565565b6040516101a291906123ef565b60405180910390f35b6101c560048036038101906101c0919061200f565b610585565b6040516101d291906123ef565b60405180910390f35b6101e361059c565b6040516101f0919061260c565b60405180910390f35b610213600480360381019061020e9190611fc0565b6105a6565b60405161022091906123ef565b60405180910390f35b610231610699565b60405161023e9190612396565b60405180910390f35b61024f6106bd565b60405161025c9190612657565b60405180910390f35b61027f600480360381019061027a919061200f565b6106d4565b60405161028c91906123ef565b60405180910390f35b6102af60048036038101906102aa91906120b2565b610772565b005b6102cb60048036038101906102c69190611f5b565b61091b565b6040516102d891906123ef565b60405180910390f35b6102fb60048036038101906102f69190611f5b565b61093b565b005b61031760048036038101906103129190611f5b565b610a26565b005b610333600480360381019061032e9190611f5b565b610b11565b604051610340919061260c565b60405180910390f35b610363600480360381019061035e9190611f5b565b610b5a565b005b61037f600480360381019061037a919061200f565b610c45565b005b61039b60048036038101906103969190611f5b565b610def565b005b6103a5610eda565b6040516103b2919061240a565b60405180910390f35b6103c3610f6c565b6040516103d09190612396565b60405180910390f35b6103f360048036038101906103ee919061200f565b610f92565b60405161040091906123ef565b60405180910390f35b610423600480360381019061041e919061200f565b611078565b60405161043091906123ef565b60405180910390f35b610453600480360381019061044e919061204b565b61108f565b60405161046091906123ef565b60405180910390f35b6104716110a8565b60405161047e919061260c565b60405180910390f35b6104a1600480360381019061049c9190611f84565b6110b2565b6040516104ae919061260c565b60405180910390f35b6104d160048036038101906104cc9190611f5b565b611139565b005b6060600780546104e290612821565b80601f016020809104026020016040519081016040528092919081815260200182805461050e90612821565b801561055b5780601f106105305761010080835404028352916020019161055b565b820191906000526020600020905b81548152906001019060200180831161053e57829003601f168201915b5050505050905090565b60026020528060005260406000206000915054906101000a900460ff1681565b600061059233848461120b565b6001905092915050565b6000600654905090565b60006105b38484846113d6565b6000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610677576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066e9061250c565b60405180910390fd5b61068d853385846106889190612756565b61120b565b60019150509392505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600960009054906101000a900460ff16905090565b6000610768338484600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107639190612700565b61120b565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806108195750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b80610874575060011515600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b806108cf575060011515600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b61090e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610905906125ac565b60405180910390fd5b6109183382611748565b50565b60036020528060005260406000206000915054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109c2906125ec565b60405180910390fd5b6001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ab6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aad906125ec565b60405180910390fd5b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610bea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610be1906125ec565b60405180910390fd5b6001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610cec5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b80610d47575060011515600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b80610da2575060011515600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b610de1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd8906125ac565b60405180910390fd5b610deb8282611989565b5050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e76906125ec565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b606060088054610ee990612821565b80601f0160208091040260200160405190810160405280929190818152602001828054610f1590612821565b8015610f625780601f10610f3757610100808354040283529160200191610f62565b820191906000526020600020905b815481529060010190602001808311610f4557829003601f168201915b5050505050905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611057576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104e906125cc565b60405180910390fd5b61106d338585846110689190612756565b61120b565b600191505092915050565b60006110853384846113d6565b6001905092915050565b600061109d33858585611b5e565b600190509392505050565b6000600a54905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146111c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111be906124ec565b60405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561127b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112729061258c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156112eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e2906124ac565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516113c9919061260c565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611446576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143d9061256c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ad9061242c565b60405180910390fd5b6114c1838383611ec4565b6000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611548576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153f906124cc565b60405180910390fd5b60006060843b9150838361155c9190612756565b600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555083600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115ee9190612700565b9250508190555060008211156116745760008590508073ffffffffffffffffffffffffffffffffffffffff1663c0ee0b8a3387856040518463ffffffff1660e01b8152600401611640939291906123b1565b600060405180830381600087803b15801561165a57600080fd5b505af115801561166e573d6000803e3d6000fd5b50505050505b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516116d1919061260c565b60405180910390a38473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c168684604051611738929190612627565b60405180910390a3505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156117b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117af9061254c565b60405180910390fd5b6117c482600083611ec4565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561184b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118429061248c565b60405180910390fd5b81816118579190612756565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600660008282546118ac9190612756565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611911919061260c565b60405180910390a36060600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c16858460405161197b929190612627565b60405180910390a350505050565b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115611a48576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a3f9061244c565b60405180910390fd5b80600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad09190612756565b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b5a8282611748565b5050565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115611be0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd79061252c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611c50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c479061246c565b60405180910390fd5b6000833b905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ca19190612756565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d2f9190612700565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000811115611df15760008490508073ffffffffffffffffffffffffffffffffffffffff1663c0ee0b8a3386866040518463ffffffff1660e01b8152600401611dbd939291906123b1565b600060405180830381600087803b158015611dd757600080fd5b505af1158015611deb573d6000803e3d6000fd5b50505050505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611e4e919061260c565b60405180910390a38373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c168585604051611eb5929190612627565b60405180910390a35050505050565b505050565b6000611edc611ed784612697565b612672565b905082815260208101848484011115611ef457600080fd5b611eff8482856127df565b509392505050565b600081359050611f1681612d9d565b92915050565b600082601f830112611f2d57600080fd5b8135611f3d848260208601611ec9565b91505092915050565b600081359050611f5581612db4565b92915050565b600060208284031215611f6d57600080fd5b6000611f7b84828501611f07565b91505092915050565b60008060408385031215611f9757600080fd5b6000611fa585828601611f07565b9250506020611fb685828601611f07565b9150509250929050565b600080600060608486031215611fd557600080fd5b6000611fe386828701611f07565b9350506020611ff486828701611f07565b925050604061200586828701611f46565b9150509250925092565b6000806040838503121561202257600080fd5b600061203085828601611f07565b925050602061204185828601611f46565b9150509250929050565b60008060006060848603121561206057600080fd5b600061206e86828701611f07565b935050602061207f86828701611f46565b925050604084013567ffffffffffffffff81111561209c57600080fd5b6120a886828701611f1c565b9150509250925092565b6000602082840312156120c457600080fd5b60006120d284828501611f46565b91505092915050565b6120e48161278a565b82525050565b6120f38161279c565b82525050565b6000612104826126c8565b61210e81856126de565b935061211e8185602086016127ee565b61212781612911565b840191505092915050565b600061213d826126d3565b61214781856126ef565b93506121578185602086016127ee565b61216081612911565b840191505092915050565b60006121786023836126ef565b915061218382612922565b604082019050919050565b600061219b602f836126ef565b91506121a682612971565b604082019050919050565b60006121be601d836126ef565b91506121c9826129c0565b602082019050919050565b60006121e16022836126ef565b91506121ec826129e9565b604082019050919050565b60006122046022836126ef565b915061220f82612a38565b604082019050919050565b60006122276026836126ef565b915061223282612a87565b604082019050919050565b600061224a6023836126ef565b915061225582612ad6565b604082019050919050565b600061226d6028836126ef565b915061227882612b25565b604082019050919050565b6000612290602f836126ef565b915061229b82612b74565b604082019050919050565b60006122b36021836126ef565b91506122be82612bc3565b604082019050919050565b60006122d66025836126ef565b91506122e182612c12565b604082019050919050565b60006122f96024836126ef565b915061230482612c61565b604082019050919050565b600061231c6023836126ef565b915061232782612cb0565b604082019050919050565b600061233f6025836126ef565b915061234a82612cff565b604082019050919050565b60006123626023836126ef565b915061236d82612d4e565b604082019050919050565b612381816127c8565b82525050565b612390816127d2565b82525050565b60006020820190506123ab60008301846120db565b92915050565b60006060820190506123c660008301866120db565b6123d36020830185612378565b81810360408301526123e581846120f9565b9050949350505050565b600060208201905061240460008301846120ea565b92915050565b600060208201905081810360008301526124248184612132565b905092915050565b600060208201905081810360008301526124458161216b565b9050919050565b600060208201905081810360008301526124658161218e565b9050919050565b60006020820190508181036000830152612485816121b1565b9050919050565b600060208201905081810360008301526124a5816121d4565b9050919050565b600060208201905081810360008301526124c5816121f7565b9050919050565b600060208201905081810360008301526124e58161221a565b9050919050565b600060208201905081810360008301526125058161223d565b9050919050565b6000602082019050818103600083015261252581612260565b9050919050565b6000602082019050818103600083015261254581612283565b9050919050565b60006020820190508181036000830152612565816122a6565b9050919050565b60006020820190508181036000830152612585816122c9565b9050919050565b600060208201905081810360008301526125a5816122ec565b9050919050565b600060208201905081810360008301526125c58161230f565b9050919050565b600060208201905081810360008301526125e581612332565b9050919050565b6000602082019050818103600083015261260581612355565b9050919050565b60006020820190506126216000830184612378565b92915050565b600060408201905061263c6000830185612378565b818103602083015261264e81846120f9565b90509392505050565b600060208201905061266c6000830184612387565b92915050565b600061267c61268d565b90506126888282612853565b919050565b6000604051905090565b600067ffffffffffffffff8211156126b2576126b16128e2565b5b6126bb82612911565b9050602081019050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061270b826127c8565b9150612716836127c8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561274b5761274a612884565b5b828201905092915050565b6000612761826127c8565b915061276c836127c8565b92508282101561277f5761277e612884565b5b828203905092915050565b6000612795826127a8565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b8381101561280c5780820151818401526020810190506127f1565b8381111561281b576000848401525b50505050565b6000600282049050600182168061283957607f821691505b6020821081141561284d5761284c6128b3565b5b50919050565b61285c82612911565b810181811067ffffffffffffffff8211171561287b5761287a6128e2565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206e6f7420626520686967686572207468616e206160008201527f6c6c6f7765642062616c616e63652e0000000000000000000000000000000000602082015250565b7f52656365697665722061646472657373206d757374206265207365742e000000600082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f4163636573732064656e69656420666f7220746869732061646472657373205b60008201527f305d2e0000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f56616c7565206d757374206e6f7420626520686967686572207468616e20736560008201527f6e64657227732062616c616e63652e0000000000000000000000000000000000602082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4163636573732064656e69656420666f7220746869732061646472657373205b60008201527f335d2e0000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f4163636573732064656e69656420666f7220746869732061646472657373205b60008201527f315d2e0000000000000000000000000000000000000000000000000000000000602082015250565b612da68161278a565b8114612db157600080fd5b50565b612dbd816127c8565b8114612dc857600080fd5b5056fea2646970667358221220ca2f3816f45aee44b90798ccd543bc6ee56bb57cf585e33028a36af8597daed264736f6c634300080300330000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000033b2e3c9fd0803ce8000000000000000000000000000000cbd053203f55de8729ce8dd0424018e6f02f9ca8000000000000000000000000147b2ebe8cce19bdd857dd070dcb0f3ff893b500000000000000000000000000cbd053203f55de8729ce8dd0424018e6f02f9ca80000000000000000000000006ac73abcd62cb287e5deb3056ba0ca138e3706430000000000000000000000000000000000000000000000000000000000000003473447000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034734470000000000000000000000000000000000000000000000000000000000

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

0000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000033b2e3c9fd0803ce80000000000000000000000000000000000000000000000033b2e3c9fd0803ce8000000000000000000000000000000cbd053203f55de8729ce8dd0424018e6f02f9ca8000000000000000000000000147b2ebe8cce19bdd857dd070dcb0f3ff893b500000000000000000000000000cbd053203f55de8729ce8dd0424018e6f02f9ca80000000000000000000000006ac73abcd62cb287e5deb3056ba0ca138e3706430000000000000000000000000000000000000000000000000000000000000003473447000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034734470000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : tokenName (string): G4G
Arg [1] : tokenSymbol (string): G4G
Arg [2] : tokenDecimals (uint8): 18
Arg [3] : tokenTotalSupply (uint256): 1000000000000000000000000000
Arg [4] : tokenMaxSupply (uint256): 1000000000000000000000000000
Arg [5] : superOwner (address): 0xcbd053203f55de8729ce8dd0424018e6f02f9ca8
Arg [6] : owner (address): 0x147b2ebe8cce19bdd857dd070dcb0f3ff893b500
Arg [7] : api (address): 0xcbd053203f55de8729ce8dd0424018e6f02f9ca8
Arg [8] : initialTokenHolder (address): 0x6ac73abcd62cb287e5deb3056ba0ca138e370643

-----Encoded View---------------
13 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000160
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000
Arg [4] : 0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000
Arg [5] : 000000000000000000000000cbd053203f55de8729ce8dd0424018e6f02f9ca8
Arg [6] : 000000000000000000000000147b2ebe8cce19bdd857dd070dcb0f3ff893b500
Arg [7] : 000000000000000000000000cbd053203f55de8729ce8dd0424018e6f02f9ca8
Arg [8] : 0000000000000000000000006ac73abcd62cb287e5deb3056ba0ca138e370643
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [10] : 4734470000000000000000000000000000000000000000000000000000000000
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [12] : 4734470000000000000000000000000000000000000000000000000000000000


Deployed ByteCode Sourcemap

6005:12854:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7339:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3617:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11008:159;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8510:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11649:410;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3550:29;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8267:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12468:203;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17560:116;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3687:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5179:108;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5295:112;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8673:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4963:98;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18722:132;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5069:102;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7541:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3586:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13174:365;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9005:165;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9391:168;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8358:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10718:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4850:101;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7339:83;7376:13;7409:5;7402:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7339:83;:::o;3617:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;11008:159::-;11083:4;11100:37;11109:10;11121:7;11130:6;11100:8;:37::i;:::-;11155:4;11148:11;;11008:159;;;;:::o;8510:100::-;8563:7;8590:12;;8583:19;;8510:100;:::o;11649:410::-;11747:4;11764:36;11774:6;11782:9;11793:6;11764:9;:36::i;:::-;11813:24;11840:11;:19;11852:6;11840:19;;;;;;;;;;;;;;;:31;11860:10;11840:31;;;;;;;;;;;;;;;;11813:58;;11910:6;11890:16;:26;;11882:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;11972:55;11981:6;11989:10;12020:6;12001:16;:25;;;;:::i;:::-;11972:8;:55::i;:::-;12047:4;12040:11;;;11649:410;;;;;:::o;3550:29::-;;;;;;;;;;;;:::o;8267:83::-;8308:5;8333:9;;;;;;;;;;;8326:16;;8267:83;:::o;12468:203::-;12548:4;12565:76;12574:10;12586:7;12630:10;12595:11;:23;12607:10;12595:23;;;;;;;;;;;;;;;:32;12619:7;12595:32;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;12565:8;:76::i;:::-;12659:4;12652:11;;12468:203;;;;:::o;17560:116::-;4674:14;;;;;;;;;;4660:28;;:10;:28;;;:55;;;;4706:9;;;;;;;;;;;4692:23;;:10;:23;;;4660:55;:86;;;;4742:4;4719:27;;:7;:19;4727:10;4719:19;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;4660:86;:122;;;;4778:4;4750:32;;:12;:24;4763:10;4750:24;;;;;;;;;;;;;;;;;;;;;;;;;:32;;;4660:122;4652:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;17644:24:::1;17650:10;17662:5;17644;:24::i;:::-;17560:116:::0;:::o;3687:44::-;;;;;;;;;;;;;;;;;;;;;;:::o;5179:108::-;4136:9;;;;;;;;;;;4122:23;;:10;:23;;;4114:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5275:4:::1;5250:12;:22;5263:8;5250:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;5179:108:::0;:::o;5295:112::-;4136:9;;;;;;;;;;;4122:23;;:10;:23;;;4114:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5394:5:::1;5369:12;:22;5382:8;5369:22;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;5295:112:::0;:::o;8673:119::-;8739:7;8766:9;:18;8776:7;8766:18;;;;;;;;;;;;;;;;8759:25;;8673:119;;;:::o;4963:98::-;4136:9;;;;;;;;;;;4122:23;;:10;:23;;;4114:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5049:4:::1;5029:7;:17;5037:8;5029:17;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;4963:98:::0;:::o;18722:132::-;4674:14;;;;;;;;;;4660:28;;:10;:28;;;:55;;;;4706:9;;;;;;;;;;;4692:23;;:10;:23;;;4660:55;:86;;;;4742:4;4719:27;;:7;:19;4727:10;4719:19;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;4660:86;:122;;;;4778:4;4750:32;;:12;:24;4763:10;4750:24;;;;;;;;;;;;;;;;;;;;;;;;;:32;;;4660:122;4652:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;18824:22:::1;18834:4;18840:5;18824:9;:22::i;:::-;18722:132:::0;;:::o;5069:102::-;4136:9;;;;;;;;;;;4122:23;;:10;:23;;;4114:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5158:5:::1;5138:7;:17;5146:8;5138:17;;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;5069:102:::0;:::o;7541:87::-;7580:13;7613:7;7606:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7541:87;:::o;3586:24::-;;;;;;;;;;;;;:::o;13174:365::-;13259:4;13276:24;13303:11;:23;13315:10;13303:23;;;;;;;;;;;;;;;:32;13327:7;13303:32;;;;;;;;;;;;;;;;13276:59;;13374:15;13354:16;:35;;13346:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;13442:65;13451:10;13463:7;13491:15;13472:16;:34;;;;:::i;:::-;13442:8;:65::i;:::-;13527:4;13520:11;;;13174:365;;;;:::o;9005:165::-;9083:4;9100:40;9110:10;9122:9;9133:6;9100:9;:40::i;:::-;9158:4;9151:11;;9005:165;;;;:::o;9391:168::-;9471:4;9488:41;9501:10;9513:2;9517:5;9524:4;9488:12;:41::i;:::-;9547:4;9540:11;;9391:168;;;;;:::o;8358:87::-;8400:7;8427:10;;8420:17;;8358:87;:::o;10718:143::-;10799:7;10826:11;:18;10838:5;10826:18;;;;;;;;;;;;;;;:27;10845:7;10826:27;;;;;;;;;;;;;;;;10819:34;;10718:143;;;;:::o;4850:101::-;4000:14;;;;;;;;;;3986:28;;:10;:28;;;3978:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;4935:8:::1;4923:9;;:20;;;;;;;;;;;;;;;;;;4850:101:::0;:::o;16409:338::-;16520:1;16503:19;;:5;:19;;;;16495:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16601:1;16582:21;;:7;:21;;;;16574:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;16685:6;16655:11;:18;16667:5;16655:18;;;;;;;;;;;;;;;:27;16674:7;16655:27;;;;;;;;;;;;;;;:36;;;;16723:7;16707:32;;16716:5;16707:32;;;16732:6;16707:32;;;;;;:::i;:::-;;;;;;;;16409:338;;;:::o;14029:1032::-;14145:1;14127:20;;:6;:20;;;;14119:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;14229:1;14208:23;;:9;:23;;;;14200:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;14284:47;14305:6;14313:9;14324:6;14284:20;:47::i;:::-;14344:21;14368:9;:17;14378:6;14368:17;;;;;;;;;;;;;;;;14344:41;;14421:6;14404:13;:23;;14396:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;14483:18;14512;14592:9;14580:22;14566:36;;14661:6;14645:13;:22;;;;:::i;:::-;14625:9;:17;14635:6;14625:17;;;;;;;;;;;;;;;:42;;;;14702:6;14678:9;:20;14688:9;14678:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;14738:1;14725:10;:14;14721:222;;;14798:32;14857:9;14798:69;;14882:8;:22;;;14905:10;14917:6;14925:5;14882:49;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14721:222;;14977:9;14960:35;;14969:6;14960:35;;;14988:6;14960:35;;;;;;:::i;:::-;;;;;;;;15028:9;15011:42;;15020:6;15011:42;;;15039:6;15047:5;15011:42;;;;;;;:::i;:::-;;;;;;;;14029:1032;;;;;;:::o;15394:577::-;15489:1;15470:21;;:7;:21;;;;15462:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15542:49;15563:7;15580:1;15584:6;15542:20;:49::i;:::-;15604:22;15629:9;:18;15639:7;15629:18;;;;;;;;;;;;;;;;15604:43;;15684:6;15666:14;:24;;15658:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;15778:6;15761:14;:23;;;;:::i;:::-;15740:9;:18;15750:7;15740:18;;;;;;;;;;;;;;;:44;;;;15811:6;15795:12;;:22;;;;;;;:::i;:::-;;;;;;;;15861:1;15835:37;;15844:7;15835:37;;;15865:6;15835:37;;;;;;:::i;:::-;;;;;;;;15885:18;15945:1;15919:44;;15928:7;15919:44;;;15949:6;15957:5;15919:44;;;;;;;:::i;:::-;;;;;;;;15394:577;;;;:::o;18000:467::-;18088:11;:20;18100:7;18088:20;;;;;;;;;;;;;;;:32;18109:10;18088:32;;;;;;;;;;;;;;;;18079:5;:41;;18071:101;;;;;;;;;;;;:::i;:::-;;;;;;;;;18422:5;18387:11;:20;18399:7;18387:20;;;;;;;;;;;;;;;:32;18408:10;18387:32;;;;;;;;;;;;;;;;:40;;;;:::i;:::-;18352:11;:20;18364:7;18352:20;;;;;;;;;;;;;;;:32;18373:10;18352:32;;;;;;;;;;;;;;;:75;;;;18438:21;18444:7;18453:5;18438;:21::i;:::-;18000:467;;:::o;9879:776::-;9998:9;:15;10008:4;9998:15;;;;;;;;;;;;;;;;9989:5;:24;;9981:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;10098:1;10084:16;;:2;:16;;;;10076:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;10147:18;10226:2;10214:15;10200:29;;10288:5;10270:9;:15;10280:4;10270:15;;;;;;;;;;;;;;;;:23;;;;:::i;:::-;10252:9;:15;10262:4;10252:15;;;;;;;;;;;;;;;:41;;;;10336:5;10320:9;:13;10330:2;10320:13;;;;;;;;;;;;;;;;:21;;;;:::i;:::-;10304:9;:13;10314:2;10304:13;;;;;;;;;;;;;;;:37;;;;10370:1;10357:10;:14;10354:204;;;10422:32;10481:2;10422:62;;10499:8;:22;;;10522:10;10534:5;10541:4;10499:47;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10354:204;;10590:2;10575:25;;10584:4;10575:25;;;10594:5;10575:25;;;;;;:::i;:::-;;;;;;;;10631:2;10616:31;;10625:4;10616:31;;;10635:5;10642:4;10616:31;;;;;;;:::i;:::-;;;;;;;;9879:776;;;;;:::o;17350:84::-;;;;:::o;7:343:1:-;;109:65;125:48;166:6;125:48;:::i;:::-;109:65;:::i;:::-;100:74;;197:6;190:5;183:21;235:4;228:5;224:16;273:3;264:6;259:3;255:16;252:25;249:2;;;290:1;287;280:12;249:2;303:41;337:6;332:3;327;303:41;:::i;:::-;90:260;;;;;;:::o;356:139::-;;440:6;427:20;418:29;;456:33;483:5;456:33;:::i;:::-;408:87;;;;:::o;514:271::-;;618:3;611:4;603:6;599:17;595:27;585:2;;636:1;633;626:12;585:2;676:6;663:20;701:78;775:3;767:6;760:4;752:6;748:17;701:78;:::i;:::-;692:87;;575:210;;;;;:::o;791:139::-;;875:6;862:20;853:29;;891:33;918:5;891:33;:::i;:::-;843:87;;;;:::o;936:262::-;;1044:2;1032:9;1023:7;1019:23;1015:32;1012:2;;;1060:1;1057;1050:12;1012:2;1103:1;1128:53;1173:7;1164:6;1153:9;1149:22;1128:53;:::i;:::-;1118:63;;1074:117;1002:196;;;;:::o;1204:407::-;;;1329:2;1317:9;1308:7;1304:23;1300:32;1297:2;;;1345:1;1342;1335:12;1297:2;1388:1;1413:53;1458:7;1449:6;1438:9;1434:22;1413:53;:::i;:::-;1403:63;;1359:117;1515:2;1541:53;1586:7;1577:6;1566:9;1562:22;1541:53;:::i;:::-;1531:63;;1486:118;1287:324;;;;;:::o;1617:552::-;;;;1759:2;1747:9;1738:7;1734:23;1730:32;1727:2;;;1775:1;1772;1765:12;1727:2;1818:1;1843:53;1888:7;1879:6;1868:9;1864:22;1843:53;:::i;:::-;1833:63;;1789:117;1945:2;1971:53;2016:7;2007:6;1996:9;1992:22;1971:53;:::i;:::-;1961:63;;1916:118;2073:2;2099:53;2144:7;2135:6;2124:9;2120:22;2099:53;:::i;:::-;2089:63;;2044:118;1717:452;;;;;:::o;2175:407::-;;;2300:2;2288:9;2279:7;2275:23;2271:32;2268:2;;;2316:1;2313;2306:12;2268:2;2359:1;2384:53;2429:7;2420:6;2409:9;2405:22;2384:53;:::i;:::-;2374:63;;2330:117;2486:2;2512:53;2557:7;2548:6;2537:9;2533:22;2512:53;:::i;:::-;2502:63;;2457:118;2258:324;;;;;:::o;2588:663::-;;;;2739:2;2727:9;2718:7;2714:23;2710:32;2707:2;;;2755:1;2752;2745:12;2707:2;2798:1;2823:53;2868:7;2859:6;2848:9;2844:22;2823:53;:::i;:::-;2813:63;;2769:117;2925:2;2951:53;2996:7;2987:6;2976:9;2972:22;2951:53;:::i;:::-;2941:63;;2896:118;3081:2;3070:9;3066:18;3053:32;3112:18;3104:6;3101:30;3098:2;;;3144:1;3141;3134:12;3098:2;3172:62;3226:7;3217:6;3206:9;3202:22;3172:62;:::i;:::-;3162:72;;3024:220;2697:554;;;;;:::o;3257:262::-;;3365:2;3353:9;3344:7;3340:23;3336:32;3333:2;;;3381:1;3378;3371:12;3333:2;3424:1;3449:53;3494:7;3485:6;3474:9;3470:22;3449:53;:::i;:::-;3439:63;;3395:117;3323:196;;;;:::o;3525:118::-;3612:24;3630:5;3612:24;:::i;:::-;3607:3;3600:37;3590:53;;:::o;3649:109::-;3730:21;3745:5;3730:21;:::i;:::-;3725:3;3718:34;3708:50;;:::o;3764:360::-;;3878:38;3910:5;3878:38;:::i;:::-;3932:70;3995:6;3990:3;3932:70;:::i;:::-;3925:77;;4011:52;4056:6;4051:3;4044:4;4037:5;4033:16;4011:52;:::i;:::-;4088:29;4110:6;4088:29;:::i;:::-;4083:3;4079:39;4072:46;;3854:270;;;;;:::o;4130:364::-;;4246:39;4279:5;4246:39;:::i;:::-;4301:71;4365:6;4360:3;4301:71;:::i;:::-;4294:78;;4381:52;4426:6;4421:3;4414:4;4407:5;4403:16;4381:52;:::i;:::-;4458:29;4480:6;4458:29;:::i;:::-;4453:3;4449:39;4442:46;;4222:272;;;;;:::o;4500:366::-;;4663:67;4727:2;4722:3;4663:67;:::i;:::-;4656:74;;4739:93;4828:3;4739:93;:::i;:::-;4857:2;4852:3;4848:12;4841:19;;4646:220;;;:::o;4872:366::-;;5035:67;5099:2;5094:3;5035:67;:::i;:::-;5028:74;;5111:93;5200:3;5111:93;:::i;:::-;5229:2;5224:3;5220:12;5213:19;;5018:220;;;:::o;5244:366::-;;5407:67;5471:2;5466:3;5407:67;:::i;:::-;5400:74;;5483:93;5572:3;5483:93;:::i;:::-;5601:2;5596:3;5592:12;5585:19;;5390:220;;;:::o;5616:366::-;;5779:67;5843:2;5838:3;5779:67;:::i;:::-;5772:74;;5855:93;5944:3;5855:93;:::i;:::-;5973:2;5968:3;5964:12;5957:19;;5762:220;;;:::o;5988:366::-;;6151:67;6215:2;6210:3;6151:67;:::i;:::-;6144:74;;6227:93;6316:3;6227:93;:::i;:::-;6345:2;6340:3;6336:12;6329:19;;6134:220;;;:::o;6360:366::-;;6523:67;6587:2;6582:3;6523:67;:::i;:::-;6516:74;;6599:93;6688:3;6599:93;:::i;:::-;6717:2;6712:3;6708:12;6701:19;;6506:220;;;:::o;6732:366::-;;6895:67;6959:2;6954:3;6895:67;:::i;:::-;6888:74;;6971:93;7060:3;6971:93;:::i;:::-;7089:2;7084:3;7080:12;7073:19;;6878:220;;;:::o;7104:366::-;;7267:67;7331:2;7326:3;7267:67;:::i;:::-;7260:74;;7343:93;7432:3;7343:93;:::i;:::-;7461:2;7456:3;7452:12;7445:19;;7250:220;;;:::o;7476:366::-;;7639:67;7703:2;7698:3;7639:67;:::i;:::-;7632:74;;7715:93;7804:3;7715:93;:::i;:::-;7833:2;7828:3;7824:12;7817:19;;7622:220;;;:::o;7848:366::-;;8011:67;8075:2;8070:3;8011:67;:::i;:::-;8004:74;;8087:93;8176:3;8087:93;:::i;:::-;8205:2;8200:3;8196:12;8189:19;;7994:220;;;:::o;8220:366::-;;8383:67;8447:2;8442:3;8383:67;:::i;:::-;8376:74;;8459:93;8548:3;8459:93;:::i;:::-;8577:2;8572:3;8568:12;8561:19;;8366:220;;;:::o;8592:366::-;;8755:67;8819:2;8814:3;8755:67;:::i;:::-;8748:74;;8831:93;8920:3;8831:93;:::i;:::-;8949:2;8944:3;8940:12;8933:19;;8738:220;;;:::o;8964:366::-;;9127:67;9191:2;9186:3;9127:67;:::i;:::-;9120:74;;9203:93;9292:3;9203:93;:::i;:::-;9321:2;9316:3;9312:12;9305:19;;9110:220;;;:::o;9336:366::-;;9499:67;9563:2;9558:3;9499:67;:::i;:::-;9492:74;;9575:93;9664:3;9575:93;:::i;:::-;9693:2;9688:3;9684:12;9677:19;;9482:220;;;:::o;9708:366::-;;9871:67;9935:2;9930:3;9871:67;:::i;:::-;9864:74;;9947:93;10036:3;9947:93;:::i;:::-;10065:2;10060:3;10056:12;10049:19;;9854:220;;;:::o;10080:118::-;10167:24;10185:5;10167:24;:::i;:::-;10162:3;10155:37;10145:53;;:::o;10204:112::-;10287:22;10303:5;10287:22;:::i;:::-;10282:3;10275:35;10265:51;;:::o;10322:222::-;;10453:2;10442:9;10438:18;10430:26;;10466:71;10534:1;10523:9;10519:17;10510:6;10466:71;:::i;:::-;10420:124;;;;:::o;10550:529::-;;10755:2;10744:9;10740:18;10732:26;;10768:71;10836:1;10825:9;10821:17;10812:6;10768:71;:::i;:::-;10849:72;10917:2;10906:9;10902:18;10893:6;10849:72;:::i;:::-;10968:9;10962:4;10958:20;10953:2;10942:9;10938:18;10931:48;10996:76;11067:4;11058:6;10996:76;:::i;:::-;10988:84;;10722:357;;;;;;:::o;11085:210::-;;11210:2;11199:9;11195:18;11187:26;;11223:65;11285:1;11274:9;11270:17;11261:6;11223:65;:::i;:::-;11177:118;;;;:::o;11301:313::-;;11452:2;11441:9;11437:18;11429:26;;11501:9;11495:4;11491:20;11487:1;11476:9;11472:17;11465:47;11529:78;11602:4;11593:6;11529:78;:::i;:::-;11521:86;;11419:195;;;;:::o;11620:419::-;;11824:2;11813:9;11809:18;11801:26;;11873:9;11867:4;11863:20;11859:1;11848:9;11844:17;11837:47;11901:131;12027:4;11901:131;:::i;:::-;11893:139;;11791:248;;;:::o;12045:419::-;;12249:2;12238:9;12234:18;12226:26;;12298:9;12292:4;12288:20;12284:1;12273:9;12269:17;12262:47;12326:131;12452:4;12326:131;:::i;:::-;12318:139;;12216:248;;;:::o;12470:419::-;;12674:2;12663:9;12659:18;12651:26;;12723:9;12717:4;12713:20;12709:1;12698:9;12694:17;12687:47;12751:131;12877:4;12751:131;:::i;:::-;12743:139;;12641:248;;;:::o;12895:419::-;;13099:2;13088:9;13084:18;13076:26;;13148:9;13142:4;13138:20;13134:1;13123:9;13119:17;13112:47;13176:131;13302:4;13176:131;:::i;:::-;13168:139;;13066:248;;;:::o;13320:419::-;;13524:2;13513:9;13509:18;13501:26;;13573:9;13567:4;13563:20;13559:1;13548:9;13544:17;13537:47;13601:131;13727:4;13601:131;:::i;:::-;13593:139;;13491:248;;;:::o;13745:419::-;;13949:2;13938:9;13934:18;13926:26;;13998:9;13992:4;13988:20;13984:1;13973:9;13969:17;13962:47;14026:131;14152:4;14026:131;:::i;:::-;14018:139;;13916:248;;;:::o;14170:419::-;;14374:2;14363:9;14359:18;14351:26;;14423:9;14417:4;14413:20;14409:1;14398:9;14394:17;14387:47;14451:131;14577:4;14451:131;:::i;:::-;14443:139;;14341:248;;;:::o;14595:419::-;;14799:2;14788:9;14784:18;14776:26;;14848:9;14842:4;14838:20;14834:1;14823:9;14819:17;14812:47;14876:131;15002:4;14876:131;:::i;:::-;14868:139;;14766:248;;;:::o;15020:419::-;;15224:2;15213:9;15209:18;15201:26;;15273:9;15267:4;15263:20;15259:1;15248:9;15244:17;15237:47;15301:131;15427:4;15301:131;:::i;:::-;15293:139;;15191:248;;;:::o;15445:419::-;;15649:2;15638:9;15634:18;15626:26;;15698:9;15692:4;15688:20;15684:1;15673:9;15669:17;15662:47;15726:131;15852:4;15726:131;:::i;:::-;15718:139;;15616:248;;;:::o;15870:419::-;;16074:2;16063:9;16059:18;16051:26;;16123:9;16117:4;16113:20;16109:1;16098:9;16094:17;16087:47;16151:131;16277:4;16151:131;:::i;:::-;16143:139;;16041:248;;;:::o;16295:419::-;;16499:2;16488:9;16484:18;16476:26;;16548:9;16542:4;16538:20;16534:1;16523:9;16519:17;16512:47;16576:131;16702:4;16576:131;:::i;:::-;16568:139;;16466:248;;;:::o;16720:419::-;;16924:2;16913:9;16909:18;16901:26;;16973:9;16967:4;16963:20;16959:1;16948:9;16944:17;16937:47;17001:131;17127:4;17001:131;:::i;:::-;16993:139;;16891:248;;;:::o;17145:419::-;;17349:2;17338:9;17334:18;17326:26;;17398:9;17392:4;17388:20;17384:1;17373:9;17369:17;17362:47;17426:131;17552:4;17426:131;:::i;:::-;17418:139;;17316:248;;;:::o;17570:419::-;;17774:2;17763:9;17759:18;17751:26;;17823:9;17817:4;17813:20;17809:1;17798:9;17794:17;17787:47;17851:131;17977:4;17851:131;:::i;:::-;17843:139;;17741:248;;;:::o;17995:222::-;;18126:2;18115:9;18111:18;18103:26;;18139:71;18207:1;18196:9;18192:17;18183:6;18139:71;:::i;:::-;18093:124;;;;:::o;18223:419::-;;18400:2;18389:9;18385:18;18377:26;;18413:71;18481:1;18470:9;18466:17;18457:6;18413:71;:::i;:::-;18531:9;18525:4;18521:20;18516:2;18505:9;18501:18;18494:48;18559:76;18630:4;18621:6;18559:76;:::i;:::-;18551:84;;18367:275;;;;;:::o;18648:214::-;;18775:2;18764:9;18760:18;18752:26;;18788:67;18852:1;18841:9;18837:17;18828:6;18788:67;:::i;:::-;18742:120;;;;:::o;18868:129::-;;18929:20;;:::i;:::-;18919:30;;18958:33;18986:4;18978:6;18958:33;:::i;:::-;18909:88;;;:::o;19003:75::-;;19069:2;19063:9;19053:19;;19043:35;:::o;19084:307::-;;19235:18;19227:6;19224:30;19221:2;;;19257:18;;:::i;:::-;19221:2;19295:29;19317:6;19295:29;:::i;:::-;19287:37;;19379:4;19373;19369:15;19361:23;;19150:241;;;:::o;19397:98::-;;19482:5;19476:12;19466:22;;19455:40;;;:::o;19501:99::-;;19587:5;19581:12;19571:22;;19560:40;;;:::o;19606:168::-;;19723:6;19718:3;19711:19;19763:4;19758:3;19754:14;19739:29;;19701:73;;;;:::o;19780:169::-;;19898:6;19893:3;19886:19;19938:4;19933:3;19929:14;19914:29;;19876:73;;;;:::o;19955:305::-;;20014:20;20032:1;20014:20;:::i;:::-;20009:25;;20048:20;20066:1;20048:20;:::i;:::-;20043:25;;20202:1;20134:66;20130:74;20127:1;20124:81;20121:2;;;20208:18;;:::i;:::-;20121:2;20252:1;20249;20245:9;20238:16;;19999:261;;;;:::o;20266:191::-;;20326:20;20344:1;20326:20;:::i;:::-;20321:25;;20360:20;20378:1;20360:20;:::i;:::-;20355:25;;20399:1;20396;20393:8;20390:2;;;20404:18;;:::i;:::-;20390:2;20449:1;20446;20442:9;20434:17;;20311:146;;;;:::o;20463:96::-;;20529:24;20547:5;20529:24;:::i;:::-;20518:35;;20508:51;;;:::o;20565:90::-;;20642:5;20635:13;20628:21;20617:32;;20607:48;;;:::o;20661:126::-;;20738:42;20731:5;20727:54;20716:65;;20706:81;;;:::o;20793:77::-;;20859:5;20848:16;;20838:32;;;:::o;20876:86::-;;20951:4;20944:5;20940:16;20929:27;;20919:43;;;:::o;20968:154::-;21052:6;21047:3;21042;21029:30;21114:1;21105:6;21100:3;21096:16;21089:27;21019:103;;;:::o;21128:307::-;21196:1;21206:113;21220:6;21217:1;21214:13;21206:113;;;21305:1;21300:3;21296:11;21290:18;21286:1;21281:3;21277:11;21270:39;21242:2;21239:1;21235:10;21230:15;;21206:113;;;21337:6;21334:1;21331:13;21328:2;;;21417:1;21408:6;21403:3;21399:16;21392:27;21328:2;21177:258;;;;:::o;21441:320::-;;21522:1;21516:4;21512:12;21502:22;;21569:1;21563:4;21559:12;21590:18;21580:2;;21646:4;21638:6;21634:17;21624:27;;21580:2;21708;21700:6;21697:14;21677:18;21674:38;21671:2;;;21727:18;;:::i;:::-;21671:2;21492:269;;;;:::o;21767:281::-;21850:27;21872:4;21850:27;:::i;:::-;21842:6;21838:40;21980:6;21968:10;21965:22;21944:18;21932:10;21929:34;21926:62;21923:2;;;21991:18;;:::i;:::-;21923:2;22031:10;22027:2;22020:22;21810:238;;;:::o;22054:180::-;22102:77;22099:1;22092:88;22199:4;22196:1;22189:15;22223:4;22220:1;22213:15;22240:180;22288:77;22285:1;22278:88;22385:4;22382:1;22375:15;22409:4;22406:1;22399:15;22426:180;22474:77;22471:1;22464:88;22571:4;22568:1;22561:15;22595:4;22592:1;22585:15;22612:102;;22704:2;22700:7;22695:2;22688:5;22684:14;22680:28;22670:38;;22660:54;;;:::o;22720:222::-;22860:34;22856:1;22848:6;22844:14;22837:58;22929:5;22924:2;22916:6;22912:15;22905:30;22826:116;:::o;22948:234::-;23088:34;23084:1;23076:6;23072:14;23065:58;23157:17;23152:2;23144:6;23140:15;23133:42;23054:128;:::o;23188:179::-;23328:31;23324:1;23316:6;23312:14;23305:55;23294:73;:::o;23373:221::-;23513:34;23509:1;23501:6;23497:14;23490:58;23582:4;23577:2;23569:6;23565:15;23558:29;23479:115;:::o;23600:221::-;23740:34;23736:1;23728:6;23724:14;23717:58;23809:4;23804:2;23796:6;23792:15;23785:29;23706:115;:::o;23827:225::-;23967:34;23963:1;23955:6;23951:14;23944:58;24036:8;24031:2;24023:6;24019:15;24012:33;23933:119;:::o;24058:222::-;24198:34;24194:1;24186:6;24182:14;24175:58;24267:5;24262:2;24254:6;24250:15;24243:30;24164:116;:::o;24286:227::-;24426:34;24422:1;24414:6;24410:14;24403:58;24495:10;24490:2;24482:6;24478:15;24471:35;24392:121;:::o;24519:234::-;24659:34;24655:1;24647:6;24643:14;24636:58;24728:17;24723:2;24715:6;24711:15;24704:42;24625:128;:::o;24759:220::-;24899:34;24895:1;24887:6;24883:14;24876:58;24968:3;24963:2;24955:6;24951:15;24944:28;24865:114;:::o;24985:224::-;25125:34;25121:1;25113:6;25109:14;25102:58;25194:7;25189:2;25181:6;25177:15;25170:32;25091:118;:::o;25215:223::-;25355:34;25351:1;25343:6;25339:14;25332:58;25424:6;25419:2;25411:6;25407:15;25400:31;25321:117;:::o;25444:222::-;25584:34;25580:1;25572:6;25568:14;25561:58;25653:5;25648:2;25640:6;25636:15;25629:30;25550:116;:::o;25672:224::-;25812:34;25808:1;25800:6;25796:14;25789:58;25881:7;25876:2;25868:6;25864:15;25857:32;25778:118;:::o;25902:222::-;26042:34;26038:1;26030:6;26026:14;26019:58;26111:5;26106:2;26098:6;26094:15;26087:30;26008:116;:::o;26130:122::-;26203:24;26221:5;26203:24;:::i;:::-;26196:5;26193:35;26183:2;;26242:1;26239;26232:12;26183:2;26173:79;:::o;26258:122::-;26331:24;26349:5;26331:24;:::i;:::-;26324:5;26321:35;26311:2;;26370:1;26367;26360:12;26311:2;26301:79;:::o

Swarm Source

ipfs://ca2f3816f45aee44b90798ccd543bc6ee56bb57cf585e33028a36af8597daed2
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.