ETH Price: $3,204.93 (+5.05%)

Contract

0x4DDEebB7D56c5818911814e8BCCa40E58183c1f6
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve122081652021-04-09 21:49:461310 days ago1618004986IN
0x4DDEebB7...58183c1f6
0 ETH0.0030610596
Approve122081652021-04-09 21:49:461310 days ago1618004986IN
0x4DDEebB7...58183c1f6
0 ETH0.0026578596
Approve122081652021-04-09 21:49:461310 days ago1618004986IN
0x4DDEebB7...58183c1f6
0 ETH0.0045010596
Approve122081652021-04-09 21:49:461310 days ago1618004986IN
0x4DDEebB7...58183c1f6
0 ETH0.0045010596
Transfer122078232021-04-09 20:24:161310 days ago1617999856IN
0x4DDEebB7...58183c1f6
0 ETH0.00991044120
Transfer122078212021-04-09 20:23:291310 days ago1617999809IN
0x4DDEebB7...58183c1f6
0 ETH0.00991044120
Transfer122075922021-04-09 19:36:581310 days ago1617997018IN
0x4DDEebB7...58183c1f6
0 ETH0.00974526118
Transfer122075902021-04-09 19:36:131310 days ago1617996973IN
0x4DDEebB7...58183c1f6
0 ETH0.00620526118
Approve122074262021-04-09 19:02:211310 days ago1617994941IN
0x4DDEebB7...58183c1f6
0 ETH0.0046886100
Approve122074032021-04-09 18:57:311310 days ago1617994651IN
0x4DDEebB7...58183c1f6
0 ETH0.00473548101
Approve122074032021-04-09 18:57:311310 days ago1617994651IN
0x4DDEebB7...58183c1f6
0 ETH0.00473548101
Transfer121982992021-04-08 9:15:131312 days ago1617873313IN
0x4DDEebB7...58183c1f6
0 ETH0.00578061110
Transfer121935892021-04-07 15:50:571312 days ago1617810657IN
0x4DDEebB7...58183c1f6
0 ETH0.01208673230
Transfer121935352021-04-07 15:39:141312 days ago1617809954IN
0x4DDEebB7...58183c1f6
0 ETH0.01208673230
Transfer121935072021-04-07 15:34:311312 days ago1617809671IN
0x4DDEebB7...58183c1f6
0 ETH0.01208673230
Transfer121915752021-04-07 8:17:441313 days ago1617783464IN
0x4DDEebB7...58183c1f6
0 ETH0.01208673230
Transfer121868702021-04-06 15:05:261313 days ago1617721526IN
0x4DDEebB7...58183c1f6
0 ETH0.01898673230
Approve121389552021-03-30 6:14:021321 days ago1617084842IN
0x4DDEebB7...58183c1f6
0 ETH0.0043525893
Transfer121380872021-03-30 3:06:571321 days ago1617073617IN
0x4DDEebB7...58183c1f6
0 ETH0.01073325110
0x60806040121380162021-03-30 2:54:061321 days ago1617072846IN
 Create: Token
0 ETH0.49188411137

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-03-30
*/

pragma solidity ^0.4.24;

contract ERC20Interface {
    function totalSupply()
        public
        view
        returns (uint256);

    function balanceOf(
        address _address)
        public
        view
        returns (uint256 balance);

    function allowance(
        address _address,
        address _to)
        public
        view
        returns (uint256 remaining);

    function transfer(
        address _to,
        uint256 _value)
        public
        returns (bool success);

    function approve(
        address _to,
        uint256 _value)
        public
        returns (bool success);

    function transferFrom(
        address _from,
        address _to,
        uint256 _value)
        public
        returns (bool success);

    event Transfer(
        address indexed _from,
        address indexed _to,
        uint256 _value
    );

    event Approval(
        address indexed _owner,
        address indexed _spender,
        uint256 _value
    );
}


contract Owned {
    address owner;
    address newOwner;
    uint32 transferCount;

    event TransferOwnership(
        address indexed _from,
        address indexed _to
    );

    constructor() public {
        owner = msg.sender;
        transferCount = 0;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(
        address _newOwner)
        public
        onlyOwner
    {
        newOwner = _newOwner;
    }

    function viewOwner()
        public
        view
        returns (address)
    {
        return owner;
    }

    function viewTransferCount()
        public
        view
        onlyOwner
        returns (uint32)
    {
        return transferCount;
    }

    function isTransferPending()
        public
        view
        returns (bool) {
        require(
            msg.sender == owner ||
            msg.sender == newOwner);
        return newOwner != address(0);
    }

    function acceptOwnership()
         public
    {
        require(msg.sender == newOwner);

        owner = newOwner;
        newOwner = address(0);
        transferCount++;

        emit TransferOwnership(
            owner,
            newOwner
        );
    }
}

library SafeMath {
    function add(
        uint256 a,
        uint256 b)
        internal
        pure
        returns(uint256 c)
    {
        c = a + b;
        require(c >= a);
    }

    function sub(
        uint256 a,
        uint256 b)
        internal
        pure
        returns(uint256 c)
    {
        require(b <= a);
        c = a - b;
    }

    function mul(
        uint256 a,
        uint256 b)
        internal
        pure
        returns(uint256 c) {
        c = a * b;
        require(a == 0 || c / a == b);
    }

    function div(
        uint256 a,
        uint256 b)
        internal
        pure
        returns(uint256 c) {
        require(b > 0);
        c = a / b;
    }
}

contract ApproveAndCallFallBack {
    function receiveApproval(
        address _from,
        uint256 _value,
        address token,
        bytes data)
        public
        returns (bool success);
}


contract Pausable is Owned {
  event Pause();
  event Unpause();

  bool public paused = false;

  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  modifier whenPaused() {
    require(paused);
    _;
  }

  function pause() onlyOwner whenNotPaused public {
    paused = true;
    emit Pause();
  }

  function unpause() onlyOwner whenPaused public {
    paused = false;
    emit Unpause();
  }
}


/**
 * @title ERC1132 interface
 * @dev see https://github.com/ethereum/EIPs/issues/1132
 */
contract ERC1132 {
    /**
     * @dev Reasons why a user's tokens have been locked
     */
    mapping(address => bytes32[]) public lockReason;

    /**
     * @dev locked token structure
     */
    struct lockToken {
        uint256 amount;
        uint256 validity;
        bool claimed;
    }

    /**
     * @dev Holds number & validity of tokens locked for a given reason for
     *      a specified address
     */
    mapping(address => mapping(bytes32 => lockToken)) public locked;

    /**
     * @dev Records data of all the tokens Locked
     */
    event Locked(
        address indexed _of,
        bytes32 indexed _reason,
        uint256 _amount,
        uint256 _validity
    );

    /**
     * @dev Records data of all the tokens unlocked
     */
    event Unlocked(
        address indexed _of,
        bytes32 indexed _reason,
        uint256 _amount
    );

    /**
     * @dev Locks a specified amount of tokens against an address,
     *      for a specified reason and time
     * @param _reason The reason to lock tokens
     * @param _amount Number of tokens to be locked
     * @param _time Lock time in seconds
     */
    function lock(bytes32 _reason, uint256 _amount, uint256 _time)
        public returns (bool);

    /**
     * @dev Returns tokens locked for a specified address for a
     *      specified reason
     *
     * @param _of The address whose tokens are locked
     * @param _reason The reason to query the lock tokens for
     */
    function tokensLocked(address _of, bytes32 _reason)
        public view returns (uint256 amount);

    /**
     * @dev Returns tokens locked for a specified address for a
     *      specified reason at a specific time
     *
     * @param _of The address whose tokens are locked
     * @param _reason The reason to query the lock tokens for
     * @param _time The timestamp to query the lock tokens for
     */
    function tokensLockedAtTime(address _of, bytes32 _reason, uint256 _time)
        public view returns (uint256 amount);

    /**
     * @dev Returns total tokens held by an address (locked + transferable)
     * @param _of The address to query the total balance of
     */
    function totalBalanceOf(address _of)
        public view returns (uint256 amount);

    /**
     * @dev Extends lock for a specified reason and time
     * @param _reason The reason to lock tokens
     * @param _time Lock extension time in seconds
     */
    function extendLock(bytes32 _reason, uint256 _time)
        public returns (bool);

    /**
     * @dev Increase number of tokens locked for a specified reason
     * @param _reason The reason to lock tokens
     * @param _amount Number of tokens to be increased
     */
    function increaseLockAmount(bytes32 _reason, uint256 _amount)
        public returns (bool);

    /**
     * @dev Returns unlockable tokens for a specified address for a specified reason
     * @param _of The address to query the the unlockable token count of
     * @param _reason The reason to query the unlockable tokens for
     */
    function tokensUnlockable(address _of, bytes32 _reason)
        public view returns (uint256 amount);

    /**
     * @dev Unlocks the unlockable tokens of a specified address
     * @param _of Address of user, claiming back unlockable tokens
     */
    function unlock(address _of)
        public returns (uint256 unlockableTokens);

    /**
     * @dev Gets the unlockable tokens of a specified address
     * @param _of The address to query the the unlockable token count of
     */
    function getUnlockableTokens(address _of)
        public view returns (uint256 unlockableTokens);

}


contract Token is ERC20Interface, Owned, Pausable, ERC1132 {
    using SafeMath for uint256;

    string public symbol;
    string public name;
    uint8 public decimals;
    uint256 private _totalSupply;
    
    string internal constant ALREADY_LOCKED = 'Tokens already locked';
    string internal constant NOT_LOCKED = 'No tokens locked';
    string internal constant AMOUNT_ZERO = 'Amount can not be 0';

    /* always capped by 10B tokens */
    uint256 internal constant MAX_TOTAL_SUPPLY = 10000000000;

    mapping(address => uint256) balances;
    mapping(address => mapping(address => uint256)) allowed;
    mapping(address => uint256) incomes;
    mapping(address => uint256) expenses;
    mapping(address => bool) frozenAccount;

    event FreezeAccount(address _address, bool frozen);

    constructor(
        uint256 _totalSupply_,
        string _name,
        string _symbol,
        uint8 _decimals)
        public
    {
        symbol = _symbol;
        name = _name;
        decimals = _decimals;
        _totalSupply = _totalSupply_ * 10**uint256(_decimals);
        balances[owner] = _totalSupply;

        emit Transfer(address(0), owner, _totalSupply);
    }

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

    function _transfer(
        address _from,
        address _to,
        uint256 _value)
        internal
        returns (bool success)
    {
        require (_to != 0x0);
        require (balances[_from] >= _value);
        require(!frozenAccount[_from]);
        require(!frozenAccount[_to]);

        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);

        incomes[_to] = incomes[_to].add(_value);
        expenses[_from] = expenses[_from].add(_value);

        emit Transfer(_from, _to, _value);

        return true;
    }

    function transfer(
        address _to,
        uint256 _value)
        public
        whenNotPaused
        returns (bool success)
    {
        return _transfer(msg.sender, _to, _value);
    }

    function approve(
        address _spender,
        uint256 _value)
        public
        whenNotPaused
        returns (bool success)
    {
        require (_spender != 0x0);
        require(!frozenAccount[msg.sender]);
        require(!frozenAccount[_spender]);

        allowed[msg.sender][_spender] = _value;

        emit Approval(msg.sender, _spender, _value);

        return true;
    }

    function transferFrom(
        address _from,
        address _to,
        uint256 _value)
        public
        whenNotPaused
        returns (bool success)
    {
        require(!frozenAccount[msg.sender]);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        return _transfer(_from, _to, _value);
    }

    function balanceOf(
        address _address)
        public
        view
        returns (uint256 remaining)
    {
        require(_address != 0x0);

        return balances[_address];
    }

    function incomeOf(
        address _address)
        public
        view
        returns (uint256 income)
    {
        require(_address != 0x0);

        return incomes[_address];
    }

    function expenseOf(
        address _address)
        public
        view
        returns (uint256 expense)
    {
        require(_address != 0x0);

        return expenses[_address];
    }

    function allowance(
        address _owner,
        address _spender)
        public
        view
        returns (uint256 remaining)
    {
        require(_owner != 0x0);
        require(_spender != 0x0);
        require(_owner == msg.sender || _spender == msg.sender);

        return allowed[_owner][_spender];
    }

    function approveAndCall(
        address _spender,
        uint256 _value,
        bytes _data)
        public
        whenNotPaused
        returns (bool success)
    {
        if (approve(_spender, _value)) {
            require(ApproveAndCallFallBack(_spender).receiveApproval(msg.sender, _value, this, _data) == true);
            return true;
        }
        return false;
    }

    function freezeAccount(
        address _address,
        bool freeze)
        public
        onlyOwner
        returns (bool success)
    {
        frozenAccount[_address] = freeze;
        emit FreezeAccount(_address, freeze);
        return true;
    }

    function isFrozenAccount(
        address _address)
        public
        view
        returns (bool frozen)
    {
        require(_address != 0x0);
        return frozenAccount[_address];
    }

    function mint(
        uint256 amount) 
        public 
        onlyOwner 
        returns (bool success)
    {
        uint256 newSupply = _totalSupply + amount;
        require(newSupply <= MAX_TOTAL_SUPPLY * 10 **uint256(decimals), "ERC20: exceed maximum total supply");

        _totalSupply = newSupply;
        balances[owner] += amount;
        emit Transfer(address(0), owner, amount);
        return true;
    }

    function burn(
        uint256 amount) 
        public 
        whenNotPaused
        returns (bool success)
    {
        require (balances[msg.sender] >= amount);
        require(!frozenAccount[msg.sender]);
        balances[msg.sender] = balances[msg.sender].sub(amount);
        _totalSupply -= amount;

        emit Transfer(msg.sender, address(0), amount);
        return true;
    }

     function lock(
         bytes32 _reason, 
         uint256 _amount, 
         uint256 _time)
        public
        whenNotPaused
        returns (bool)
    {
        uint256 validUntil = now.add(_time); //solhint-disable-line

        // If tokens are already locked, then functions extendLock or
        // increaseLockAmount should be used to make any changes
        require(tokensLocked(msg.sender, _reason) == 0, ALREADY_LOCKED);
        require(_amount != 0, AMOUNT_ZERO);

        if (locked[msg.sender][_reason].amount == 0)
            lockReason[msg.sender].push(_reason);

        transfer(address(this), _amount);

        locked[msg.sender][_reason] = lockToken(_amount, validUntil, false);

        emit Locked(msg.sender, _reason, _amount, validUntil);
        return true;
    }

    function transferWithLock(address _to, bytes32 _reason, uint256 _amount, uint256 _time)
        public
        whenNotPaused
        returns (bool)
    {
        uint256 validUntil = now.add(_time); //solhint-disable-line

        require(tokensLocked(_to, _reason) == 0, ALREADY_LOCKED);
        require(_amount != 0, AMOUNT_ZERO);

        if (locked[_to][_reason].amount == 0)
            lockReason[_to].push(_reason);

        transfer(address(this), _amount);

        locked[_to][_reason] = lockToken(_amount, validUntil, false);

        emit Locked(_to, _reason, _amount, validUntil);
        return true;
    }

    function tokensLocked(address _of, bytes32 _reason)
        public
        view
        returns (uint256 amount)
    {
        if (!locked[_of][_reason].claimed)
            amount = locked[_of][_reason].amount;
    }

    function tokensLockedAtTime(address _of, bytes32 _reason, uint256 _time)
        public
        view
        returns (uint256 amount)
    {
        if (locked[_of][_reason].validity > _time)
            amount = locked[_of][_reason].amount;
    }

    function totalBalanceOf(address _of)
        public
        view
        returns (uint256 amount)
    {
        amount = balanceOf(_of);

        for (uint256 i = 0; i < lockReason[_of].length; i++) {
            amount = amount.add(tokensLocked(_of, lockReason[_of][i]));
        }
    }

     function extendLock(bytes32 _reason, uint256 _time)
        public
        whenNotPaused
        returns (bool)
    {
        require(tokensLocked(msg.sender, _reason) > 0, NOT_LOCKED);

        locked[msg.sender][_reason].validity = locked[msg.sender][_reason].validity.add(_time);

        emit Locked(msg.sender, _reason, locked[msg.sender][_reason].amount, locked[msg.sender][_reason].validity);
        return true;
    }

    function increaseLockAmount(bytes32 _reason, uint256 _amount)
        public
        whenNotPaused
        returns (bool)
    {
        require(tokensLocked(msg.sender, _reason) > 0, NOT_LOCKED);
        transfer(address(this), _amount);

        locked[msg.sender][_reason].amount = locked[msg.sender][_reason].amount.add(_amount);

        emit Locked(msg.sender, _reason, locked[msg.sender][_reason].amount, locked[msg.sender][_reason].validity);
        return true;
    }

    function tokensUnlockable(address _of, bytes32 _reason)
        public
        view
        returns (uint256 amount)
    {
        if (locked[_of][_reason].validity <= now && !locked[_of][_reason].claimed) //solhint-disable-line
            amount = locked[_of][_reason].amount;
    }

    function unlock(address _of)
        public
        whenNotPaused
        returns (uint256 unlockableTokens)
    {
        uint256 lockedTokens;

        for (uint256 i = 0; i < lockReason[_of].length; i++) {
            lockedTokens = tokensUnlockable(_of, lockReason[_of][i]);
            if (lockedTokens > 0) {
                unlockableTokens = unlockableTokens.add(lockedTokens);
                locked[_of][lockReason[_of][i]].claimed = true;
                emit Unlocked(_of, lockReason[_of][i], lockedTokens);
            }
        }

        if (unlockableTokens > 0)
            this.transfer(_of, unlockableTokens);
    }

    function getUnlockableTokens(address _of)
        public
        view
        returns (uint256 unlockableTokens)
    {
        for (uint256 i = 0; i < lockReason[_of].length; i++) {
            unlockableTokens = unlockableTokens.add(tokensUnlockable(_of, lockReason[_of][i]));
        }
    }

    function () public payable {
        revert();
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_of","type":"address"},{"name":"_reason","type":"bytes32"},{"name":"_time","type":"uint256"}],"name":"tokensLockedAtTime","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isTransferPending","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reason","type":"bytes32"},{"name":"_amount","type":"uint256"},{"name":"_time","type":"uint256"}],"name":"lock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_of","type":"address"}],"name":"unlock","outputs":[{"name":"unlockableTokens","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"isFrozenAccount","outputs":[{"name":"frozen","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_of","type":"address"}],"name":"totalBalanceOf","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_reason","type":"bytes32"},{"name":"_amount","type":"uint256"},{"name":"_time","type":"uint256"}],"name":"transferWithLock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_of","type":"address"},{"name":"_reason","type":"bytes32"}],"name":"tokensUnlockable","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_of","type":"address"},{"name":"_reason","type":"bytes32"}],"name":"tokensLocked","outputs":[{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceOf","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"lockReason","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reason","type":"bytes32"},{"name":"_amount","type":"uint256"}],"name":"increaseLockAmount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"viewTransferCount","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"incomeOf","outputs":[{"name":"income","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"mint","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_reason","type":"bytes32"},{"name":"_time","type":"uint256"}],"name":"extendLock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_of","type":"address"}],"name":"getUnlockableTokens","outputs":[{"name":"unlockableTokens","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"viewOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"bytes32"}],"name":"locked","outputs":[{"name":"amount","type":"uint256"},{"name":"validity","type":"uint256"},{"name":"claimed","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"expenseOf","outputs":[{"name":"expense","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"freeze","type":"bool"}],"name":"freezeAccount","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_totalSupply_","type":"uint256"},{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_address","type":"address"},{"indexed":false,"name":"frozen","type":"bool"}],"name":"FreezeAccount","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_of","type":"address"},{"indexed":true,"name":"_reason","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"},{"indexed":false,"name":"_validity","type":"uint256"}],"name":"Locked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_of","type":"address"},{"indexed":true,"name":"_reason","type":"bytes32"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"Unlocked","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"TransferOwnership","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

60806040526000600160186101000a81548160ff0219169083151502179055503480156200002c57600080fd5b50604051620040633803806200406383398101806040528101908080519060200190929190805182019291906020018051820192919060200180519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160146101000a81548163ffffffff021916908363ffffffff1602179055508160049080519060200190620000ec9291906200022a565b508260059080519060200190620001059291906200022a565b5080600660006101000a81548160ff021916908360ff1602179055508060ff16600a0a8402600781905550600754600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6007546040518082815260200191505060405180910390a350505050620002d9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200026d57805160ff19168380011785556200029e565b828001600101855582156200029e579182015b828111156200029d57825182559160200191906001019062000280565b5b509050620002ad9190620002b1565b5090565b620002d691905b80821115620002d2576000816000905550600101620002b8565b5090565b90565b613d7a80620002e96000396000f3006080604052600436106101c2576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146101c7578063095ea7b314610257578063179e91f1146102bc5780631801c4081461032b57806318160ddd1461035a57806323b872dd146103855780632e82aaf21461040a5780632f6c493c14610467578063313ce567146104be5780633f4ba83a146104ef5780634028db791461050657806342966c68146105615780634b0ee02a146105a65780634cb5465f146105fd5780635294d0e81461067a5780635c975abb146106df5780635ca48d8c1461070e57806370a082311461077357806371d66f00146107ca57806379ba50971461083357806381fc4d901461084a5780638456cb591461089d57806384aa2602146108b457806395d89b41146108eb5780639b03bea61461097b578063a0712d68146109d2578063a9059cbb14610a17578063a9dab16714610a7c578063ab4a2eb314610acf578063bc677b4614610b26578063cae9ca5114610b7d578063d71be8db14610c28578063dd62ed3e14610c9f578063dff96f8a14610d16578063e724529c14610d6d578063f2fde38b14610dd4575b600080fd5b3480156101d357600080fd5b506101dc610e17565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561021c578082015181840152602081019050610201565b50505050905090810190601f1680156102495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026357600080fd5b506102a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610eb5565b604051808215151515815260200191505060405180910390f35b3480156102c857600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356000191690602001909291908035906020019092919050505061109b565b6040518082815260200191505060405180910390f35b34801561033757600080fd5b50610340611166565b604051808215151515815260200191505060405180910390f35b34801561036657600080fd5b5061036f611273565b6040518082815260200191505060405180910390f35b34801561039157600080fd5b506103f0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061127d565b604051808215151515815260200191505060405180910390f35b34801561041657600080fd5b5061044d60048036038101908080356000191690602001909291908035906020019092919080359060200190929190505050611417565b604051808215151515815260200191505060405180910390f35b34801561047357600080fd5b506104a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061180f565b6040518082815260200191505060405180910390f35b3480156104ca57600080fd5b506104d3611b70565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104fb57600080fd5b50610504611b83565b005b34801561051257600080fd5b50610547600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611c42565b604051808215151515815260200191505060405180910390f35b34801561056d57600080fd5b5061058c60048036038101908080359060200190929190505050611cbd565b604051808215151515815260200191505060405180910390f35b3480156105b257600080fd5b506105e7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e96565b6040518082815260200191505060405180910390f35b34801561060957600080fd5b50610660600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356000191690602001909291908035906020019092919080359060200190929190505050611f7a565b604051808215151515815260200191505060405180910390f35b34801561068657600080fd5b506106c9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035600019169060200190929190505050612373565b6040518082815260200191505060405180910390f35b3480156106eb57600080fd5b506106f46124b0565b604051808215151515815260200191505060405180910390f35b34801561071a57600080fd5b5061075d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356000191690602001909291905050506124c3565b6040518082815260200191505060405180910390f35b34801561077f57600080fd5b506107b4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612599565b6040518082815260200191505060405180910390f35b3480156107d657600080fd5b50610815600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612607565b60405180826000191660001916815260200191505060405180910390f35b34801561083f57600080fd5b50610848612637565b005b34801561085657600080fd5b50610883600480360381019080803560001916906020019092919080359060200190929190505050612811565b604051808215151515815260200191505060405180910390f35b3480156108a957600080fd5b506108b2612b0e565b005b3480156108c057600080fd5b506108c9612bcd565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b3480156108f757600080fd5b50610900612c42565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610940578082015181840152602081019050610925565b50505050905090810190601f16801561096d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561098757600080fd5b506109bc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612ce0565b6040518082815260200191505060405180910390f35b3480156109de57600080fd5b506109fd60048036038101908080359060200190929190505050612d4e565b604051808215151515815260200191505060405180910390f35b348015610a2357600080fd5b50610a62600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f73565b604051808215151515815260200191505060405180910390f35b348015610a8857600080fd5b50610ab5600480360381019080803560001916906020019092919080359060200190929190505050612fa4565b604051808215151515815260200191505060405180910390f35b348015610adb57600080fd5b50610b10600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613296565b6040518082815260200191505060405180910390f35b348015610b3257600080fd5b50610b3b61336f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b8957600080fd5b50610c0e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050613398565b604051808215151515815260200191505060405180910390f35b348015610c3457600080fd5b50610c77600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560001916906020019092919050505061356b565b6040518084815260200183815260200182151515158152602001935050505060405180910390f35b348015610cab57600080fd5b50610d00600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506135af565b6040518082815260200191505060405180910390f35b348015610d2257600080fd5b50610d57600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506136f1565b6040518082815260200191505060405180910390f35b348015610d7957600080fd5b50610dba600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505061375f565b604051808215151515815260200191505060405180910390f35b348015610de057600080fd5b50610e15600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061388c565b005b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ead5780601f10610e8257610100808354040283529160200191610ead565b820191906000526020600020905b815481529060010190602001808311610e9057829003601f168201915b505050505081565b6000600160189054906101000a900460ff16151515610ed357600080fd5b60008373ffffffffffffffffffffffffffffffffffffffff1614151515610ef957600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610f5257600080fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610fab57600080fd5b81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060010154111561115f57600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084600019166000191681526020019081526020016000206000015490505b9392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806112105750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561121b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905090565b6000600754905090565b6000600160189054906101000a900460ff1615151561129b57600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156112f457600080fd5b61138382600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461392b90919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061140e848484613947565b90509392505050565b600080600160189054906101000a900460ff1615151561143657600080fd5b6114498342613d3290919063ffffffff16565b9050600061145733876124c3565b146040805190810160405280601581526020017f546f6b656e7320616c7265616479206c6f636b65640000000000000000000000815250901515611536576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156114fb5780820151818401526020810190506114e0565b50505050905090810190601f1680156115285780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008414156040805190810160405280601381526020017f416d6f756e742063616e206e6f7420626520300000000000000000000000000081525090151561161a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156115df5780820151818401526020810190506115c4565b50505050905090810190601f16801561160c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087600019166000191681526020019081526020016000206000015414156116ef57600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208590806001815401808255809150509060018203906000526020600020016000909192909190915090600019169055505b6116f93085612f73565b5060606040519081016040528085815260200182815260200160001515815250600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008760001916600019168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff02191690831515021790555090505084600019163373ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd8684604051808381526020018281526020019250505060405180910390a360019150509392505050565b6000806000600160189054906101000a900460ff1615151561183057600080fd5b600090505b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611a80576118df84600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838154811015156118cf57fe5b9060005260206000200154612373565b91506000821115611a73576118fd8284613d3290919063ffffffff16565b92506001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110151561198e57fe5b90600052602060002001546000191660001916815260200190815260200160002060020160006101000a81548160ff021916908315150217905550600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481101515611a1557fe5b9060005260206000200154600019168473ffffffffffffffffffffffffffffffffffffffff167f11f87fd5adcd05786919b8b868f59a70d78ae4eb6f305c5927f9c5b1659841a4846040518082815260200191505060405180910390a35b8080600101915050611835565b6000831115611b69573073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611b2c57600080fd5b505af1158015611b40573d6000803e3d6000fd5b505050506040513d6020811015611b5657600080fd5b8101908080519060200190929190505050505b5050919050565b600660009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bde57600080fd5b600160189054906101000a900460ff161515611bf957600080fd5b6000600160186101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b6000808273ffffffffffffffffffffffffffffffffffffffff1614151515611c6957600080fd5b600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160189054906101000a900460ff16151515611cdb57600080fd5b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611d2957600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611d8257600080fd5b611dd482600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461392b90919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600760008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600080611ea283612599565b9150600090505b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611f7457611f65611f5684600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002084815481101515611f4657fe5b90600052602060002001546124c3565b83613d3290919063ffffffff16565b91508080600101915050611ea9565b50919050565b600080600160189054906101000a900460ff16151515611f9957600080fd5b611fac8342613d3290919063ffffffff16565b90506000611fba87876124c3565b146040805190810160405280601581526020017f546f6b656e7320616c7265616479206c6f636b65640000000000000000000000815250901515612099576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561205e578082015181840152602081019050612043565b50505050905090810190601f16801561208b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008414156040805190810160405280601381526020017f416d6f756e742063616e206e6f7420626520300000000000000000000000000081525090151561217d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612142578082015181840152602081019050612127565b50505050905090810190601f16801561216f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000876000191660001916815260200190815260200160002060000154141561225257600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208590806001815401808255809150509060018203906000526020600020016000909192909190915090600019169055505b61225c3085612f73565b5060606040519081016040528085815260200182815260200160001515815250600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008760001916600019168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff02191690831515021790555090505084600019168673ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd8684604051808381526020018281526020019250505060405180910390a36001915050949350505050565b600042600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846000191660001916815260200190815260200160002060010154111580156124465750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836000191660001916815260200190815260200160002060020160009054906101000a900460ff16155b156124aa57600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083600019166000191681526020019081526020016000206000015490505b92915050565b600160189054906101000a900460ff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836000191660001916815260200190815260200160002060020160009054906101000a900460ff16151561259357600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083600019166000191681526020019081526020016000206000015490505b92915050565b6000808273ffffffffffffffffffffffffffffffffffffffff16141515156125c057600080fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60026020528160005260406000208181548110151561262257fe5b90600052602060002001600091509150505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561269357600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601481819054906101000a900463ffffffff168092919060010191906101000a81548163ffffffff021916908363ffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60405160405180910390a3565b6000600160189054906101000a900460ff1615151561282f57600080fd5b600061283b33856124c3565b116040805190810160405280601081526020017f4e6f20746f6b656e73206c6f636b65640000000000000000000000000000000081525090151561291a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156128df5780820151818401526020810190506128c4565b50505050905090810190601f16801561290c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506129253083612f73565b5061299482600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000866000191660001916815260200190815260200160002060000154613d3290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085600019166000191681526020019081526020016000206000018190555082600019163373ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000876000191660001916815260200190815260200160002060000154600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000886000191660001916815260200190815260200160002060010154604051808381526020018281526020019250505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b6957600080fd5b600160189054906101000a900460ff16151515612b8557600080fd5b60018060186101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612c2a57600080fd5b600160149054906101000a900463ffffffff16905090565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612cd85780601f10612cad57610100808354040283529160200191612cd8565b820191906000526020600020905b815481529060010190602001808311612cbb57829003601f168201915b505050505081565b6000808273ffffffffffffffffffffffffffffffffffffffff1614151515612d0757600080fd5b600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612dac57600080fd5b82600754019050600660009054906101000a900460ff1660ff16600a0a6402540be400028111151515612e6d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001807f45524332303a20657863656564206d6178696d756d20746f74616c207375707081526020017f6c7900000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b8060078190555082600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a36001915050919050565b6000600160189054906101000a900460ff16151515612f9157600080fd5b612f9c338484613947565b905092915050565b6000600160189054906101000a900460ff16151515612fc257600080fd5b6000612fce33856124c3565b116040805190810160405280601081526020017f4e6f20746f6b656e73206c6f636b6564000000000000000000000000000000008152509015156130ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613072578082015181840152602081019050613057565b50505050905090810190601f16801561309f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5061311c82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000866000191660001916815260200190815260200160002060010154613d3290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085600019166000191681526020019081526020016000206001018190555082600019163373ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000876000191660001916815260200190815260200160002060000154600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000886000191660001916815260200190815260200160002060010154604051808381526020018281526020019250505060405180910390a36001905092915050565b600080600090505b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156133695761335a61334b84600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110151561333b57fe5b9060005260206000200154612373565b83613d3290919063ffffffff16565b9150808060010191505061329e565b50919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160189054906101000a900460ff161515156133b657600080fd5b6133c08484610eb5565b1561355f57600115158473ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156134be5780820151818401526020810190506134a3565b50505050905090810190601f1680156134eb5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15801561350d57600080fd5b505af1158015613521573d6000803e3d6000fd5b505050506040513d602081101561353757600080fd5b8101908080519060200190929190505050151514151561355657600080fd5b60019050613564565b600090505b9392505050565b6003602052816000526040600020602052806000526040600020600091509150508060000154908060010154908060020160009054906101000a900460ff16905083565b6000808373ffffffffffffffffffffffffffffffffffffffff16141515156135d657600080fd5b60008273ffffffffffffffffffffffffffffffffffffffff16141515156135fc57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148061366157503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b151561366c57600080fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff161415151561371857600080fd5b600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156137bc57600080fd5b81600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fd16a7a4ba83c78a07676c543502e8155f633ecd3c35abb1da51bcbf129758b0f8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a16001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156138e757600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600082821115151561393c57600080fd5b818303905092915050565b6000808373ffffffffffffffffffffffffffffffffffffffff161415151561396e57600080fd5b81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156139bc57600080fd5b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515613a1557600080fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515613a6e57600080fd5b613ac082600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461392b90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b5582600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613d3290919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613bea82600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613d3290919063ffffffff16565b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613c7f82600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613d3290919063ffffffff16565b600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60008183019050828110151515613d4857600080fd5b929150505600a165627a7a7230582096f55882520513a176d7b8ec36be1be518898173eb68e969035be2f91e10c5f500290000000000000000000000000000000000000000000000000000000165a0bc00000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000003444f4700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003444f470000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101c2576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146101c7578063095ea7b314610257578063179e91f1146102bc5780631801c4081461032b57806318160ddd1461035a57806323b872dd146103855780632e82aaf21461040a5780632f6c493c14610467578063313ce567146104be5780633f4ba83a146104ef5780634028db791461050657806342966c68146105615780634b0ee02a146105a65780634cb5465f146105fd5780635294d0e81461067a5780635c975abb146106df5780635ca48d8c1461070e57806370a082311461077357806371d66f00146107ca57806379ba50971461083357806381fc4d901461084a5780638456cb591461089d57806384aa2602146108b457806395d89b41146108eb5780639b03bea61461097b578063a0712d68146109d2578063a9059cbb14610a17578063a9dab16714610a7c578063ab4a2eb314610acf578063bc677b4614610b26578063cae9ca5114610b7d578063d71be8db14610c28578063dd62ed3e14610c9f578063dff96f8a14610d16578063e724529c14610d6d578063f2fde38b14610dd4575b600080fd5b3480156101d357600080fd5b506101dc610e17565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561021c578082015181840152602081019050610201565b50505050905090810190601f1680156102495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026357600080fd5b506102a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610eb5565b604051808215151515815260200191505060405180910390f35b3480156102c857600080fd5b50610315600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356000191690602001909291908035906020019092919050505061109b565b6040518082815260200191505060405180910390f35b34801561033757600080fd5b50610340611166565b604051808215151515815260200191505060405180910390f35b34801561036657600080fd5b5061036f611273565b6040518082815260200191505060405180910390f35b34801561039157600080fd5b506103f0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061127d565b604051808215151515815260200191505060405180910390f35b34801561041657600080fd5b5061044d60048036038101908080356000191690602001909291908035906020019092919080359060200190929190505050611417565b604051808215151515815260200191505060405180910390f35b34801561047357600080fd5b506104a8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061180f565b6040518082815260200191505060405180910390f35b3480156104ca57600080fd5b506104d3611b70565b604051808260ff1660ff16815260200191505060405180910390f35b3480156104fb57600080fd5b50610504611b83565b005b34801561051257600080fd5b50610547600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611c42565b604051808215151515815260200191505060405180910390f35b34801561056d57600080fd5b5061058c60048036038101908080359060200190929190505050611cbd565b604051808215151515815260200191505060405180910390f35b3480156105b257600080fd5b506105e7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e96565b6040518082815260200191505060405180910390f35b34801561060957600080fd5b50610660600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356000191690602001909291908035906020019092919080359060200190929190505050611f7a565b604051808215151515815260200191505060405180910390f35b34801561068657600080fd5b506106c9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035600019169060200190929190505050612373565b6040518082815260200191505060405180910390f35b3480156106eb57600080fd5b506106f46124b0565b604051808215151515815260200191505060405180910390f35b34801561071a57600080fd5b5061075d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356000191690602001909291905050506124c3565b6040518082815260200191505060405180910390f35b34801561077f57600080fd5b506107b4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612599565b6040518082815260200191505060405180910390f35b3480156107d657600080fd5b50610815600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612607565b60405180826000191660001916815260200191505060405180910390f35b34801561083f57600080fd5b50610848612637565b005b34801561085657600080fd5b50610883600480360381019080803560001916906020019092919080359060200190929190505050612811565b604051808215151515815260200191505060405180910390f35b3480156108a957600080fd5b506108b2612b0e565b005b3480156108c057600080fd5b506108c9612bcd565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b3480156108f757600080fd5b50610900612c42565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610940578082015181840152602081019050610925565b50505050905090810190601f16801561096d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561098757600080fd5b506109bc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612ce0565b6040518082815260200191505060405180910390f35b3480156109de57600080fd5b506109fd60048036038101908080359060200190929190505050612d4e565b604051808215151515815260200191505060405180910390f35b348015610a2357600080fd5b50610a62600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f73565b604051808215151515815260200191505060405180910390f35b348015610a8857600080fd5b50610ab5600480360381019080803560001916906020019092919080359060200190929190505050612fa4565b604051808215151515815260200191505060405180910390f35b348015610adb57600080fd5b50610b10600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613296565b6040518082815260200191505060405180910390f35b348015610b3257600080fd5b50610b3b61336f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b8957600080fd5b50610c0e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050613398565b604051808215151515815260200191505060405180910390f35b348015610c3457600080fd5b50610c77600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560001916906020019092919050505061356b565b6040518084815260200183815260200182151515158152602001935050505060405180910390f35b348015610cab57600080fd5b50610d00600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506135af565b6040518082815260200191505060405180910390f35b348015610d2257600080fd5b50610d57600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506136f1565b6040518082815260200191505060405180910390f35b348015610d7957600080fd5b50610dba600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505061375f565b604051808215151515815260200191505060405180910390f35b348015610de057600080fd5b50610e15600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061388c565b005b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ead5780601f10610e8257610100808354040283529160200191610ead565b820191906000526020600020905b815481529060010190602001808311610e9057829003601f168201915b505050505081565b6000600160189054906101000a900460ff16151515610ed357600080fd5b60008373ffffffffffffffffffffffffffffffffffffffff1614151515610ef957600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610f5257600080fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610fab57600080fd5b81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000856000191660001916815260200190815260200160002060010154111561115f57600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084600019166000191681526020019081526020016000206000015490505b9392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806112105750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561121b57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415905090565b6000600754905090565b6000600160189054906101000a900460ff1615151561129b57600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156112f457600080fd5b61138382600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461392b90919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061140e848484613947565b90509392505050565b600080600160189054906101000a900460ff1615151561143657600080fd5b6114498342613d3290919063ffffffff16565b9050600061145733876124c3565b146040805190810160405280601581526020017f546f6b656e7320616c7265616479206c6f636b65640000000000000000000000815250901515611536576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156114fb5780820151818401526020810190506114e0565b50505050905090810190601f1680156115285780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008414156040805190810160405280601381526020017f416d6f756e742063616e206e6f7420626520300000000000000000000000000081525090151561161a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156115df5780820151818401526020810190506115c4565b50505050905090810190601f16801561160c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087600019166000191681526020019081526020016000206000015414156116ef57600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208590806001815401808255809150509060018203906000526020600020016000909192909190915090600019169055505b6116f93085612f73565b5060606040519081016040528085815260200182815260200160001515815250600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008760001916600019168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff02191690831515021790555090505084600019163373ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd8684604051808381526020018281526020019250505060405180910390a360019150509392505050565b6000806000600160189054906101000a900460ff1615151561183057600080fd5b600090505b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611a80576118df84600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838154811015156118cf57fe5b9060005260206000200154612373565b91506000821115611a73576118fd8284613d3290919063ffffffff16565b92506001600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110151561198e57fe5b90600052602060002001546000191660001916815260200190815260200160002060020160006101000a81548160ff021916908315150217905550600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481101515611a1557fe5b9060005260206000200154600019168473ffffffffffffffffffffffffffffffffffffffff167f11f87fd5adcd05786919b8b868f59a70d78ae4eb6f305c5927f9c5b1659841a4846040518082815260200191505060405180910390a35b8080600101915050611835565b6000831115611b69573073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611b2c57600080fd5b505af1158015611b40573d6000803e3d6000fd5b505050506040513d6020811015611b5657600080fd5b8101908080519060200190929190505050505b5050919050565b600660009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bde57600080fd5b600160189054906101000a900460ff161515611bf957600080fd5b6000600160186101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b6000808273ffffffffffffffffffffffffffffffffffffffff1614151515611c6957600080fd5b600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160189054906101000a900460ff16151515611cdb57600080fd5b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515611d2957600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611d8257600080fd5b611dd482600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461392b90919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600760008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019050919050565b600080611ea283612599565b9150600090505b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015611f7457611f65611f5684600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002084815481101515611f4657fe5b90600052602060002001546124c3565b83613d3290919063ffffffff16565b91508080600101915050611ea9565b50919050565b600080600160189054906101000a900460ff16151515611f9957600080fd5b611fac8342613d3290919063ffffffff16565b90506000611fba87876124c3565b146040805190810160405280601581526020017f546f6b656e7320616c7265616479206c6f636b65640000000000000000000000815250901515612099576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561205e578082015181840152602081019050612043565b50505050905090810190601f16801561208b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008414156040805190810160405280601381526020017f416d6f756e742063616e206e6f7420626520300000000000000000000000000081525090151561217d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612142578082015181840152602081019050612127565b50505050905090810190601f16801561216f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000876000191660001916815260200190815260200160002060000154141561225257600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208590806001815401808255809150509060018203906000526020600020016000909192909190915090600019169055505b61225c3085612f73565b5060606040519081016040528085815260200182815260200160001515815250600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008760001916600019168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff02191690831515021790555090505084600019168673ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd8684604051808381526020018281526020019250505060405180910390a36001915050949350505050565b600042600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000846000191660001916815260200190815260200160002060010154111580156124465750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836000191660001916815260200190815260200160002060020160009054906101000a900460ff16155b156124aa57600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083600019166000191681526020019081526020016000206000015490505b92915050565b600160189054906101000a900460ff1681565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000836000191660001916815260200190815260200160002060020160009054906101000a900460ff16151561259357600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083600019166000191681526020019081526020016000206000015490505b92915050565b6000808273ffffffffffffffffffffffffffffffffffffffff16141515156125c057600080fd5b600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60026020528160005260406000208181548110151561262257fe5b90600052602060002001600091509150505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561269357600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601481819054906101000a900463ffffffff168092919060010191906101000a81548163ffffffff021916908363ffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f5c486528ec3e3f0ea91181cff8116f02bfa350e03b8b6f12e00765adbb5af85c60405160405180910390a3565b6000600160189054906101000a900460ff1615151561282f57600080fd5b600061283b33856124c3565b116040805190810160405280601081526020017f4e6f20746f6b656e73206c6f636b65640000000000000000000000000000000081525090151561291a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156128df5780820151818401526020810190506128c4565b50505050905090810190601f16801561290c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506129253083612f73565b5061299482600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000866000191660001916815260200190815260200160002060000154613d3290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085600019166000191681526020019081526020016000206000018190555082600019163373ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000876000191660001916815260200190815260200160002060000154600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000886000191660001916815260200190815260200160002060010154604051808381526020018281526020019250505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612b6957600080fd5b600160189054906101000a900460ff16151515612b8557600080fd5b60018060186101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612c2a57600080fd5b600160149054906101000a900463ffffffff16905090565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612cd85780601f10612cad57610100808354040283529160200191612cd8565b820191906000526020600020905b815481529060010190602001808311612cbb57829003601f168201915b505050505081565b6000808273ffffffffffffffffffffffffffffffffffffffff1614151515612d0757600080fd5b600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612dac57600080fd5b82600754019050600660009054906101000a900460ff1660ff16600a0a6402540be400028111151515612e6d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001807f45524332303a20657863656564206d6178696d756d20746f74616c207375707081526020017f6c7900000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b8060078190555082600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a36001915050919050565b6000600160189054906101000a900460ff16151515612f9157600080fd5b612f9c338484613947565b905092915050565b6000600160189054906101000a900460ff16151515612fc257600080fd5b6000612fce33856124c3565b116040805190810160405280601081526020017f4e6f20746f6b656e73206c6f636b6564000000000000000000000000000000008152509015156130ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015613072578082015181840152602081019050613057565b50505050905090810190601f16801561309f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5061311c82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000866000191660001916815260200190815260200160002060010154613d3290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085600019166000191681526020019081526020016000206001018190555082600019163373ffffffffffffffffffffffffffffffffffffffff167fea90ef40963535482537f0689e05cb8d259e459ebd21530e826702294d0eafdd600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000876000191660001916815260200190815260200160002060000154600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000886000191660001916815260200190815260200160002060010154604051808381526020018281526020019250505060405180910390a36001905092915050565b600080600090505b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156133695761335a61334b84600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110151561333b57fe5b9060005260206000200154612373565b83613d3290919063ffffffff16565b9150808060010191505061329e565b50919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160189054906101000a900460ff161515156133b657600080fd5b6133c08484610eb5565b1561355f57600115158473ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338630876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b838110156134be5780820151818401526020810190506134a3565b50505050905090810190601f1680156134eb5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b15801561350d57600080fd5b505af1158015613521573d6000803e3d6000fd5b505050506040513d602081101561353757600080fd5b8101908080519060200190929190505050151514151561355657600080fd5b60019050613564565b600090505b9392505050565b6003602052816000526040600020602052806000526040600020600091509150508060000154908060010154908060020160009054906101000a900460ff16905083565b6000808373ffffffffffffffffffffffffffffffffffffffff16141515156135d657600080fd5b60008273ffffffffffffffffffffffffffffffffffffffff16141515156135fc57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148061366157503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b151561366c57600080fd5b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000808273ffffffffffffffffffffffffffffffffffffffff161415151561371857600080fd5b600b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156137bc57600080fd5b81600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fd16a7a4ba83c78a07676c543502e8155f633ecd3c35abb1da51bcbf129758b0f8383604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a16001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156138e757600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600082821115151561393c57600080fd5b818303905092915050565b6000808373ffffffffffffffffffffffffffffffffffffffff161415151561396e57600080fd5b81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156139bc57600080fd5b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515613a1557600080fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515613a6e57600080fd5b613ac082600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461392b90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613b5582600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613d3290919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613bea82600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613d3290919063ffffffff16565b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613c7f82600b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613d3290919063ffffffff16565b600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60008183019050828110151515613d4857600080fd5b929150505600a165627a7a7230582096f55882520513a176d7b8ec36be1be518898173eb68e969035be2f91e10c5f50029

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

0000000000000000000000000000000000000000000000000000000165a0bc00000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000003444f4700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003444f470000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _totalSupply_ (uint256): 6000000000
Arg [1] : _name (string): DOG
Arg [2] : _symbol (string): DOG
Arg [3] : _decimals (uint8): 18

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000165a0bc00
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [5] : 444f470000000000000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 444f470000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

7621:10189:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17791:8;;;7749:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7749:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7749:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9796:411;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9796:411:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14976:253;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14976:253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1841:223;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1841:223:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8848:123;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8848:123:0;;;;;;;;;;;;;;;;;;;;;;;10215:349;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10215:349:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13270:819;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13270:819:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16784:652;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16784:652:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7774:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7774:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;3656:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3656:95:0;;;;;;12207:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12207:203:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12859:402;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12859:402:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15237:298;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15237:298:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14097:639;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14097:639:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16485:291;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16485:291:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3392:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3392:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;14744:224;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14744:224:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10572:200;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10572:200:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3957:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3957:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2072:275;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2072:275:0;;;;;;15989:488;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15989:488:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3557:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3557:93:0;;;;;;1685:148;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1685:148:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7722:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7722:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7722:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10780:195;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10780:195:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12418:433;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12418:433:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9586:202;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9586:202:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15544:437;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15544:437:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17444:301;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17444:301:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1563:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1563:114:0;;;;;;;;;;;;;;;;;;;;;;;;;;;11528:398;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11528:398:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4303:63;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4303:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11189:331;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11189:331:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10983:198;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10983:198:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11934:265;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11934:265:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1420:135;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1420:135:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7749:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9796:411::-;9923:12;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;9974:3;9962:8;:15;;;;9953:25;;;;;;;;9998:13;:25;10012:10;9998:25;;;;;;;;;;;;;;;;;;;;;;;;;9997:26;9989:35;;;;;;;;10044:13;:23;10058:8;10044:23;;;;;;;;;;;;;;;;;;;;;;;;;10043:24;10035:33;;;;;;;;10113:6;10081:7;:19;10089:10;10081:19;;;;;;;;;;;;;;;:29;10101:8;10081:29;;;;;;;;;;;;;;;:38;;;;10158:8;10137:38;;10146:10;10137:38;;;10168:6;10137:38;;;;;;;;;;;;;;;;;;10195:4;10188:11;;9796:411;;;;:::o;14976:253::-;15097:14;15165:5;15133:6;:11;15140:3;15133:11;;;;;;;;;;;;;;;:20;15145:7;15133:20;;;;;;;;;;;;;;;;;:29;;;:37;15129:92;;;15194:6;:11;15201:3;15194:11;;;;;;;;;;;;;;;:20;15206:7;15194:20;;;;;;;;;;;;;;;;;:27;;;15185:36;;15129:92;14976:253;;;;;:::o;1841:223::-;1918:4;1971:5;;;;;;;;;;;1957:19;;:10;:19;;;:58;;;;2007:8;;;;;;;;;;;1993:22;;:10;:22;;;1957:58;1935:81;;;;;;;;2054:1;2034:22;;:8;;;;;;;;;;;:22;;;;2027:29;;1841:223;:::o;8848:123::-;8919:7;8951:12;;8944:19;;8848:123;:::o;10215:349::-;10366:12;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;10405:13;:25;10419:10;10405:25;;;;;;;;;;;;;;;;;;;;;;;;;10404:26;10396:35;;;;;;;;10471:38;10502:6;10471:7;:14;10479:5;10471:14;;;;;;;;;;;;;;;:26;10486:10;10471:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;10442:7;:14;10450:5;10442:14;;;;;;;;;;;;;;;:26;10457:10;10442:26;;;;;;;;;;;;;;;:67;;;;10527:29;10537:5;10544:3;10549:6;10527:9;:29::i;:::-;10520:36;;10215:349;;;;;:::o;13270:819::-;13423:4;13445:18;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;13466:14;13474:5;13466:3;:7;;:14;;;;:::i;:::-;13445:35;;13698:1;13661:33;13674:10;13686:7;13661:12;:33::i;:::-;:38;13701:14;;;;;;;;;;;;;;;;;;13653:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;13653:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13746:1;13735:7;:12;;13749:11;;;;;;;;;;;;;;;;;;13727:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;13727:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13816:1;13778:6;:18;13785:10;13778:18;;;;;;;;;;;;;;;:27;13797:7;13778:27;;;;;;;;;;;;;;;;;:34;;;:39;13774:94;;;13832:10;:22;13843:10;13832:22;;;;;;;;;;;;;;;13860:7;13832:36;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;13832:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;13774:94;13881:32;13898:4;13905:7;13881:8;:32::i;:::-;;13956:37;;;;;;;;;13966:7;13956:37;;;;13975:10;13956:37;;;;13987:5;13956:37;;;;;13926:6;:18;13933:10;13926:18;;;;;;;;;;;;;;;:27;13945:7;13926:27;;;;;;;;;;;;;;;;;:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14030:7;14011:48;;;14018:10;14011:48;;;14039:7;14048:10;14011:48;;;;;;;;;;;;;;;;;;;;;;;;14077:4;14070:11;;13270:819;;;;;;:::o;16784:652::-;16870:24;16912:20;16950:9;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;16962:1;16950:13;;16945:396;16969:10;:15;16980:3;16969:15;;;;;;;;;;;;;;;:22;;;;16965:1;:26;16945:396;;;17028:41;17045:3;17050:10;:15;17061:3;17050:15;;;;;;;;;;;;;;;17066:1;17050:18;;;;;;;;;;;;;;;;;;17028:16;:41::i;:::-;17013:56;;17103:1;17088:12;:16;17084:246;;;17144:34;17165:12;17144:16;:20;;:34;;;;:::i;:::-;17125:53;;17239:4;17197:6;:11;17204:3;17197:11;;;;;;;;;;;;;;;:31;17209:10;:15;17220:3;17209:15;;;;;;;;;;;;;;;17225:1;17209:18;;;;;;;;;;;;;;;;;;17197:31;;;;;;;;;;;;;;;;;:39;;;:46;;;;;;;;;;;;;;;;;;17281:10;:15;17292:3;17281:15;;;;;;;;;;;;;;;17297:1;17281:18;;;;;;;;;;;;;;;;;;17267:47;;;17276:3;17267:47;;;17301:12;17267:47;;;;;;;;;;;;;;;;;;17084:246;16993:3;;;;;;;16945:396;;;17376:1;17357:16;:20;17353:75;;;17392:4;:13;;;17406:3;17411:16;17392:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17392:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17392:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17392:36:0;;;;;;;;;;;;;;;;;17353:75;16784:652;;;;;:::o;7774:21::-;;;;;;;;;;;;;:::o;3656:95::-;1386:5;;;;;;;;;;;1372:19;;:10;:19;;;1364:28;;;;;;;;3530:6;;;;;;;;;;;3522:15;;;;;;;;3719:5;3710:6;;:14;;;;;;;;;;;;;;;;;;3736:9;;;;;;;;;;3656:95::o;12207:203::-;12308:11;12357:3;12345:8;:15;;;;12337:24;;;;;;;;12379:13;:23;12393:8;12379:23;;;;;;;;;;;;;;;;;;;;;;;;;12372:30;;12207:203;;;:::o;12859:402::-;12958:12;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;13021:6;12997:8;:20;13006:10;12997:20;;;;;;;;;;;;;;;;:30;;12988:40;;;;;;;;13048:13;:25;13062:10;13048:25;;;;;;;;;;;;;;;;;;;;;;;;;13047:26;13039:35;;;;;;;;13108:32;13133:6;13108:8;:20;13117:10;13108:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;13085:8;:20;13094:10;13085:20;;;;;;;;;;;;;;;:55;;;;13167:6;13151:12;;:22;;;;;;;;;;;13220:1;13191:40;;13200:10;13191:40;;;13224:6;13191:40;;;;;;;;;;;;;;;;;;13249:4;13242:11;;12859:402;;;:::o;15237:298::-;15322:14;15395:9;15363:14;15373:3;15363:9;:14::i;:::-;15354:23;;15407:1;15395:13;;15390:138;15414:10;:15;15425:3;15414:15;;;;;;;;;;;;;;;:22;;;;15410:1;:26;15390:138;;;15467:49;15478:37;15491:3;15496:10;:15;15507:3;15496:15;;;;;;;;;;;;;;;15512:1;15496:18;;;;;;;;;;;;;;;;;;15478:12;:37::i;:::-;15467:6;:10;;:49;;;;:::i;:::-;15458:58;;15438:3;;;;;;;15390:138;;;15237:298;;;;:::o;14097:639::-;14242:4;14264:18;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;14285:14;14293:5;14285:3;:7;;:14;;;;:::i;:::-;14264:35;;14373:1;14343:26;14356:3;14361:7;14343:12;:26::i;:::-;:31;14376:14;;;;;;;;;;;;;;;;;;14335:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;14335:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14421:1;14410:7;:12;;14424:11;;;;;;;;;;;;;;;;;;14402:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;14402:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14484:1;14453:6;:11;14460:3;14453:11;;;;;;;;;;;;;;;:20;14465:7;14453:20;;;;;;;;;;;;;;;;;:27;;;:32;14449:80;;;14500:10;:15;14511:3;14500:15;;;;;;;;;;;;;;;14521:7;14500:29;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;14500:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;14449:80;14542:32;14559:4;14566:7;14542:8;:32::i;:::-;;14610:37;;;;;;;;;14620:7;14610:37;;;;14629:10;14610:37;;;;14641:5;14610:37;;;;;14587:6;:11;14594:3;14587:11;;;;;;;;;;;;;;;:20;14599:7;14587:20;;;;;;;;;;;;;;;;;:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14677:7;14665:41;;;14672:3;14665:41;;;14686:7;14695:10;14665:41;;;;;;;;;;;;;;;;;;;;;;;;14724:4;14717:11;;14097:639;;;;;;;:::o;16485:291::-;16589:14;16658:3;16625:6;:11;16632:3;16625:11;;;;;;;;;;;;;;;:20;16637:7;16625:20;;;;;;;;;;;;;;;;;:29;;;:36;;:69;;;;;16666:6;:11;16673:3;16666:11;;;;;;;;;;;;;;;:20;16678:7;16666:20;;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;16665:29;16625:69;16621:147;;;16741:6;:11;16748:3;16741:11;;;;;;;;;;;;;;;:20;16753:7;16741:20;;;;;;;;;;;;;;;;;:27;;;16732:36;;16621:147;16485:291;;;;:::o;3392:26::-;;;;;;;;;;;;;:::o;14744:224::-;14844:14;14881:6;:11;14888:3;14881:11;;;;;;;;;;;;;;;:20;14893:7;14881:20;;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;14880:29;14876:84;;;14933:6;:11;14940:3;14933:11;;;;;;;;;;;;;;;:20;14945:7;14933:20;;;;;;;;;;;;;;;;;:27;;;14924:36;;14876:84;14744:224;;;;:::o;10572:200::-;10667:17;10722:3;10710:8;:15;;;;10702:24;;;;;;;;10746:8;:18;10755:8;10746:18;;;;;;;;;;;;;;;;10739:25;;10572:200;;;:::o;3957:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2072:275::-;2154:8;;;;;;;;;;;2140:22;;:10;:22;;;2132:31;;;;;;;;2184:8;;;;;;;;;;;2176:5;;:16;;;;;;;;;;;;;;;;;;2222:1;2203:8;;:21;;;;;;;;;;;;;;;;;;2235:13;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2320:8;;;;;;;;;;;2268:71;;2300:5;;;;;;;;;;;2268:71;;;;;;;;;;;;2072:275::o;15989:488::-;16108:4;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;16174:1;16138:33;16151:10;16163:7;16138:12;:33::i;:::-;:37;16177:10;;;;;;;;;;;;;;;;;;16130:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;16130:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16199:32;16216:4;16223:7;16199:8;:32::i;:::-;;16281:47;16320:7;16281:6;:18;16288:10;16281:18;;;;;;;;;;;;;;;:27;16300:7;16281:27;;;;;;;;;;;;;;;;;:34;;;:38;;:47;;;;:::i;:::-;16244:6;:18;16251:10;16244:18;;;;;;;;;;;;;;;:27;16263:7;16244:27;;;;;;;;;;;;;;;;;:34;;:84;;;;16365:7;16346:101;;;16353:10;16346:101;;;16374:6;:18;16381:10;16374:18;;;;;;;;;;;;;;;:27;16393:7;16374:27;;;;;;;;;;;;;;;;;:34;;;16410:6;:18;16417:10;16410:18;;;;;;;;;;;;;;;:27;16429:7;16410:27;;;;;;;;;;;;;;;;;:36;;;16346:101;;;;;;;;;;;;;;;;;;;;;;;;16465:4;16458:11;;15989:488;;;;:::o;3557:93::-;1386:5;;;;;;;;;;;1372:19;;:10;:19;;;1364:28;;;;;;;;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;3621:4;3612:6;;:13;;;;;;;;;;;;;;;;;;3637:7;;;;;;;;;;3557:93::o;1685:148::-;1781:6;1386:5;;;;;;;;;;;1372:19;;:10;:19;;;1364:28;;;;;;;;1812:13;;;;;;;;;;;1805:20;;1685:148;:::o;7722:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;10780:195::-;10874:14;10926:3;10914:8;:15;;;;10906:24;;;;;;;;10950:7;:17;10958:8;10950:17;;;;;;;;;;;;;;;;10943:24;;10780:195;;;:::o;12418:433::-;12514:12;12544:17;1386:5;;;;;;;;;;;1372:19;;:10;:19;;;1364:28;;;;;;;;12579:6;12564:12;;:21;12544:41;;12649:8;;;;;;;;;;;12641:17;;12636:2;:22;8131:11;12617:41;12604:9;:54;;12596:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12725:9;12710:12;:24;;;;12764:6;12745:8;:15;12754:5;;;;;;;;;;;12745:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;12807:5;;;;;;;;;;;12786:35;;12803:1;12786:35;;;12814:6;12786:35;;;;;;;;;;;;;;;;;;12839:4;12832:11;;12418:433;;;;:::o;9586:202::-;9709:12;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;9746:34;9756:10;9768:3;9773:6;9746:9;:34::i;:::-;9739:41;;9586:202;;;;:::o;15544:437::-;15653:4;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;15719:1;15683:33;15696:10;15708:7;15683:12;:33::i;:::-;:37;15722:10;;;;;;;;;;;;;;;;;;15675:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;15675:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15785:47;15826:5;15785:6;:18;15792:10;15785:18;;;;;;;;;;;;;;;:27;15804:7;15785:27;;;;;;;;;;;;;;;;;:36;;;:40;;:47;;;;:::i;:::-;15746:6;:18;15753:10;15746:18;;;;;;;;;;;;;;;:27;15765:7;15746:27;;;;;;;;;;;;;;;;;:36;;:86;;;;15869:7;15850:101;;;15857:10;15850:101;;;15878:6;:18;15885:10;15878:18;;;;;;;;;;;;;;;:27;15897:7;15878:27;;;;;;;;;;;;;;;;;:34;;;15914:6;:18;15921:10;15914:18;;;;;;;;;;;;;;;:27;15933:7;15914:27;;;;;;;;;;;;;;;;;:36;;;15850:101;;;;;;;;;;;;;;;;;;;;;;;;15969:4;15962:11;;15544:437;;;;:::o;17444:301::-;17534:24;17581:9;17593:1;17581:13;;17576:162;17600:10;:15;17611:3;17600:15;;;;;;;;;;;;;;;:22;;;;17596:1;:26;17576:162;;;17663:63;17684:41;17701:3;17706:10;:15;17717:3;17706:15;;;;;;;;;;;;;;;17722:1;17706:18;;;;;;;;;;;;;;;;;;17684:16;:41::i;:::-;17663:16;:20;;:63;;;;:::i;:::-;17644:82;;17624:3;;;;;;;17576:162;;;17444:301;;;;:::o;1563:114::-;1632:7;1664:5;;;;;;;;;;;1657:12;;1563:114;:::o;11528:398::-;11684:12;3466:6;;;;;;;;;;;3465:7;3457:16;;;;;;;;11718:25;11726:8;11736:6;11718:7;:25::i;:::-;11714:182;;;11853:4;11768:89;;11791:8;11768:48;;;11817:10;11829:6;11837:4;11843:5;11768:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;11768:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11768:81:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11768:81:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11768:81:0;;;;;;;;;;;;;;;;:89;;;11760:98;;;;;;;;11880:4;11873:11;;;;11714:182;11913:5;11906:12;;3480:1;11528:398;;;;;:::o;4303:63::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11189:331::-;11309:17;11362:3;11352:6;:13;;;;11344:22;;;;;;;;11397:3;11385:8;:15;;;;11377:24;;;;;;;;11430:10;11420:20;;:6;:20;;;:46;;;;11456:10;11444:22;;:8;:22;;;11420:46;11412:55;;;;;;;;11487:7;:15;11495:6;11487:15;;;;;;;;;;;;;;;:25;11503:8;11487:25;;;;;;;;;;;;;;;;11480:32;;11189:331;;;;:::o;10983:198::-;11078:15;11131:3;11119:8;:15;;;;11111:24;;;;;;;;11155:8;:18;11164:8;11155:18;;;;;;;;;;;;;;;;11148:25;;10983:198;;;:::o;11934:265::-;12060:12;1386:5;;;;;;;;;;;1372:19;;:10;:19;;;1364:28;;;;;;;;12116:6;12090:13;:23;12104:8;12090:23;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;12138:31;12152:8;12162:6;12138:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12187:4;12180:11;;11934:265;;;;:::o;1420:135::-;1386:5;;;;;;;;;;;1372:19;;:10;:19;;;1364:28;;;;;;;;1538:9;1527:8;;:20;;;;;;;;;;;;;;;;;;1420:135;:::o;2559:173::-;2662:9;2702:1;2697;:6;;2689:15;;;;;;;;2723:1;2719;:5;2715:9;;2559:173;;;;:::o;8979:599::-;9106:12;9152:3;9145;:10;;;;9136:20;;;;;;;;9195:6;9176:8;:15;9185:5;9176:15;;;;;;;;;;;;;;;;:25;;9167:35;;;;;;;;9222:13;:20;9236:5;9222:20;;;;;;;;;;;;;;;;;;;;;;;;;9221:21;9213:30;;;;;;;;9263:13;:18;9277:3;9263:18;;;;;;;;;;;;;;;;;;;;;;;;;9262:19;9254:28;;;;;;;;9313:27;9333:6;9313:8;:15;9322:5;9313:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9295:8;:15;9304:5;9295:15;;;;;;;;;;;;;;;:45;;;;9367:25;9385:6;9367:8;:13;9376:3;9367:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;9351:8;:13;9360:3;9351:13;;;;;;;;;;;;;;;:41;;;;9420:24;9437:6;9420:7;:12;9428:3;9420:12;;;;;;;;;;;;;;;;:16;;:24;;;;:::i;:::-;9405:7;:12;9413:3;9405:12;;;;;;;;;;;;;;;:39;;;;9473:27;9493:6;9473:8;:15;9482:5;9473:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9455:8;:15;9464:5;9455:15;;;;;;;;;;;;;;;:45;;;;9534:3;9518:28;;9527:5;9518:28;;;9539:6;9518:28;;;;;;;;;;;;;;;;;;9566:4;9559:11;;8979:599;;;;;:::o;2378:173::-;2481:9;2516:1;2512;:5;2508:9;;2541:1;2536;:6;;2528:15;;;;;;;;2378:173;;;;:::o

Swarm Source

bzzr://96f55882520513a176d7b8ec36be1be518898173eb68e969035be2f91e10c5f5

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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