Contract 0x6ae9701b9c423f40d54556c9a443409d79ce170a 3

 
 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x01db941a7e6c2f964f26ed4547bf5b72bf5a8fcfaec07de3d66c869bb14f4326Transfer145501482022-01-21 5:19:096 mins ago0x4cf8800ccc0a56396f77b1e7c46160f5df0e09a5 IN  PolkaCity: POLC Token0 BNB0.000353008
0x0be4061de782ea29fc1d99971cd169bf643cd5d556ec512a97e3a6bb3ffa81b9Approve And Call145500312022-01-21 5:13:1811 mins ago0x3a001aa60776850608aef70ac864cea0a2ad0cbf IN  PolkaCity: POLC Token0 BNB0.00091489
0xa4f9304827f167bf2a3af362cd0f2f650001eb4a3c0a4e3a8d77ca1d3404b1c3Transfer145500252022-01-21 5:13:0012 mins ago0x53f78a071d04224b8e254e243fffc6d9f2f3fa23 IN  PolkaCity: POLC Token0 BNB0.000260255
0xff7a948b6e81410d99abc097a11ec4de260db2dcb440dd3f3932ece01ac169aaApprove And Call145500132022-01-21 5:12:2412 mins ago0x3a001aa60776850608aef70ac864cea0a2ad0cbf IN  PolkaCity: POLC Token0 BNB0.00087295
0x623788bd58263d4fe363d7dd87a63509f39128ca6f0b7b4080f8efd36f9d754aTransfer145497992022-01-21 5:01:4223 mins ago0xeb28a38eaa676dd6c2464dade149ea6d6720df5a IN  PolkaCity: POLC Token0 BNB0.000110195
0x8885df351787ac4408b6983e9df6f90328c2edfb0286ee4bf36c1174e9967414Transfer145497772022-01-21 5:00:3624 mins ago0x250f19fbde257e4561004d48382b509baaeb2321 IN  PolkaCity: POLC Token0 BNB0.000185135
0x62e47924347a6c290d1ccef381b816d3c20f3a45c29dce8af5d06d83948d163eTransfer145497512022-01-21 4:59:1825 mins ago0x5a4bbb2d29547b0c06b82c9ea2433f7361d120f4 IN  PolkaCity: POLC Token0 BNB0.00052039
0x3d5391f450b851a36d51c85d1f0fb2be1f923b66581e82e45e72fef7ecb5eea9Transfer145497472022-01-21 4:59:0626 mins ago0xc7d4f5a9a9c76ad475f9329dae6deb99904c64d4 IN  PolkaCity: POLC Token0 BNB0.0001434095
0xedad8d1e2f99c14e83e45035159153113cb9c2a6bfb091c26fd7069c56433e8eApprove And Call145496562022-01-21 4:54:3330 mins ago0x30f51c030ac43d1240e54e985ec00a711041aab7 IN  PolkaCity: POLC Token0 BNB0.00127635
0xd28be154fe5989c7ddc45ba2eb70daae4064cdf55a26737a6c62192ffafef862Transfer145495252022-01-21 4:48:0037 mins ago0x53f78a071d04224b8e254e243fffc6d9f2f3fa23 IN  PolkaCity: POLC Token0 BNB0.000260135
0x57771993641903d66e5bd8c32e8fa22f361f15879a4deb9e07ab5836688a8d6bTransfer145494512022-01-21 4:44:1840 mins ago0xd5863708e88da3e94e9762c0b09f2ed76aeb8241 IN  PolkaCity: POLC Token0 BNB0.000185255
0x0868f807a49185b975040af32543332759bae03962583872d92df0c5326ec6afTransfer145494452022-01-21 4:44:0041 mins ago0x53f78a071d04224b8e254e243fffc6d9f2f3fa23 IN  PolkaCity: POLC Token0 BNB0.000185195
0x6b4c7c9a42cde238c47c2e64aa9a6c1063cd2475e8601749492b76f2058269d9Transfer145494152022-01-21 4:42:3042 mins ago0xf57b540fff6c7357df10ec226b2c340ea0afeea1 IN  PolkaCity: POLC Token0 BNB0.0001653825
0xfb41a73abff45786e83b78e2943f412742970602811b62b9ba93f5d656414b65Transfer145494132022-01-21 4:42:2442 mins ago0x0e6275deb703cf02c73dbd59b791befaee701060 IN  PolkaCity: POLC Token0 BNB0.0002777025
0xfb3d4946ad259a50ddb39d7b7d8edf0d3ef2ae4b3af3aef35714adee8ee00313Transfer145493902022-01-21 4:41:1543 mins ago0x46c790f43b536f677f7dd1e44c2839091d62750f IN  PolkaCity: POLC Token0 BNB0.0001434095
0x629bec4a6e14a3a3c16e2a74adbf60e57db049945a81f1feb35bd9e000290fb5Transfer145492862022-01-21 4:36:0349 mins ago0x53f78a071d04224b8e254e243fffc6d9f2f3fa23 IN  PolkaCity: POLC Token0 BNB0.000260255
0xe996fb5b58c525bf3cfc4f7592a85d594623bef660dcdc7e67f28a06f65acb8fApprove And Call145492812022-01-21 4:35:4849 mins ago0x3a001aa60776850608aef70ac864cea0a2ad0cbf IN  PolkaCity: POLC Token0 BNB0.00095695
0xf202f4bea5dc33d74c3fc8f00921f65a7d5f9b61ab78995911c65bd3aed02f39Transfer145492792022-01-21 4:35:4249 mins ago0x8daab79c6c01ed845ebe546cddb4a496f6382ec6 IN  PolkaCity: POLC Token0 BNB0.0001433315
0xd44efb01626c1f95b208dfd1ddefde3997d62b9b73a02fce3fb235734dd6c011Approve And Call145492512022-01-21 4:34:1850 mins ago0x3a001aa60776850608aef70ac864cea0a2ad0cbf IN  PolkaCity: POLC Token0 BNB0.00095695
0x5026c3b22c5fd561d84cdcde5f61b4975b21a71594c7aed259728a60a5f2c066Transfer145490332022-01-21 4:23:241 hr 1 min ago0xf59742b240426fdc41d61954a49f55f2a377313d IN  PolkaCity: POLC Token0 BNB0.000407561
0x6418c4e0aef3e06e0151794ad80b5a9e941b68b9e77d500d92761d8f74a834c9Transfer145489902022-01-21 4:21:151 hr 3 mins ago0x5e6e330a05cb236345f72da302b381095acdc027 IN  PolkaCity: POLC Token0 BNB0.000185135
0x3d56f1c72e57327449998bc02a3ba6400910116d47f90681fd30902c44319885Transfer145489502022-01-21 4:19:151 hr 5 mins ago0x4cf8800ccc0a56396f77b1e7c46160f5df0e09a5 IN  PolkaCity: POLC Token0 BNB0.000353008
0xee06ec2eaf8b1e329a6f322b59ae9add957277d7e0a69c8478ce9f8f95ca8842Approve145488982022-01-21 4:16:391 hr 8 mins ago0x48a19bdafb294826795ea34b4a1c2a99577f7518 IN  PolkaCity: POLC Token0 BNB0.00022255
0x088317354223ffc9903a28574df888b080abe3d34afd97097ab7781868be7655Transfer145488392022-01-21 4:13:421 hr 11 mins ago0xf8ba3ec49212ca45325a2335a8ab1279770df6c0 IN  PolkaCity: POLC Token0 BNB0.000185255
0x8f94d2228bf22c6e1829ba2d6ea9599faca27d4cfb853e031f8b11860c724f80Approve145488202022-01-21 4:12:451 hr 12 mins ago0x04869db049e4da15701100b659487866b5ed8043 IN  PolkaCity: POLC Token0 BNB0.000072815
[ Download CSV Export 

OVERVIEW

Polka City is an autonomous contract based NFT gaming platform that allows users to invest in virtual assets.

Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
POLCToken

Compiler Version
v0.8.2+commit.661d1103

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2021-06-22
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.2;

interface ItokenRecipient { 
    function receiveApproval(address _from, uint256 _value, address _token, bytes calldata _extraData) external returns (bool); 
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

library ECDSA {
    /**
     * @dev Returns the address that signed a hashed message (`hash`) with
     * `signature`. This address can then be used for verification purposes.
     *
     * The `ecrecover` EVM opcode allows for malleable (non-unique) signatures:
     * this function rejects them by requiring the `s` value to be in the lower
     * half order, and the `v` value to be either 27 or 28.
     *
     * IMPORTANT: `hash` _must_ be the result of a hash operation for the
     * verification to be secure: it is possible to craft signatures that
     * recover to arbitrary addresses for non-hashed data. A safe way to ensure
     * this is by receiving a hash of the original message (which may otherwise
     * be too long), and then calling {toEthSignedMessageHash} on it.
     *
     * Documentation for signature generation:
     * - with https://web3js.readthedocs.io/en/v1.3.4/web3-eth-accounts.html#sign[Web3.js]
     * - with https://docs.ethers.io/v5/api/signer/#Signer-signMessage[ethers]
     */
    function recover(bytes32 hash, bytes memory signature) internal pure returns (address) {
        // Divide the signature in r, s and v variables
        bytes32 r;
        bytes32 s;
        uint8 v;

        // Check the signature length
        // - case 65: r,s,v signature (standard)
        // - case 64: r,vs signature (cf https://eips.ethereum.org/EIPS/eip-2098) _Available since v4.1._
        if (signature.length == 65) {
            // ecrecover takes the signature parameters, and the only way to get them
            // currently is to use assembly.
            // solhint-disable-next-line no-inline-assembly
            assembly {
                r := mload(add(signature, 0x20))
                s := mload(add(signature, 0x40))
                v := byte(0, mload(add(signature, 0x60)))
            }
        } else if (signature.length == 64) {
            // ecrecover takes the signature parameters, and the only way to get them
            // currently is to use assembly.
            // solhint-disable-next-line no-inline-assembly
            assembly {
                let vs := mload(add(signature, 0x40))
                r := mload(add(signature, 0x20))
                s := and(vs, 0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)
                v := add(shr(255, vs), 27)
            }
        } else {
            revert("ECDSA: invalid signature length");
        }

        return recover(hash, v, r, s);
    }

    /**
     * @dev Overload of {ECDSA-recover} that receives the `v`,
     * `r` and `s` signature fields separately.
     */
    function recover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) internal pure returns (address) {
        // EIP-2 still allows signature malleability for ecrecover(). Remove this possibility and make the signature
        // unique. Appendix F in the Ethereum Yellow paper (https://ethereum.github.io/yellowpaper/paper.pdf), defines
        // the valid range for s in (281): 0 < s < secp256k1n ÷ 2 + 1, and for v in (282): v ∈ {27, 28}. Most
        // signatures from current libraries generate a unique signature with an s-value in the lower half order.
        //
        // If your library generates malleable signatures, such as s-values in the upper range, calculate a new s-value
        // with 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141 - s1 and flip v from 27 to 28 or
        // vice versa. If your library also generates signatures with 0/1 for v instead 27/28, add 27 to v to accept
        // these malleable signatures as well.
        require(uint256(s) <= 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0, "ECDSA: invalid signature 's' value");
        require(v == 27 || v == 28, "ECDSA: invalid signature 'v' value");

        // If the signature is valid (and not malleable), return the signer address
        address signer = ecrecover(hash, v, r, s);
        require(signer != address(0), "ECDSA: invalid signature");

        return signer;
    }

    /**
     * @dev Returns an Ethereum Signed Message, created from a `hash`. This
     * produces hash corresponding to the one signed with the
     * https://eth.wiki/json-rpc/API#eth_sign[`eth_sign`]
     * JSON-RPC method as part of EIP-191.
     *
     * See {recover}.
     */
    function toEthSignedMessageHash(bytes32 hash) internal pure returns (bytes32) {
        // 32 is the length in bytes of hash,
        // enforced by the type signature above
        return keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", hash));
    }

    /**
     * @dev Returns an Ethereum Signed Typed Data, created from a
     * `domainSeparator` and a `structHash`. This produces hash corresponding
     * to the one signed with the
     * https://eips.ethereum.org/EIPS/eip-712[`eth_signTypedData`]
     * JSON-RPC method as part of EIP-712.
     *
     * See {recover}.
     */
    function toTypedDataHash(bytes32 domainSeparator, bytes32 structHash) internal pure returns (bytes32) {
        return keccak256(abi.encodePacked("\x19\x01", domainSeparator, structHash));
    }
}

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}


contract POLCToken is  Context, IERC20, IERC20Metadata {
    mapping (address => uint256) private _balances;

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

    uint256 private _totalSupply;
    uint256 public maxSupply;
    string private _name;
    string private _symbol;
    
    mapping (address => bool) public minters;

    // Prevent Bots - If true, limits transactions to 1 transfer per block (whitelisted can execute multiple transactions)
    bool public limitTransactions;
    mapping (address => bool) public contractsWhiteList;
    mapping (address => uint) public lastTXBlock;
    
    mapping (uint8 => address) public managers;
    mapping (bytes32 => bool) public executedTask;
    uint16 public taskIndex;


    modifier isManager() {
        require(managers[0] == msg.sender || managers[1] == msg.sender || managers[2] == msg.sender, "Not manager");
        _;
    }

    constructor() {
        _totalSupply = 0 ether;
        _name = "Polka City";
        _symbol = "POLC";
        maxSupply = 250000000 ether;

        managers[0] = msg.sender;
        managers[1] = 0xeA50CE6EBb1a5E4A8F90Bfb35A2fb3c3F0C673ec;
        managers[2] = 0xB1A951141F1b3A16824241f687C3741459E33225;

    }

    function checkTransferLimit(address _sender) internal returns (bool) {
        if (limitTransactions == true && contractsWhiteList[_sender] != true) {
            if (lastTXBlock[_sender] == block.number) {
                return false;
            } else {
                lastTXBlock[_sender] = block.number;
                return true;
            }
        } else {
            return true;
        }
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        require(checkTransferLimit(_msgSender()), "Transfers are limited to 1 per block");
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        require(checkTransferLimit(sender), "Transfers are limited to 1 per block");
        _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;
    }

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

    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;
    }

    function burn(uint256 _value) public returns (bool) {
        _burn(_msgSender(), _value);
        return true;
    }

    function approveAndCall(address _spender, uint256 _value, bytes memory _extraData) public returns (bool) {
        _allowances[_msgSender()][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        ItokenRecipient recipient = ItokenRecipient(_spender);
        require(recipient.receiveApproval(msg.sender, _value, address(this), _extraData));
        return true;
    }

    function enableTXLimit(bytes memory _sig) public isManager {
        uint8 mId = 1;
        bytes32 taskHash = keccak256(abi.encode(taskIndex, mId));
        verifyApproval(taskHash, _sig);
        limitTransactions = true;
    }
    
    function disableTXLimit(bytes memory _sig) public isManager {
        uint8 mId = 2;
        bytes32 taskHash = keccak256(abi.encode(taskIndex, mId));
        verifyApproval(taskHash, _sig);
        limitTransactions = false;
    }
    
    function includeWhiteList(address _contractAddress, bytes memory _sig) public isManager {
        uint8 mId = 3;
        bytes32 taskHash = keccak256(abi.encode(_contractAddress, taskIndex, mId));
        verifyApproval(taskHash, _sig);
        contractsWhiteList[_contractAddress] = true;
    }
    
    function removeWhiteList(address _contractAddress, bytes memory _sig) public isManager {
        uint8 mId = 4;
        bytes32 taskHash = keccak256(abi.encode(_contractAddress, taskIndex, mId));
        verifyApproval(taskHash, _sig);
        contractsWhiteList[_contractAddress] = false;
    }
    
    function setMinter(address _minterAddress, bool _canMint, bytes memory _sig) public isManager {
        uint8 mId = 5;
        bytes32 taskHash = keccak256(abi.encode(_minterAddress, _canMint, taskIndex, mId));
        verifyApproval(taskHash, _sig);
        minters[_minterAddress] = _canMint;
    }
    
    function mint(address _to, uint256 _amount) public {
        require(minters[msg.sender] == true, "Not allowed");
        uint256 newSupply = _totalSupply + _amount;
        require(newSupply <= maxSupply, "Max supply reached");
        _mint(_to, _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);
    }

    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);
    }

    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);
    }

    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);
    }
    
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { }


    function verifyApproval(bytes32 _taskHash, bytes memory _sig) private {
        require(executedTask[_taskHash] == false, "Task already executed");
        address mSigner = ECDSA.recover(ECDSA.toEthSignedMessageHash(_taskHash), _sig);
        require(mSigner == managers[0] || mSigner == managers[1] || mSigner == managers[2], "Invalid signature"  );
        require(mSigner != msg.sender, "Signature from different managers required");
        executedTask[_taskHash] = true;
        taskIndex += 1;
    }
    
    function changeManager(address _manager, uint8 _index, bytes memory _sig) public isManager {
        require(_index >= 0 && _index <= 2, "Invalid index");
        uint8 mId = 100;
        bytes32 taskHash = keccak256(abi.encode(_manager, taskIndex, mId));
        verifyApproval(taskHash, _sig);
        managers[_index] = _manager;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"name":"approveAndCall","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":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_manager","type":"address"},{"internalType":"uint8","name":"_index","type":"uint8"},{"internalType":"bytes","name":"_sig","type":"bytes"}],"name":"changeManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"contractsWhiteList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_sig","type":"bytes"}],"name":"disableTXLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_sig","type":"bytes"}],"name":"enableTXLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"executedTask","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"bytes","name":"_sig","type":"bytes"}],"name":"includeWhiteList","outputs":[],"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":"","type":"address"}],"name":"lastTXBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitTransactions","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"","type":"uint8"}],"name":"managers","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"minters","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"bytes","name":"_sig","type":"bytes"}],"name":"removeWhiteList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_minterAddress","type":"address"},{"internalType":"bool","name":"_canMint","type":"bool"},{"internalType":"bytes","name":"_sig","type":"bytes"}],"name":"setMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taskIndex","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"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"}]

60806040523480156200001157600080fd5b50600060025560408051808201909152600a80825269506f6c6b61204369747960b01b60209092019182526200004a9160049162000147565b5060408051808201909152600480825263504f4c4360e01b6020909201918252620000789160059162000147565b506acecb8f27f4200f3a000000600355600a6020527f13da86008ba1c6922daee3e07db95305ef49ebced9f5467a0b8613fcc6b343e380546001600160a01b031990811633179091557fbbc70db1b6c7afd11e79c0fb0051300458f1a3acb8ee9789d9b6b26c61ad9bc78054821673ea50ce6ebb1a5e4a8f90bfb35a2fb3c3f0c673ec17905560026000527fbff4442b8ed600beeb8e26b1279a0f0d14c6edfaec26d968ee13c86f7d4c2ba8805490911673b1a951141f1b3a16824241f687c3741459e332251790556200022a565b8280546200015590620001ed565b90600052602060002090601f016020900481019282620001795760008555620001c4565b82601f106200019457805160ff1916838001178555620001c4565b82800160010185558215620001c4579182015b82811115620001c4578251825591602001919060010190620001a7565b50620001d2929150620001d6565b5090565b5b80821115620001d25760008155600101620001d7565b6002810460018216806200020257607f821691505b602082108114156200022457634e487b7160e01b600052602260045260246000fd5b50919050565b611f03806200023a6000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80638b811719116100f9578063b84254d711610097578063dd62ed3e11610071578063dd62ed3e1461040d578063ec58d18014610446578063f46eccc414610459578063f58d42171461047c576101c4565b8063b84254d7146103d0578063cae9ca51146103f1578063d5abeb0114610404576101c4565b8063a4b99ea8116100d3578063a4b99ea814610339578063a7411c921461035c578063a9059cbb1461037c578063b76bb6101461038f576101c4565b80638b8117191461031157806395d89b411461031e578063a457c2d714610326576101c4565b8063313ce5671161016657806342966c681161014057806342966c68146102af57806349e05d43146102c257806361b42c3f146102d557806370a08231146102e8576101c4565b8063313ce5671461027a578063395093511461028957806340c10f191461029c576101c4565b806313dda4aa116101a257806313dda4aa1461021f57806318160ddd146102325780631b9ab6851461024457806323b872dd14610267576101c4565b806306fdde03146101c9578063095ea7b3146101e75780630e7827a21461020a575b600080fd5b6101d161048f565b6040516101de9190611d24565b60405180910390f35b6101fa6101f5366004611b62565b610521565b60405190151581526020016101de565b61021d610218366004611c29565b610537565b005b61021d61022d366004611c29565b61062a565b6002545b6040519081526020016101de565b6101fa610252366004611c11565b600b6020526000908152604090205460ff1681565b6101fa610275366004611a7d565b610717565b604051601281526020016101de565b6101fa610297366004611b62565b6107e6565b61021d6102aa366004611b62565b610822565b6101fa6102bd366004611c11565b6108dc565b61021d6102d0366004611b16565b6108f1565b61021d6102e3366004611ab8565b6109f5565b6102366102f6366004611a2a565b6001600160a01b031660009081526020819052604090205490565b6007546101fa9060ff1681565b6101d1610b18565b6101fa610334366004611b62565b610b27565b6101fa610347366004611a2a565b60086020526000908152604090205460ff1681565b61023661036a366004611a2a565b60096020526000908152604090205481565b6101fa61038a366004611b62565b610bc0565b6103b861039d366004611c64565b600a602052600090815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016101de565b600c546103de9061ffff1681565b60405161ffff90911681526020016101de565b6101fa6103ff366004611b8b565b610bf2565b61023660035481565b61023661041b366004611a4b565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61021d610454366004611bca565b610cde565b6101fa610467366004611a2a565b60066020526000908152604090205460ff1681565b61021d61048a366004611b16565b610e33565b60606004805461049e90611df5565b80601f01602080910402602001604051908101604052809291908181526020018280546104ca90611df5565b80156105175780601f106104ec57610100808354040283529160200191610517565b820191906000526020600020905b8154815290600101906020018083116104fa57829003601f168201915b5050505050905090565b600061052e338484610f34565b50600192915050565b60008052600a602052600080516020611e8e833981519152546001600160a01b031633148061058757506001600052600a602052600080516020611eae833981519152546001600160a01b031633145b806105b357506002600052600a602052600080516020611e6e833981519152546001600160a01b031633145b6105d85760405162461bcd60e51b81526004016105cf90611d37565b60405180910390fd5b600c546040805161ffff909216602083015260029082018190529060009060600160405160208183030381529060405280519060200120905061061b8184611059565b50506007805460ff1916905550565b60008052600a602052600080516020611e8e833981519152546001600160a01b031633148061067a57506001600052600a602052600080516020611eae833981519152546001600160a01b031633145b806106a657506002600052600a602052600080516020611e6e833981519152546001600160a01b031633145b6106c25760405162461bcd60e51b81526004016105cf90611d37565b600c546040805161ffff90921660208301526001908201819052906000906060016040516020818303038152906040528051906020012090506107058184611059565b50506007805460ff1916600117905550565b600061072284611298565b61073e5760405162461bcd60e51b81526004016105cf90611d5c565b610749848484611328565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156107ce5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016105cf565b6107db8533858403610f34565b506001949350505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161052e91859061081d908690611dc6565b610f34565b3360009081526006602052604090205460ff1615156001146108745760405162461bcd60e51b815260206004820152600b60248201526a139bdd08185b1b1bddd95960aa1b60448201526064016105cf565b6000816002546108849190611dc6565b90506003548111156108cd5760405162461bcd60e51b815260206004820152601260248201527113585e081cdd5c1c1b1e481c995858da195960721b60448201526064016105cf565b6108d783836114f7565b505050565b60006108e833836115d6565b5060015b919050565b60008052600a602052600080516020611e8e833981519152546001600160a01b031633148061094157506001600052600a602052600080516020611eae833981519152546001600160a01b031633145b8061096d57506002600052600a602052600080516020611e6e833981519152546001600160a01b031633145b6109895760405162461bcd60e51b81526004016105cf90611d37565b600c546040516003916000916109ac91869161ffff909116908590602001611cc9565b6040516020818303038152906040528051906020012090506109ce8184611059565b5050506001600160a01b03166000908152600860205260409020805460ff19166001179055565b60008052600a602052600080516020611e8e833981519152546001600160a01b0316331480610a4557506001600052600a602052600080516020611eae833981519152546001600160a01b031633145b80610a7157506002600052600a602052600080516020611e6e833981519152546001600160a01b031633145b610a8d5760405162461bcd60e51b81526004016105cf90611d37565b600c54604080516001600160a01b03861660208201528415159181019190915261ffff90911660608201526005608082018190529060009060a001604051602081830303815290604052805190602001209050610aea8184611059565b5050506001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b60606005805461049e90611df5565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610ba95760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105cf565b610bb63385858403610f34565b5060019392505050565b6000610bcb33611298565b610be75760405162461bcd60e51b81526004016105cf90611d5c565b61052e338484611328565b3360008181526001602090815260408083206001600160a01b038816808552908352818420879055815187815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a3604051638f4ffcb160e01b815284906001600160a01b03821690638f4ffcb190610c83903390889030908990600401611cf1565b602060405180830381600087803b158015610c9d57600080fd5b505af1158015610cb1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cd59190611bf5565b6107db57600080fd5b60008052600a602052600080516020611e8e833981519152546001600160a01b0316331480610d2e57506001600052600a602052600080516020611eae833981519152546001600160a01b031633145b80610d5a57506002600052600a602052600080516020611e6e833981519152546001600160a01b031633145b610d765760405162461bcd60e51b81526004016105cf90611d37565b60028260ff161115610dba5760405162461bcd60e51b815260206004820152600d60248201526c092dcecc2d8d2c840d2dcc8caf609b1b60448201526064016105cf565b600c54604051606491600091610ddd91879161ffff909116908590602001611cc9565b604051602081830303815290604052805190602001209050610dff8184611059565b50505060ff166000908152600a6020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b60008052600a602052600080516020611e8e833981519152546001600160a01b0316331480610e8357506001600052600a602052600080516020611eae833981519152546001600160a01b031633145b80610eaf57506002600052600a602052600080516020611e6e833981519152546001600160a01b031633145b610ecb5760405162461bcd60e51b81526004016105cf90611d37565b600c54604051600491600091610eee91869161ffff909116908590602001611cc9565b604051602081830303815290604052805190602001209050610f108184611059565b5050506001600160a01b03166000908152600860205260409020805460ff19169055565b6001600160a01b038316610f965760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105cf565b6001600160a01b038216610ff75760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105cf565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6000828152600b602052604090205460ff16156110b05760405162461bcd60e51b815260206004820152601560248201527415185cdac8185b1c9958591e48195e1958dd5d1959605a1b60448201526064016105cf565b600061111261110c846040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b8361171c565b60008052600a602052600080516020611e8e833981519152549091506001600160a01b038083169116148061116b57506001600052600a602052600080516020611eae833981519152546001600160a01b038281169116145b8061119a57506002600052600a602052600080516020611e6e833981519152546001600160a01b038281169116145b6111da5760405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b60448201526064016105cf565b6001600160a01b0381163314156112465760405162461bcd60e51b815260206004820152602a60248201527f5369676e61747572652066726f6d20646966666572656e74206d616e616765726044820152691cc81c995c5d5a5c995960b21b60648201526084016105cf565b6000838152600b60205260408120805460ff19166001908117909155600c80549192909161127990849061ffff16611da0565b92506101000a81548161ffff021916908361ffff160217905550505050565b60075460009060ff16151560011480156112d057506001600160a01b03821660009081526008602052604090205460ff161515600114155b15611320576001600160a01b0382166000908152600960205260409020544314156112fd575060006108ec565b506001600160a01b038116600090815260096020526040902043905560016108ec565b5060016108ec565b6001600160a01b03831661138c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105cf565b6001600160a01b0382166113ee5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105cf565b6001600160a01b038316600090815260208190526040902054818110156114665760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105cf565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061149d908490611dc6565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114e991815260200190565b60405180910390a350505050565b6001600160a01b03821661154d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016105cf565b806002600082825461155f9190611dc6565b90915550506001600160a01b0382166000908152602081905260408120805483929061158c908490611dc6565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166116365760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016105cf565b6001600160a01b038216600090815260208190526040902054818110156116aa5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016105cf565b6001600160a01b03831660009081526020819052604081208383039055600280548492906116d9908490611dde565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200161104c565b6000806000808451604114156117465750505060208201516040830151606084015160001a6117bc565b8451604014156117745750505060408201516020830151906001600160ff1b0381169060ff1c601b016117bc565b60405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016105cf565b6117c8868285856117d2565b9695505050505050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561184f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016105cf565b8360ff16601b148061186457508360ff16601c145b6118bb5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b60648201526084016105cf565b6040805160008082526020820180845288905260ff871692820192909252606081018590526080810184905260019060a0016020604051602081039080840390855afa15801561190f573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166119725760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016105cf565b95945050505050565b80356001600160a01b03811681146108ec57600080fd5b600082601f8301126119a2578081fd5b813567ffffffffffffffff808211156119bd576119bd611e46565b604051601f8301601f19908116603f011681019082821181831017156119e5576119e5611e46565b816040528381528660208588010111156119fd578485fd5b8360208701602083013792830160200193909352509392505050565b803560ff811681146108ec57600080fd5b600060208284031215611a3b578081fd5b611a448261197b565b9392505050565b60008060408385031215611a5d578081fd5b611a668361197b565b9150611a746020840161197b565b90509250929050565b600080600060608486031215611a91578081fd5b611a9a8461197b565b9250611aa86020850161197b565b9150604084013590509250925092565b600080600060608486031215611acc578283fd5b611ad58461197b565b92506020840135611ae581611e5c565b9150604084013567ffffffffffffffff811115611b00578182fd5b611b0c86828701611992565b9150509250925092565b60008060408385031215611b28578182fd5b611b318361197b565b9150602083013567ffffffffffffffff811115611b4c578182fd5b611b5885828601611992565b9150509250929050565b60008060408385031215611b74578182fd5b611b7d8361197b565b946020939093013593505050565b600080600060608486031215611b9f578283fd5b611ba88461197b565b925060208401359150604084013567ffffffffffffffff811115611b00578182fd5b600080600060608486031215611bde578283fd5b611be78461197b565b9250611ae560208501611a19565b600060208284031215611c06578081fd5b8151611a4481611e5c565b600060208284031215611c22578081fd5b5035919050565b600060208284031215611c3a578081fd5b813567ffffffffffffffff811115611c50578182fd5b611c5c84828501611992565b949350505050565b600060208284031215611c75578081fd5b611a4482611a19565b60008151808452815b81811015611ca357602081850181015186830182015201611c87565b81811115611cb45782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0393909316835261ffff91909116602083015260ff16604082015260600190565b6001600160a01b03858116825260208201859052831660408201526080606082018190526000906117c890830184611c7e565b600060208252611a446020830184611c7e565b6020808252600b908201526a2737ba1036b0b730b3b2b960a91b604082015260600190565b60208082526024908201527f5472616e736665727320617265206c696d6974656420746f20312070657220626040820152636c6f636b60e01b606082015260800190565b600061ffff808316818516808303821115611dbd57611dbd611e30565b01949350505050565b60008219821115611dd957611dd9611e30565b500190565b600082821015611df057611df0611e30565b500390565b600281046001821680611e0957607f821691505b60208210811415611e2a57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b8015158114611e6a57600080fd5b5056febff4442b8ed600beeb8e26b1279a0f0d14c6edfaec26d968ee13c86f7d4c2ba813da86008ba1c6922daee3e07db95305ef49ebced9f5467a0b8613fcc6b343e3bbc70db1b6c7afd11e79c0fb0051300458f1a3acb8ee9789d9b6b26c61ad9bc7a2646970667358221220993db95cf63c7e6775a92056c08863a2a60885d01f4f96d86191432591ac2b5964736f6c63430008020033

Deployed ByteCode Sourcemap

6735:9206:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8446:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9452:169;;;;;;:::i;:::-;;:::i;:::-;;;7868:14:1;;7861:22;7843:41;;7831:2;7816:18;9452:169:0;7798:92:1;11607:236:0;;;;;;:::i;:::-;;:::i;:::-;;11361:234;;;;;;:::i;:::-;;:::i;8767:108::-;8855:12;;8767:108;;;17537:25:1;;;17525:2;17510:18;8767:108:0;17492:76:1;7431:45:0;;;;;;:::i;:::-;;;;;;;;;;;;;;;;9629:544;;;;;;:::i;:::-;;:::i;8666:93::-;;;8749:2;17715:36:1;;17703:2;17688:18;8666:93:0;17670:87:1;10181:215:0;;;;;;:::i;:::-;;:::i;12796:268::-;;;;;;:::i;:::-;;:::i;10825:120::-;;;;;;:::i;:::-;;:::i;11855:300::-;;;;;;:::i;:::-;;:::i;12479:305::-;;;;;;:::i;:::-;;:::i;8883:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;8984:18:0;8957:7;8984:18;;;;;;;;;;;;8883:127;7231:29;;;;;;;;;8554:104;;;:::i;10404:413::-;;;;;;:::i;:::-;;:::i;7267:51::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;7325:44;;;;;;:::i;:::-;;;;;;;;;;;;;;9018:267;;;;;;:::i;:::-;;:::i;7382:42::-;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;7382:42:0;;;;;;-1:-1:-1;;;;;6348:32:1;;;6330:51;;6318:2;6303:18;7382:42:0;6285:102:1;7483:23:0;;;;;;;;;;;;17101:6:1;17089:19;;;17071:38;;17059:2;17044:18;7483:23:0;17026:89:1;10953:400:0;;;;;;:::i;:::-;;:::i;6965:24::-;;;;;;9293:151;;;;;;:::i;:::-;-1:-1:-1;;;;;9409:18:0;;;9382:7;9409:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9293:151;15594:344;;;;;;:::i;:::-;;:::i;7058:40::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;12167:300;;;;;;:::i;:::-;;:::i;8446:100::-;8500:13;8533:5;8526:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8446:100;:::o;9452:169::-;9535:4;9552:39;6465:10;9575:7;9584:6;9552:8;:39::i;:::-;-1:-1:-1;9609:4:0;9452:169;;;;:::o;11607:236::-;7557:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;7557:11:0;-1:-1:-1;;;;;7557:11:0;7572:10;7557:25;;:54;;-1:-1:-1;7595:1:0;7586:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7586:11:0;-1:-1:-1;;;;;7586:11:0;7601:10;7586:25;7557:54;:83;;;-1:-1:-1;7624:1:0;7615:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7615:11:0;-1:-1:-1;;;;;7615:11:0;7630:10;7615:25;7557:83;7549:107;;;;-1:-1:-1;;;7549:107:0;;;;;;;:::i;:::-;;;;;;;;;11742:9:::1;::::0;11731:26:::1;::::0;;11742:9:::1;::::0;;::::1;11731:26;::::0;::::1;17288:38:1::0;11690:1:0::1;17342:18:1::0;;;17335:45;;;11690:1:0;11678:9:::1;::::0;17261:18:1;;11731:26:0::1;;;;;;;;;;;;11721:37;;;;;;11702:56;;11769:30;11784:8;11794:4;11769:14;:30::i;:::-;-1:-1:-1::0;;11810:17:0::1;:25:::0;;-1:-1:-1;;11810:25:0::1;::::0;;-1:-1:-1;11607:236:0:o;11361:234::-;7557:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;7557:11:0;-1:-1:-1;;;;;7557:11:0;7572:10;7557:25;;:54;;-1:-1:-1;7595:1:0;7586:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7586:11:0;-1:-1:-1;;;;;7586:11:0;7601:10;7586:25;7557:54;:83;;;-1:-1:-1;7624:1:0;7615:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7615:11:0;-1:-1:-1;;;;;7615:11:0;7630:10;7615:25;7557:83;7549:107;;;;-1:-1:-1;;;7549:107:0;;;;;;;:::i;:::-;11495:9:::1;::::0;11484:26:::1;::::0;;11495:9:::1;::::0;;::::1;11484:26;::::0;::::1;17288:38:1::0;11443:1:0::1;17342:18:1::0;;;17335:45;;;11443:1:0;11431:9:::1;::::0;17261:18:1;;11484:26:0::1;;;;;;;;;;;;11474:37;;;;;;11455:56;;11522:30;11537:8;11547:4;11522:14;:30::i;:::-;-1:-1:-1::0;;11563:17:0::1;:24:::0;;-1:-1:-1;;11563:24:0::1;11583:4;11563:24;::::0;;-1:-1:-1;11361:234:0:o;9629:544::-;9735:4;9760:26;9779:6;9760:18;:26::i;:::-;9752:75;;;;-1:-1:-1;;;9752:75:0;;;;;;;:::i;:::-;9838:36;9848:6;9856:9;9867:6;9838:9;:36::i;:::-;-1:-1:-1;;;;;9914:19:0;;9887:24;9914:19;;;:11;:19;;;;;;;;6465:10;9914:33;;;;;;;;9966:26;;;;9958:79;;;;-1:-1:-1;;;9958:79:0;;13649:2:1;9958:79:0;;;13631:21:1;13688:2;13668:18;;;13661:30;13727:34;13707:18;;;13700:62;-1:-1:-1;;;13778:18:1;;;13771:38;13826:19;;9958:79:0;13621:230:1;9958:79:0;10073:57;10082:6;6465:10;10123:6;10104:16;:25;10073:8;:57::i;:::-;-1:-1:-1;10161:4:0;;9629:544;-1:-1:-1;;;;9629:544:0:o;10181:215::-;6465:10;10269:4;10318:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;10318:34:0;;;;;;;;;;10269:4;;10286:80;;10309:7;;10318:47;;10355:10;;10318:47;:::i;:::-;10286:8;:80::i;12796:268::-;12874:10;12866:19;;;;:7;:19;;;;;;;;:27;;:19;:27;12858:51;;;;-1:-1:-1;;;12858:51:0;;14058:2:1;12858:51:0;;;14040:21:1;14097:2;14077:18;;;14070:30;-1:-1:-1;;;14116:18:1;;;14109:41;14167:18;;12858:51:0;14030:161:1;12858:51:0;12920:17;12955:7;12940:12;;:22;;;;:::i;:::-;12920:42;;12994:9;;12981;:22;;12973:53;;;;-1:-1:-1;;;12973:53:0;;16016:2:1;12973:53:0;;;15998:21:1;16055:2;16035:18;;;16028:30;-1:-1:-1;;;16074:18:1;;;16067:48;16132:18;;12973:53:0;15988:168:1;12973:53:0;13037:19;13043:3;13048:7;13037:5;:19::i;:::-;12796:268;;;:::o;10825:120::-;10871:4;10888:27;6465:10;10908:6;10888:5;:27::i;:::-;-1:-1:-1;10933:4:0;10825:120;;;;:::o;11855:300::-;7557:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;7557:11:0;-1:-1:-1;;;;;7557:11:0;7572:10;7557:25;;:54;;-1:-1:-1;7595:1:0;7586:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7586:11:0;-1:-1:-1;;;;;7586:11:0;7601:10;7586:25;7557:54;:83;;;-1:-1:-1;7624:1:0;7615:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7615:11:0;-1:-1:-1;;;;;7615:11:0;7630:10;7615:25;7557:83;7549:107;;;;-1:-1:-1;;;7549:107:0;;;;;;;:::i;:::-;12036:9:::1;::::0;12007:44:::1;::::0;11966:1:::1;::::0;11954:9:::1;::::0;12007:44:::1;::::0;12018:16;;12036:9:::1;::::0;;::::1;::::0;11966:1;;12007:44:::1;;;:::i;:::-;;;;;;;;;;;;;11997:55;;;;;;11978:74;;12063:30;12078:8;12088:4;12063:14;:30::i;:::-;-1:-1:-1::0;;;;;;;;12104:36:0::1;;::::0;;;:18:::1;:36;::::0;;;;:43;;-1:-1:-1;;12104:43:0::1;12143:4;12104:43;::::0;;11855:300::o;12479:305::-;7557:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;7557:11:0;-1:-1:-1;;;;;7557:11:0;7572:10;7557:25;;:54;;-1:-1:-1;7595:1:0;7586:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7586:11:0;-1:-1:-1;;;;;7586:11:0;7601:10;7586:25;7557:54;:83;;;-1:-1:-1;7624:1:0;7615:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7615:11:0;-1:-1:-1;;;;;7615:11:0;7630:10;7615:25;7557:83;7549:107;;;;-1:-1:-1;;;7549:107:0;;;;;;;:::i;:::-;12674:9:::1;::::0;12637:52:::1;::::0;;-1:-1:-1;;;;;6629:32:1;;12637:52:0::1;::::0;::::1;6611:51:1::0;6705:14;;6698:22;6678:18;;;6671:50;;;;12674:9:0::1;::::0;;::::1;6737:18:1::0;;;6730:47;12596:1:0::1;6793:18:1::0;;;6786:45;;;12596:1:0;12584:9:::1;::::0;6583:19:1;;12637:52:0::1;;;;;;;;;;;;12627:63;;;;;;12608:82;;12701:30;12716:8;12726:4;12701:14;:30::i;:::-;-1:-1:-1::0;;;;;;;;12742:23:0;;;::::1;;::::0;;;:7:::1;:23;::::0;;;;:34;;-1:-1:-1;;12742:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;12479:305::o;8554:104::-;8610:13;8643:7;8636:14;;;;;:::i;10404:413::-;6465:10;10497:4;10541:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;10541:34:0;;;;;;;;;;10594:35;;;;10586:85;;;;-1:-1:-1;;;10586:85:0;;16363:2:1;10586:85:0;;;16345:21:1;16402:2;16382:18;;;16375:30;16441:34;16421:18;;;16414:62;-1:-1:-1;;;16492:18:1;;;16485:35;16537:19;;10586:85:0;16335:227:1;10586:85:0;10707:67;6465:10;10730:7;10758:15;10739:16;:34;10707:8;:67::i;:::-;-1:-1:-1;10805:4:0;;10404:413;-1:-1:-1;;;10404:413:0:o;9018:267::-;9104:4;9129:32;6465:10;9129:18;:32::i;:::-;9121:81;;;;-1:-1:-1;;;9121:81:0;;;;;;;:::i;:::-;9213:42;6465:10;9237:9;9248:6;9213:9;:42::i;10953:400::-;6465:10;11052:4;11069:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;11069:35:0;;;;;;;;;;;:44;;;11129:38;;17537:25:1;;;11129:38:0;;11052:4;;11069:35;;6465:10;;11129:38;;;;;;;;11250:72;;-1:-1:-1;;;11250:72:0;;11222:8;;-1:-1:-1;;;;;11250:25:0;;;;;:72;;11276:10;;11288:6;;11304:4;;11311:10;;11250:72;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11242:81;;;;;15594:344;7557:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;7557:11:0;-1:-1:-1;;;;;7557:11:0;7572:10;7557:25;;:54;;-1:-1:-1;7595:1:0;7586:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7586:11:0;-1:-1:-1;;;;;7586:11:0;7601:10;7586:25;7557:54;:83;;;-1:-1:-1;7624:1:0;7615:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7615:11:0;-1:-1:-1;;;;;7615:11:0;7630:10;7615:25;7557:83;7549:107;;;;-1:-1:-1;;;7549:107:0;;;;;;;:::i;:::-;15729:1:::1;15719:6;:11;;;;15696:52;;;::::0;-1:-1:-1;;;15696:52:0;;10987:2:1;15696:52:0::1;::::0;::::1;10969:21:1::0;11026:2;11006:18;;;10999:30;-1:-1:-1;;;11045:18:1;;;11038:43;11098:18;;15696:52:0::1;10959:163:1::0;15696:52:0::1;15835:9;::::0;15814:36:::1;::::0;15771:3:::1;::::0;15759:9:::1;::::0;15814:36:::1;::::0;15825:8;;15835:9:::1;::::0;;::::1;::::0;15771:3;;15814:36:::1;;;:::i;:::-;;;;;;;;;;;;;15804:47;;;;;;15785:66;;15862:30;15877:8;15887:4;15862:14;:30::i;:::-;-1:-1:-1::0;;;15903:16:0::1;;;::::0;;;:8:::1;:16;::::0;;;;:27;;-1:-1:-1;;;;;;15903:27:0::1;-1:-1:-1::0;;;;;15903:27:0;;;::::1;::::0;;;::::1;::::0;;15594:344::o;12167:300::-;7557:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;7557:11:0;-1:-1:-1;;;;;7557:11:0;7572:10;7557:25;;:54;;-1:-1:-1;7595:1:0;7586:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7586:11:0;-1:-1:-1;;;;;7586:11:0;7601:10;7586:25;7557:54;:83;;;-1:-1:-1;7624:1:0;7615:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;7615:11:0;-1:-1:-1;;;;;7615:11:0;7630:10;7615:25;7557:83;7549:107;;;;-1:-1:-1;;;7549:107:0;;;;;;;:::i;:::-;12347:9:::1;::::0;12318:44:::1;::::0;12277:1:::1;::::0;12265:9:::1;::::0;12318:44:::1;::::0;12329:16;;12347:9:::1;::::0;;::::1;::::0;12277:1;;12318:44:::1;;;:::i;:::-;;;;;;;;;;;;;12308:55;;;;;;12289:74;;12374:30;12389:8;12399:4;12374:14;:30::i;:::-;-1:-1:-1::0;;;;;;;;12415:36:0::1;12454:5;12415:36:::0;;;:18:::1;:36;::::0;;;;:44;;-1:-1:-1;;12415:44:0::1;::::0;;12167:300::o;14608:346::-;-1:-1:-1;;;;;14710:19:0;;14702:68;;;;-1:-1:-1;;;14702:68:0;;15611:2:1;14702:68:0;;;15593:21:1;15650:2;15630:18;;;15623:30;15689:34;15669:18;;;15662:62;-1:-1:-1;;;15740:18:1;;;15733:34;15784:19;;14702:68:0;15583:226:1;14702:68:0;-1:-1:-1;;;;;14789:21:0;;14781:68;;;;-1:-1:-1;;;14781:68:0;;10584:2:1;14781:68:0;;;10566:21:1;10623:2;10603:18;;;10596:30;10662:34;10642:18;;;10635:62;-1:-1:-1;;;10713:18:1;;;10706:32;10755:19;;14781:68:0;10556:224:1;14781:68:0;-1:-1:-1;;;;;14862:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;14914:32;;17537:25:1;;;14914:32:0;;17510:18:1;14914:32:0;;;;;;;;14608:346;;;:::o;15068:514::-;15157:23;;;;:12;:23;;;;;;;;:32;15149:66;;;;-1:-1:-1;;;15149:66:0;;11736:2:1;15149:66:0;;;11718:21:1;11775:2;11755:18;;;11748:30;-1:-1:-1;;;11794:18:1;;;11787:51;11855:18;;15149:66:0;11708:171:1;15149:66:0;15226:15;15244:60;15258:39;15287:9;5732:58;;6041:66:1;5732:58:0;;;6029:79:1;6124:12;;;6117:28;;;5599:7:0;;6161:12:1;;5732:58:0;;;;;;;;;;;;5722:69;;;;;;5715:76;;5530:269;;;;15258:39;15299:4;15244:13;:60::i;:::-;15334:11;;;:8;:11;;-1:-1:-1;;;;;;;;;;;15334:11:0;15226:78;;-1:-1:-1;;;;;;15323:22:0;;;15334:11;;15323:22;;:48;;-1:-1:-1;15369:1:0;15360:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;15360:11:0;-1:-1:-1;;;;;15349:22:0;;;15360:11;;15349:22;15323:48;:74;;;-1:-1:-1;15395:1:0;15386:11;;:8;:11;;-1:-1:-1;;;;;;;;;;;15386:11:0;-1:-1:-1;;;;;15375:22:0;;;15386:11;;15375:22;15323:74;15315:106;;;;-1:-1:-1;;;15315:106:0;;12086:2:1;15315:106:0;;;12068:21:1;12125:2;12105:18;;;12098:30;-1:-1:-1;;;12144:18:1;;;12137:47;12201:18;;15315:106:0;12058:167:1;15315:106:0;-1:-1:-1;;;;;15440:21:0;;15451:10;15440:21;;15432:76;;;;-1:-1:-1;;;15432:76:0;;12835:2:1;15432:76:0;;;12817:21:1;12874:2;12854:18;;;12847:30;12913:34;12893:18;;;12886:62;-1:-1:-1;;;12964:18:1;;;12957:40;13014:19;;15432:76:0;12807:232:1;15432:76:0;15519:23;;;;:12;:23;;;;;:30;;-1:-1:-1;;15519:30:0;15545:4;15519:30;;;;;;15560:9;:14;;15545:4;;15560:9;;:14;;15545:4;;15560:14;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;15068:514;;;:::o;8016:422::-;8100:17;;8079:4;;8100:17;;:25;;:17;:25;:64;;;;-1:-1:-1;;;;;;8129:27:0;;;;;;:18;:27;;;;;;;;:35;;:27;:35;;8100:64;8096:335;;;-1:-1:-1;;;;;8185:20:0;;;;;;:11;:20;;;;;;8209:12;8185:36;8181:195;;;-1:-1:-1;8249:5:0;8242:12;;8181:195;-1:-1:-1;;;;;;8295:20:0;;;;;;:11;:20;;;;;8318:12;8295:35;;8356:4;8349:11;;8096:335;-1:-1:-1;8415:4:0;8408:11;;13076:640;-1:-1:-1;;;;;13182:20:0;;13174:70;;;;-1:-1:-1;;;13174:70:0;;14800:2:1;13174:70:0;;;14782:21:1;14839:2;14819:18;;;14812:30;14878:34;14858:18;;;14851:62;-1:-1:-1;;;14929:18:1;;;14922:35;14974:19;;13174:70:0;14772:227:1;13174:70:0;-1:-1:-1;;;;;13263:23:0;;13255:71;;;;-1:-1:-1;;;13255:71:0;;9077:2:1;13255:71:0;;;9059:21:1;9116:2;9096:18;;;9089:30;9155:34;9135:18;;;9128:62;-1:-1:-1;;;9206:18:1;;;9199:33;9249:19;;13255:71:0;9049:225:1;13255:71:0;-1:-1:-1;;;;;13423:17:0;;13399:21;13423:17;;;;;;;;;;;13459:23;;;;13451:74;;;;-1:-1:-1;;;13451:74:0;;11329:2:1;13451:74:0;;;11311:21:1;11368:2;11348:18;;;11341:30;11407:34;11387:18;;;11380:62;-1:-1:-1;;;11458:18:1;;;11451:36;11504:19;;13451:74:0;11301:228:1;13451:74:0;-1:-1:-1;;;;;13561:17:0;;;:9;:17;;;;;;;;;;;13581:22;;;13561:42;;13625:20;;;;;;;;:30;;13597:6;;13561:9;13625:30;;13597:6;;13625:30;:::i;:::-;;;;;;;;13690:9;-1:-1:-1;;;;;13673:35:0;13682:6;-1:-1:-1;;;;;13673:35:0;;13701:6;13673:35;;;;17537:25:1;;17525:2;17510:18;;17492:76;13673:35:0;;;;;;;;13076:640;;;;:::o;13724:338::-;-1:-1:-1;;;;;13808:21:0;;13800:65;;;;-1:-1:-1;;;13800:65:0;;16769:2:1;13800:65:0;;;16751:21:1;16808:2;16788:18;;;16781:30;16847:33;16827:18;;;16820:61;16898:18;;13800:65:0;16741:181:1;13800:65:0;13956:6;13940:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;13973:18:0;;:9;:18;;;;;;;;;;:28;;13995:6;;13973:9;:28;;13995:6;;13973:28;:::i;:::-;;;;-1:-1:-1;;14017:37:0;;17537:25:1;;;-1:-1:-1;;;;;14017:37:0;;;14034:1;;14017:37;;17525:2:1;17510:18;14017:37:0;;;;;;;13724:338;;:::o;14070:530::-;-1:-1:-1;;;;;14154:21:0;;14146:67;;;;-1:-1:-1;;;14146:67:0;;14398:2:1;14146:67:0;;;14380:21:1;14437:2;14417:18;;;14410:30;14476:34;14456:18;;;14449:62;-1:-1:-1;;;14527:18:1;;;14520:31;14568:19;;14146:67:0;14370:223:1;14146:67:0;-1:-1:-1;;;;;14313:18:0;;14288:22;14313:18;;;;;;;;;;;14350:24;;;;14342:71;;;;-1:-1:-1;;;14342:71:0;;9821:2:1;14342:71:0;;;9803:21:1;9860:2;9840:18;;;9833:30;9899:34;9879:18;;;9872:62;-1:-1:-1;;;9950:18:1;;;9943:32;9992:19;;14342:71:0;9793:224:1;14342:71:0;-1:-1:-1;;;;;14449:18:0;;:9;:18;;;;;;;;;;14470:23;;;14449:44;;14515:12;:22;;14487:6;;14449:9;14515:22;;14487:6;;14515:22;:::i;:::-;;;;-1:-1:-1;;14555:37:0;;17537:25:1;;;14581:1:0;;-1:-1:-1;;;;;14555:37:0;;;;;17525:2:1;17510:18;14555:37:0;17492:76:1;2167:1492:0;2245:7;2322:9;2342;2362:7;2582:9;:16;2602:2;2582:22;2578:1032;;;-1:-1:-1;;;2869:4:0;2854:20;;2848:27;2919:4;2904:20;;2898:27;2977:4;2962:20;;2956:27;2953:1;2948:36;2824:175;;;3020:9;:16;3040:2;3020:22;3016:594;;;-1:-1:-1;;;3312:4:0;3297:20;;3291:27;3362:4;3347:20;;3341:27;;-1:-1:-1;;;;;3391:75:0;;;3497:3;3493:12;3507:2;3489:21;3262:263;;;3557:41;;-1:-1:-1;;;3557:41:0;;10224:2:1;3557:41:0;;;10206:21:1;10263:2;10243:18;;;10236:30;10302:33;10282:18;;;10275:61;10353:18;;3557:41:0;10196:181:1;3016:594:0;3629:22;3637:4;3643:1;3646;3649;3629:7;:22::i;:::-;3622:29;2167:1492;-1:-1:-1;;;;;;2167:1492:0:o;3798:1432::-;3883:7;4808:66;4794:80;;;4786:127;;;;-1:-1:-1;;;4786:127:0;;12432:2:1;4786:127:0;;;12414:21:1;12471:2;12451:18;;;12444:30;12510:34;12490:18;;;12483:62;-1:-1:-1;;;12561:18:1;;;12554:32;12603:19;;4786:127:0;12404:224:1;4786:127:0;4932:1;:7;;4937:2;4932:7;:18;;;;4943:1;:7;;4948:2;4943:7;4932:18;4924:65;;;;-1:-1:-1;;;4924:65:0;;13246:2:1;4924:65:0;;;13228:21:1;13285:2;13265:18;;;13258:30;13324:34;13304:18;;;13297:62;-1:-1:-1;;;13375:18:1;;;13368:32;13417:19;;4924:65:0;13218:224:1;4924:65:0;5104:24;;;5087:14;5104:24;;;;;;;;;8122:25:1;;;8195:4;8183:17;;8163:18;;;8156:45;;;;8217:18;;;8210:34;;;8260:18;;;8253:34;;;5104:24:0;;8094:19:1;;5104:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5104:24:0;;-1:-1:-1;;5104:24:0;;;-1:-1:-1;;;;;;;5147:20:0;;5139:57;;;;-1:-1:-1;;;5139:57:0;;8724:2:1;5139:57:0;;;8706:21:1;8763:2;8743:18;;;8736:30;8802:26;8782:18;;;8775:54;8846:18;;5139:57:0;8696:174:1;5139:57:0;5216:6;3798:1432;-1:-1:-1;;;;;3798:1432:0:o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;192:738;;287:3;280:4;272:6;268:17;264:27;254:2;;309:5;302;295:20;254:2;349:6;336:20;375:18;412:2;408;405:10;402:2;;;418:18;;:::i;:::-;493:2;487:9;461:2;547:13;;-1:-1:-1;;543:22:1;;;567:2;539:31;535:40;523:53;;;591:18;;;611:22;;;588:46;585:2;;;637:18;;:::i;:::-;677:10;673:2;666:22;712:2;704:6;697:18;758:3;751:4;746:2;738:6;734:15;730:26;727:35;724:2;;;779:5;772;765:20;724:2;847;840:4;832:6;828:17;821:4;813:6;809:17;796:54;870:15;;;887:4;866:26;859:41;;;;-1:-1:-1;874:6:1;244:686;-1:-1:-1;;;244:686:1:o;935:156::-;1001:20;;1061:4;1050:16;;1040:27;;1030:2;;1081:1;1078;1071:12;1096:196;;1208:2;1196:9;1187:7;1183:23;1179:32;1176:2;;;1229:6;1221;1214:22;1176:2;1257:29;1276:9;1257:29;:::i;:::-;1247:39;1166:126;-1:-1:-1;;;1166:126:1:o;1297:270::-;;;1426:2;1414:9;1405:7;1401:23;1397:32;1394:2;;;1447:6;1439;1432:22;1394:2;1475:29;1494:9;1475:29;:::i;:::-;1465:39;;1523:38;1557:2;1546:9;1542:18;1523:38;:::i;:::-;1513:48;;1384:183;;;;;:::o;1572:338::-;;;;1718:2;1706:9;1697:7;1693:23;1689:32;1686:2;;;1739:6;1731;1724:22;1686:2;1767:29;1786:9;1767:29;:::i;:::-;1757:39;;1815:38;1849:2;1838:9;1834:18;1815:38;:::i;:::-;1805:48;;1900:2;1889:9;1885:18;1872:32;1862:42;;1676:234;;;;;:::o;1915:543::-;;;;2067:2;2055:9;2046:7;2042:23;2038:32;2035:2;;;2088:6;2080;2073:22;2035:2;2116:29;2135:9;2116:29;:::i;:::-;2106:39;;2195:2;2184:9;2180:18;2167:32;2208:28;2230:5;2208:28;:::i;:::-;2255:5;-1:-1:-1;2311:2:1;2296:18;;2283:32;2338:18;2327:30;;2324:2;;;2375:6;2367;2360:22;2324:2;2403:49;2444:7;2435:6;2424:9;2420:22;2403:49;:::i;:::-;2393:59;;;2025:433;;;;;:::o;2463:414::-;;;2601:2;2589:9;2580:7;2576:23;2572:32;2569:2;;;2622:6;2614;2607:22;2569:2;2650:29;2669:9;2650:29;:::i;:::-;2640:39;;2730:2;2719:9;2715:18;2702:32;2757:18;2749:6;2746:30;2743:2;;;2794:6;2786;2779:22;2743:2;2822:49;2863:7;2854:6;2843:9;2839:22;2822:49;:::i;:::-;2812:59;;;2559:318;;;;;:::o;2882:264::-;;;3011:2;2999:9;2990:7;2986:23;2982:32;2979:2;;;3032:6;3024;3017:22;2979:2;3060:29;3079:9;3060:29;:::i;:::-;3050:39;3136:2;3121:18;;;;3108:32;;-1:-1:-1;;;2969:177:1:o;3151:482::-;;;;3306:2;3294:9;3285:7;3281:23;3277:32;3274:2;;;3327:6;3319;3312:22;3274:2;3355:29;3374:9;3355:29;:::i;:::-;3345:39;;3431:2;3420:9;3416:18;3403:32;3393:42;;3486:2;3475:9;3471:18;3458:32;3513:18;3505:6;3502:30;3499:2;;;3550:6;3542;3535:22;3638:484;;;;3791:2;3779:9;3770:7;3766:23;3762:32;3759:2;;;3812:6;3804;3797:22;3759:2;3840:29;3859:9;3840:29;:::i;:::-;3830:39;;3888:36;3920:2;3909:9;3905:18;3888:36;:::i;4127:255::-;;4247:2;4235:9;4226:7;4222:23;4218:32;4215:2;;;4268:6;4260;4253:22;4215:2;4305:9;4299:16;4324:28;4346:5;4324:28;:::i;4387:190::-;;4499:2;4487:9;4478:7;4474:23;4470:32;4467:2;;;4520:6;4512;4505:22;4467:2;-1:-1:-1;4548:23:1;;4457:120;-1:-1:-1;4457:120:1:o;4582:340::-;;4703:2;4691:9;4682:7;4678:23;4674:32;4671:2;;;4724:6;4716;4709:22;4671:2;4769:9;4756:23;4802:18;4794:6;4791:30;4788:2;;;4839:6;4831;4824:22;4788:2;4867:49;4908:7;4899:6;4888:9;4884:22;4867:49;:::i;:::-;4857:59;4661:261;-1:-1:-1;;;;4661:261:1:o;5122:192::-;;5232:2;5220:9;5211:7;5207:23;5203:32;5200:2;;;5253:6;5245;5238:22;5200:2;5281:27;5298:9;5281:27;:::i;5319:475::-;;5398:5;5392:12;5425:6;5420:3;5413:19;5450:3;5462:162;5476:6;5473:1;5470:13;5462:162;;;5538:4;5594:13;;;5590:22;;5584:29;5566:11;;;5562:20;;5555:59;5491:12;5462:162;;;5642:6;5639:1;5636:13;5633:2;;;5708:3;5701:4;5692:6;5687:3;5683:16;5679:27;5672:40;5633:2;-1:-1:-1;5776:2:1;5755:15;-1:-1:-1;;5751:29:1;5742:39;;;;5783:4;5738:50;;5368:426;-1:-1:-1;;5368:426:1:o;6842:363::-;-1:-1:-1;;;;;7056:32:1;;;;7038:51;;7137:6;7125:19;;;;7120:2;7105:18;;7098:47;7193:4;7181:17;7176:2;7161:18;;7154:45;7026:2;7011:18;;6993:212::o;7210:488::-;-1:-1:-1;;;;;7479:15:1;;;7461:34;;7526:2;7511:18;;7504:34;;;7574:15;;7569:2;7554:18;;7547:43;7626:3;7621:2;7606:18;;7599:31;;;7210:488;;7647:45;;7672:19;;7664:6;7647:45;:::i;8298:219::-;;8447:2;8436:9;8429:21;8467:44;8507:2;8496:9;8492:18;8484:6;8467:44;:::i;9279:335::-;9481:2;9463:21;;;9520:2;9500:18;;;9493:30;-1:-1:-1;;;9554:2:1;9539:18;;9532:41;9605:2;9590:18;;9453:161::o;15004:400::-;15206:2;15188:21;;;15245:2;15225:18;;;15218:30;15284:34;15279:2;15264:18;;15257:62;-1:-1:-1;;;15350:2:1;15335:18;;15328:34;15394:3;15379:19;;15178:226::o;17762:224::-;;17829:6;17862:2;17859:1;17855:10;17892:2;17889:1;17885:10;17923:3;17919:2;17915:12;17910:3;17907:21;17904:2;;;17931:18;;:::i;:::-;17967:13;;17809:177;-1:-1:-1;;;;17809:177:1:o;17991:128::-;;18062:1;18058:6;18055:1;18052:13;18049:2;;;18068:18;;:::i;:::-;-1:-1:-1;18104:9:1;;18039:80::o;18124:125::-;;18192:1;18189;18186:8;18183:2;;;18197:18;;:::i;:::-;-1:-1:-1;18234:9:1;;18173:76::o;18254:380::-;18339:1;18329:12;;18386:1;18376:12;;;18397:2;;18451:4;18443:6;18439:17;18429:27;;18397:2;18504;18496:6;18493:14;18473:18;18470:38;18467:2;;;18550:10;18545:3;18541:20;18538:1;18531:31;18585:4;18582:1;18575:15;18613:4;18610:1;18603:15;18467:2;;18309:325;;;:::o;18639:127::-;18700:10;18695:3;18691:20;18688:1;18681:31;18731:4;18728:1;18721:15;18755:4;18752:1;18745:15;18771:127;18832:10;18827:3;18823:20;18820:1;18813:31;18863:4;18860:1;18853:15;18887:4;18884:1;18877:15;18903:118;18989:5;18982:13;18975:21;18968:5;18965:32;18955:2;;19011:1;19008;19001:12;18955:2;18945:76;:::o

Swarm Source

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