Contract 0x4E8E8eB5A4ED17170B646D33b8EF3E7352585607

 

TxHash Block Age From To Value [TxFee]
0xf153563520344645cca85b995f7b20605d29e7f4b7fa47e89ed12c9b6466b43f72473455 hrs 38 mins ago0x6f8c748059c45062b444610a498d1e3aff72adee IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00151236
0x6c650d7081ad95547ee9d899377aa8e3e7eb6eb5085651973ff8d376c8801c1d72405681 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037745
0xe1494c67a9427242e7de331d6c46e62a0969a784a3cea10c1271e066dfc2442672405521 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0xa94ecde8178c0323ee2cffda17f40c3f0a9751ce72b8e3cafbd54dd591cb15f072405321 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0xeef3397c3aa8cd5267ac3762e63d5dcacf1c1dc4c444a84497b5cb364c98793172405161 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x419fb65acb9b6117ebc31da3d893d03ec6e1cd6ec52fc4542cc130711d43b9ea72405071 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00052681
0x09a9adacd3551c96c21924bc252f93a5c5c19015d2755f29bacefbb1fc7e02c972405001 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x87d306c4e35fd53ac76a6707fce260d5bd0b46f9b2bdd507b280f59d617b1b2372404841 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x733e39aeb56abe51343211a8c9b41fdca236f2074dfb180765ea98dc42d10d6f72404651 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x305882cf7dccd91b410322382b703ea0650ba064aa5635fac35a43a39df0939072404491 day 20 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x37a292aae11dc00aa7583a0dc8771d12b3164982d77c919c2cfbfc0d3f704d2472403741 day 21 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x1477d3baac6387b6a80c9fb41f420de97e7084e7caa1843cb6ff6bc579812ee872403411 day 21 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0xb841a953fdb9ad618c734ba2fd4e60884a170bd367643a9e52d0c9ba0c21ffdf72402921 day 21 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0xb6469066160b472049bde7e30142fb82d9aaf29c5eb532c2fa503d462c1b7c8772402771 day 21 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00052809
0xf424e3a57a4824ed48afbfc22f75b2e3402f1678adebc594e1cd04a8a2a497af72402611 day 21 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00052809
0x16bc47df2275533dff9330d52138ac63a3f1d82daa8fee115446d50f5d288d9372402331 day 22 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x53d86d54b4afade97c809f334079be9e7ae500fd8cbfd24aff8805aeb53f3def72402131 day 22 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x17bd9b47acde3ab1e70112826558d8c6b1aa422ba0dc372f6d2295cf89f1520172401391 day 22 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x0d32a2d4104de28707c4be77d4f631012a2ccdd0113aebc03a9ecc87e7b54ca072401181 day 22 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037745
0xa8389f8023c01c94356742c806bd6cf8be23c9e088154953281b284845cefbd772400951 day 22 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037873
0x0b3287a6e1aa5e7d4d0267bd7847e1459945c795b0f5c9448c1769600e27c8c572399821 day 23 hrs ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00052809
0x76c22ce37aa8c99b1747e367c229770cc22a8bbf0ec1520e46c0ad72ebc44fa672398532 days 2 mins ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00052745
0xdfd3afc0488dcdcc6bc77939e26915ee36910aaacf98f9e0208ac5241cc29cab72398352 days 10 mins ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037745
0x75626c78e63dfa4e47e75e22ca8c4ac2719b06dc7049a5f74406452220d8af5f72397542 days 40 mins ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
0x236ded26d928bde6c482a52d0e74432e4c55bf70b0c1ae042886d87f698eaa8b72397382 days 47 mins ago0x743c5192da021303cd4e47555d275759efa43804 IN  0x4e8e8eb5a4ed17170b646d33b8ef3e73525856070 Ether0.00037809
[ Download CSV Export 

Internal Transactions as a result of Contract Execution

Parent TxHash Block Age From To Value
Warning: The compiled contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity), NestedArrayFunctionCallDecoder (medium-severity) Solidity Compiler Bugs.

Contract Source Code Verified (Exact Match)
Contract Name: MainToken
Compiler Version: v0.4.18+commit.9cf6e910
Optimization Enabled: Yes
Runs (Optimizer):  200


Contract Source Code
pragma solidity ^0.4.18;


/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) public view returns (uint256);
  function transfer(address to, uint256 value) public returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}



/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

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

  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}



/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 */
contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  /**
  * @dev transfer token for a specified address
  * @param _to The address to transfer to.
  * @param _value The amount to be transferred.
  */
  function transfer(address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[msg.sender]);

    // SafeMath.sub will throw if there is not enough balance.
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  /**
  * @dev Gets the balance of the specified address.
  * @param _owner The address to query the the balance of.
  * @return An uint256 representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) public view returns (uint256 balance) {
    return balances[_owner];
  }

}



/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) public view returns (uint256);
  function transferFrom(address from, address to, uint256 value) public returns (bool);
  function approve(address spender, uint256 value) public returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}



/**
 * @title Standard ERC20 token
 *
 * @dev Implementation of the basic standard token.
 * @dev https://github.com/ethereum/EIPs/issues/20
 * @dev Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
 */
contract StandardToken is ERC20, BasicToken {

  mapping (address => mapping (address => uint256)) internal allowed;


  /**
   * @dev Transfer tokens from one address to another
   * @param _from address The address which you want to send tokens from
   * @param _to address The address which you want to transfer to
   * @param _value uint256 the amount of tokens to be transferred
   */
  function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
    require(_to != address(0));
    require(_value <= balances[_from]);
    require(_value <= allowed[_from][msg.sender]);

    balances[_from] = balances[_from].sub(_value);
    balances[_to] = balances[_to].add(_value);
    allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
    Transfer(_from, _to, _value);
    return true;
  }

  /**
   * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
   *
   * Beware that changing an allowance with this method brings the risk that someone may use both the old
   * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
   * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
   * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint256 _value) public returns (bool) {
    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }

  /**
   * @dev Function to check the amount of tokens that an owner allowed to a spender.
   * @param _owner address The address which owns the funds.
   * @param _spender address The address which will spend the funds.
   * @return A uint256 specifying the amount of tokens still available for the spender.
   */
  function allowance(address _owner, address _spender) public view returns (uint256) {
    return allowed[_owner][_spender];
  }

  /**
   * approve should be called when allowed[_spender] == 0. To increment
   * allowed value is better to use this function to avoid 2 calls (and wait until
   * the first transaction is mined)
   * From MonolithDAO Token.sol
   */
  function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
    allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

  function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
    uint oldValue = allowed[msg.sender][_spender];
    if (_subtractedValue > oldValue) {
      allowed[msg.sender][_spender] = 0;
    } else {
      allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
    }
    Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
    return true;
  }

}



/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
  address public owner;


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


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() public {
    owner = msg.sender;
  }


  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }


  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) public onlyOwner {
    require(newOwner != address(0));
    OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}


/**
 * @title SafeERC20
 * @dev Wrappers around ERC20 operations that throw on failure.
 * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract,
 * which allows you to call the safe operations as `token.safeTransfer(...)`, etc.
 */
library SafeERC20 {
  function safeTransfer(ERC20Basic token, address to, uint256 value) internal {
    assert(token.transfer(to, value));
  }

  function safeTransferFrom(ERC20 token, address from, address to, uint256 value) internal {
    assert(token.transferFrom(from, to, value));
  }

  function safeApprove(ERC20 token, address spender, uint256 value) internal {
    assert(token.approve(spender, value));
  }
}



/**
 * @title Mintable token
 * @dev Simple ERC20 Token example, with mintable token creation
 * @dev Issue: * https://github.com/OpenZeppelin/zeppelin-solidity/issues/120
 * Based on code by TokenMarketNet: https://github.com/TokenMarketNet/ico/blob/master/contracts/MintableToken.sol
 */

contract MintableToken is StandardToken, Ownable {
  event Mint(address indexed to, uint256 amount);
  event MintFinished();

  bool public mintingFinished = false;


  modifier canMint() {
    require(!mintingFinished);
    _;
  }

  /**
   * @dev Function to mint tokens
   * @param _to The address that will receive the minted tokens.
   * @param _amount The amount of tokens to mint.
   * @return A boolean that indicates if the operation was successful.
   */
  function mint(address _to, uint256 _amount) onlyOwner canMint public returns (bool) {
    totalSupply = totalSupply.add(_amount);
    balances[_to] = balances[_to].add(_amount);
    Mint(_to, _amount);
    Transfer(address(0), _to, _amount);
    return true;
  }

  /**
   * @dev Function to stop minting new tokens.
   * @return True if the operation was successful.
   */
  function finishMinting() onlyOwner canMint public returns (bool) {
    mintingFinished = true;
    MintFinished();
    return true;
  }
}



contract FreezableToken is StandardToken {
    mapping (address => uint64) internal roots;

    mapping (bytes32 => uint64) internal chains;

    event Freezed(address indexed to, uint64 release, uint amount);
    event Released(address indexed owner, uint amount);

    /**
     * @dev gets summary information about all freeze tokens for the specified address.
     * @param _addr Address of freeze tokens owner.
     */
    function getFreezingSummaryOf(address _addr) public constant returns (uint tokenAmount, uint freezingCount) {
        uint count;
        uint total;
        uint64 release = roots[_addr];
        while (release != 0) {
            count ++;
            total += balanceOf(address(keccak256(toKey(_addr, release))));
            release = chains[toKey(_addr, release)];
        }

        return (total, count);
    }

    /**
     * @dev gets freezing end date and freezing balance for the freezing portion specified by index.
     * @param _addr Address of freeze tokens owner.
     * @param _index Freezing portion index. It ordered by release date descending.
     */
    function getFreezing(address _addr, uint _index) public constant returns (uint64 _release, uint _balance) {
        uint64 release = roots[_addr];
        for (uint i = 0; i < _index; i ++) {
            release = chains[toKey(_addr, release)];
        }
        return (release, balanceOf(address(keccak256(toKey(_addr, release)))));
    }

    /**
     * @dev freeze your tokens to the specified address.
     *      Be careful, gas usage is not deterministic,
     *      and depends on how many freezes _to address already has.
     * @param _to Address to which token will be freeze.
     * @param _amount Amount of token to freeze.
     * @param _until Release date, must be in future.
     */
    function freezeTo(address _to, uint _amount, uint64 _until) public {
        bytes32 currentKey = toKey(_to, _until);
        transfer(address(keccak256(currentKey)), _amount);

        freeze(_to, _until);
        Freezed(_to, _until, _amount);
    }

    /**
     * @dev release first available freezing tokens.
     */
    function releaseOnce() public {
        uint64 head = roots[msg.sender];
        require(head != 0);
        require(uint64(block.timestamp) > head);
        bytes32 currentKey = toKey(msg.sender, head);

        uint64 next = chains[currentKey];

        address currentAddress = address(keccak256(currentKey));
        uint amount = balances[currentAddress];
        delete balances[currentAddress];

        balances[msg.sender] += amount;

        if (next == 0) {
            delete roots[msg.sender];
        }
        else {
            roots[msg.sender] = next;
        }
        Released(msg.sender, amount);
    }

    /**
     * @dev release all available for release freezing tokens. Gas usage is not deterministic!
     * @return how many tokens was released
     */
    function releaseAll() public returns (uint tokens) {
        uint release;
        uint balance;
        (release, balance) = getFreezing(msg.sender, 0);
        while (release != 0 && block.timestamp > release) {
            releaseOnce();
            tokens += balance;
            (release, balance) = getFreezing(msg.sender, 0);
        }
    }

    function toKey(address _addr, uint _release) internal constant returns (bytes32 result) {
        // WISH masc to increase entropy
        result = 0x5749534800000000000000000000000000000000000000000000000000000000;
        assembly {
            result := or(result, mul(_addr, 0x10000000000000000))
            result := or(result, _release)
        }
    }

    function freeze(address _to, uint64 _until) internal {
        require(_until > block.timestamp);
        uint64 head = roots[_to];

        if (head == 0) {
            roots[_to] = _until;
            return;
        }

        bytes32 headKey = toKey(_to, head);
        uint parent;
        bytes32 parentKey;

        while (head != 0 && _until > head) {
            parent = head;
            parentKey = headKey;

            head = chains[headKey];
            headKey = toKey(_to, head);
        }

        if (_until == head) {
            return;
        }

        if (head != 0) {
            chains[toKey(_to, _until)] = head;
        }

        if (parent == 0) {
            roots[_to] = _until;
        }
        else {
            chains[parentKey] = _until;
        }
    }
}

/**
 * @title Burnable Token
 * @dev Token that can be irreversibly burned (destroyed).
 */
contract BurnableToken is StandardToken {

    event Burn(address indexed burner, uint256 value);

    /**
     * @dev Burns a specific amount of tokens.
     * @param _value The amount of token to be burned.
     */
    function burn(uint256 _value) public {
        require(_value > 0);
        require(_value <= balances[msg.sender]);
        // no need to require value <= totalSupply, since that would imply the
        // sender's balance is greater than the totalSupply, which *should* be an assertion failure

        address burner = msg.sender;
        balances[burner] = balances[burner].sub(_value);
        totalSupply = totalSupply.sub(_value);
        Burn(burner, _value);
    }
}



/**
 * @title Pausable
 * @dev Base contract which allows children to implement an emergency stop mechanism.
 */
contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;


  /**
   * @dev Modifier to make a function callable only when the contract is not paused.
   */
  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  /**
   * @dev Modifier to make a function callable only when the contract is paused.
   */
  modifier whenPaused() {
    require(paused);
    _;
  }

  /**
   * @dev called by the owner to pause, triggers stopped state
   */
  function pause() onlyOwner whenNotPaused public {
    paused = true;
    Pause();
  }

  /**
   * @dev called by the owner to unpause, returns to normal state
   */
  function unpause() onlyOwner whenPaused public {
    paused = false;
    Unpause();
  }
}



/**
 * @title TokenTimelock
 * @dev TokenTimelock is a token holder contract that will allow a
 * beneficiary to extract the tokens after a given release time
 */
contract TokenTimelock {
  using SafeERC20 for ERC20Basic;

  // ERC20 basic token contract being held
  ERC20Basic public token;

  // beneficiary of tokens after they are released
  address public beneficiary;

  // timestamp when token release is enabled
  uint64 public releaseTime;

  function TokenTimelock(ERC20Basic _token, address _beneficiary, uint64 _releaseTime) public {
    require(_releaseTime > now);
    token = _token;
    beneficiary = _beneficiary;
    releaseTime = _releaseTime;
  }

  /**
   * @notice Transfers tokens held by timelock to beneficiary.
   */
  function release() public {
    require(now >= releaseTime);

    uint256 amount = token.balanceOf(this);
    require(amount > 0);

    token.safeTransfer(beneficiary, amount);
  }
}



contract FreezableMintableToken is FreezableToken, MintableToken {
    /**
     * @dev Mint the specified amount of token to the specified address and freeze it until the specified date.
     *      Be careful, gas usage is not deterministic,
     *      and depends on how many freezes _to address already has.
     * @param _to Address to which token will be freeze.
     * @param _amount Amount of token to mint and freeze.
     * @param _until Release date, must be in future.
     */
    function mintAndFreeze(address _to, uint _amount, uint64 _until) public onlyOwner {
        bytes32 currentKey = toKey(_to, _until);
        mint(address(keccak256(currentKey)), _amount);

        freeze(_to, _until);
        Freezed(_to, _until, _amount);
    }
}

contract usingConsts {
    uint constant TOKEN_DECIMALS = 18;
    uint8 constant TOKEN_DECIMALS_UINT8 = 18;
    uint constant TOKEN_DECIMAL_MULTIPLIER = 10 ** TOKEN_DECIMALS;

    string constant TOKEN_NAME = "PandroytyToken";
    string constant TOKEN_SYMBOL = "PDRY";
    bool constant PAUSED = true;
    address constant TARGET_USER = 0x8f302c391b2b6fd064ae8257d09a13d9fedde207;
    uint constant START_TIME = 1520730000;
    bool constant CONTINUE_MINTING = true;
}



contract MainToken is usingConsts, FreezableMintableToken, BurnableToken, Pausable {
    function MainToken() {
    }

    function name() constant public returns (string _name) {
        return TOKEN_NAME;
    }

    function symbol() constant public returns (string _symbol) {
        return TOKEN_SYMBOL;
    }

    function decimals() constant public returns (uint8 _decimals) {
        return TOKEN_DECIMALS_UINT8;
    }

    function transferFrom(address _from, address _to, uint256 _value) returns (bool _success) {
        require(!paused);
        return super.transferFrom(_from, _to, _value);
    }

    function transfer(address _to, uint256 _value) returns (bool _success) {
        require(!paused);
        return super.transfer(_to, _value);
    }
}

Contract ABI
[{"constant":true,"inputs":[{"name":"_addr","type":"address"},{"name":"_index","type":"uint256"}],"name":"getFreezing","outputs":[{"name":"_release","type":"uint64"},{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mintingFinished","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"_name","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_until","type":"uint64"}],"name":"mintAndFreeze","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"}],"name":"getFreezingSummaryOf","outputs":[{"name":"tokenAmount","type":"uint256"},{"name":"freezingCount","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":true,"inputs":[],"name":"decimals","outputs":[{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_until","type":"uint64"}],"name":"freezeTo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"releaseAll","outputs":[{"name":"tokens","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"releaseOnce","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finishMinting","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":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"_symbol","type":"string"}],"payable":false,"stateMutability":"view","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":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[],"name":"MintFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"release","type":"uint64"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Freezed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Released","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"},{"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"}]

Contract Creation Code
60606040526005805460a060020a61ffff0219169055341561002057600080fd5b60058054600160a060020a03191633600160a060020a03161790556115a08061004a6000396000f3006060604052600436106101535763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166302d6f730811461015857806305d2035b1461019d57806306fdde03146101c4578063095ea7b31461024e5780630bb2cd6b1461027057806318160ddd146102a15780631cfe699e146102c657806323b872dd146102fd578063313ce567146103255780633be1e9521461034e5780633f4ba83a1461037d57806340c10f191461039057806342966c68146103b25780635be7fde8146103c85780635c975abb146103db57806366188463146103ee57806366a92cda1461041057806370a08231146104235780637d64bcb4146104425780638456cb59146104555780638da5cb5b1461046857806395d89b4114610497578063a9059cbb146104aa578063d73dd623146104cc578063dd62ed3e146104ee578063f2fde38b14610513575b600080fd5b341561016357600080fd5b61017a600160a060020a0360043516602435610532565b60405167ffffffffffffffff909216825260208201526040908101905180910390f35b34156101a857600080fd5b6101b06105da565b604051901515815260200160405180910390f35b34156101cf57600080fd5b6101d76105ea565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156102135780820151838201526020016101fb565b50505050905090810190601f1680156102405780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561025957600080fd5b6101b0600160a060020a036004351660243561062b565b341561027b57600080fd5b61029f600160a060020a036004351660243567ffffffffffffffff60443516610697565b005b34156102ac57600080fd5b6102b4610747565b60405190815260200160405180910390f35b34156102d157600080fd5b6102e5600160a060020a036004351661074d565b60405191825260208201526040908101905180910390f35b341561030857600080fd5b6101b0600160a060020a03600435811690602435166044356107ec565b341561033057600080fd5b610338610819565b60405160ff909116815260200160405180910390f35b341561035957600080fd5b61029f600160a060020a036004351660243567ffffffffffffffff6044351661081e565b341561038857600080fd5b61029f610852565b341561039b57600080fd5b6101b0600160a060020a03600435166024356108d2565b34156103bd57600080fd5b61029f6004356109df565b34156103d357600080fd5b6102b4610aa8565b34156103e657600080fd5b6101b0610b0d565b34156103f957600080fd5b6101b0600160a060020a0360043516602435610b1d565b341561041b57600080fd5b61029f610c17565b341561042e57600080fd5b6102b4600160a060020a0360043516610d9c565b341561044d57600080fd5b6101b0610db7565b341561046057600080fd5b61029f610e42565b341561047357600080fd5b61047b610ec7565b604051600160a060020a03909116815260200160405180910390f35b34156104a257600080fd5b6101d7610ed6565b34156104b557600080fd5b6101b0600160a060020a0360043516602435610f17565b34156104d757600080fd5b6101b0600160a060020a0360043516602435610f42565b34156104f957600080fd5b6102b4600160a060020a0360043581169060243516610fe6565b341561051e57600080fd5b61029f600160a060020a0360043516611011565b600160a060020a038216600090815260036020526040812054819067ffffffffffffffff16815b8481101561059e5760046000610579888567ffffffffffffffff166110ac565b815260208101919091526040016000205467ffffffffffffffff169150600101610559565b816105cd6105b6888567ffffffffffffffff166110ac565b604051908152602001604051908190039020610d9c565b9350935050509250929050565b60055460a060020a900460ff1681565b6105f2611562565b60408051908101604052600e81527f50616e64726f797479546f6b656e0000000000000000000000000000000000006020820152905090565b600160a060020a03338116600081815260026020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b60055460009033600160a060020a039081169116146106b557600080fd5b6106c9848367ffffffffffffffff166110ac565b90506106e781604051908152602001604051908190039020846108d2565b506106f284836110e0565b83600160a060020a03167f2ecd071e4d10ed2221b04636ed0724cce66a873aa98c1a31b4bb0e6846d3aab4838560405167ffffffffffffffff909216825260208201526040908101905180910390a250505050565b60005481565b600160a060020a03811660009081526003602052604081205481908190819067ffffffffffffffff165b67ffffffffffffffff8116156107e2576001909201916107a46105b68767ffffffffffffffff84166110ac565b82019150600460006107c0888467ffffffffffffffff166110ac565b815260208101919091526040016000205467ffffffffffffffff169050610777565b5094909350915050565b60055460009060a860020a900460ff161561080657600080fd5b6108118484846112c4565b949350505050565b601290565b6000610834848367ffffffffffffffff166110ac565b90506106e78160405190815260200160405190819003902084610f17565b60055433600160a060020a0390811691161461086d57600080fd5b60055460a860020a900460ff16151561088557600080fd5b6005805475ff000000000000000000000000000000000000000000191690557f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b60055460009033600160a060020a039081169116146108f057600080fd5b60055460a060020a900460ff161561090757600080fd5b60005461091a908363ffffffff61144616565b6000908155600160a060020a038416815260016020526040902054610945908363ffffffff61144616565b600160a060020a0384166000818152600160205260409081902092909255907f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d41213968859084905190815260200160405180910390a2600160a060020a03831660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405190815260200160405180910390a350600192915050565b60008082116109ed57600080fd5b600160a060020a033316600090815260016020526040902054821115610a1257600080fd5b5033600160a060020a038116600090815260016020526040902054610a379083611455565b600160a060020a03821660009081526001602052604081209190915554610a64908363ffffffff61145516565b600055600160a060020a0381167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca58360405190815260200160405180910390a25050565b6000806000610ab8336000610532565b67ffffffffffffffff909116925090505b8115801590610ad757508142115b15610b0857610ae4610c17565b91820191610af3336000610532565b67ffffffffffffffff90911692509050610ac9565b505090565b60055460a860020a900460ff1681565b600160a060020a03338116600090815260026020908152604080832093861683529290529081205480831115610b7a57600160a060020a033381166000908152600260209081526040808320938816835292905290812055610bb1565b610b8a818463ffffffff61145516565b600160a060020a033381166000908152600260209081526040808320938916835292905220555b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020547f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925915190815260200160405180910390a35060019392505050565b600160a060020a03331660009081526003602052604081205467ffffffffffffffff1690808080841515610c4a57600080fd5b8467ffffffffffffffff164267ffffffffffffffff16111515610c6c57600080fd5b610c80338667ffffffffffffffff166110ac565b600081815260046020526040908190205491955067ffffffffffffffff9091169350849051908152602001604051908190039020600160a060020a038082166000908152600160205260408082208054908390553390931682529020805482019055909250905067ffffffffffffffff83161515610d2457600160a060020a0333166000908152600360205260409020805467ffffffffffffffff19169055610d58565b33600160a060020a03166000908152600360205260409020805467ffffffffffffffff191667ffffffffffffffff85161790555b33600160a060020a03167fb21fb52d5749b80f3182f8c6992236b5e5576681880914484d7f4c9b062e619e8260405190815260200160405180910390a25050505050565b600160a060020a031660009081526001602052604090205490565b60055460009033600160a060020a03908116911614610dd557600080fd5b60055460a060020a900460ff1615610dec57600080fd5b6005805474ff0000000000000000000000000000000000000000191660a060020a1790557fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a150600190565b60055433600160a060020a03908116911614610e5d57600080fd5b60055460a860020a900460ff1615610e7457600080fd5b6005805475ff000000000000000000000000000000000000000000191660a860020a1790557f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b600554600160a060020a031681565b610ede611562565b60408051908101604052600481527f50445259000000000000000000000000000000000000000000000000000000006020820152905090565b60055460009060a860020a900460ff1615610f3157600080fd5b610f3b8383611467565b9392505050565b600160a060020a033381166000908152600260209081526040808320938616835292905290812054610f7a908363ffffffff61144616565b600160a060020a0333811660008181526002602090815260408083209489168084529490915290819020849055919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591905190815260200160405180910390a350600192915050565b600160a060020a03918216600090815260026020908152604080832093909416825291909152205490565b60055433600160a060020a0390811691161461102c57600080fd5b600160a060020a038116151561104157600080fd5b600554600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b6801000000000000000091909102177f57495348000000000000000000000000000000000000000000000000000000001790565b60008080804267ffffffffffffffff8616116110fb57600080fd5b600160a060020a03861660009081526003602052604090205467ffffffffffffffff16935083151561115f57600160a060020a0386166000908152600360205260409020805467ffffffffffffffff191667ffffffffffffffff87161790556112bc565b611173868567ffffffffffffffff166110ac565b92505b67ffffffffffffffff8416158015906111a257508367ffffffffffffffff168567ffffffffffffffff16115b156111d857505060008181526004602052604090205467ffffffffffffffff9081169216816111d186856110ac565b9250611176565b8367ffffffffffffffff168567ffffffffffffffff1614156111f9576112bc565b67ffffffffffffffff841615611253578360046000611222898967ffffffffffffffff166110ac565b81526020810191909152604001600020805467ffffffffffffffff191667ffffffffffffffff929092169190911790555b81151561129257600160a060020a0386166000908152600360205260409020805467ffffffffffffffff191667ffffffffffffffff87161790556112bc565b6000818152600460205260409020805467ffffffffffffffff191667ffffffffffffffff87161790555b505050505050565b6000600160a060020a03831615156112db57600080fd5b600160a060020a03841660009081526001602052604090205482111561130057600080fd5b600160a060020a038085166000908152600260209081526040808320339094168352929052205482111561133357600080fd5b600160a060020a03841660009081526001602052604090205461135c908363ffffffff61145516565b600160a060020a038086166000908152600160205260408082209390935590851681522054611391908363ffffffff61144616565b600160a060020a038085166000908152600160209081526040808320949094558783168252600281528382203390931682529190915220546113d9908363ffffffff61145516565b600160a060020a03808616600081815260026020908152604080832033861684529091529081902093909355908516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a35060019392505050565b600082820183811015610f3b57fe5b60008282111561146157fe5b50900390565b6000600160a060020a038316151561147e57600080fd5b600160a060020a0333166000908152600160205260409020548211156114a357600080fd5b600160a060020a0333166000908152600160205260409020546114cc908363ffffffff61145516565b600160a060020a033381166000908152600160205260408082209390935590851681522054611501908363ffffffff61144616565b600160a060020a0380851660008181526001602052604090819020939093559133909116907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b602060405190810160405260008152905600a165627a7a723058209557be1501da2be788d3d6e3fcd6a17e1cf7e090ef0f9fd33c4c67df23d91ed00029


   Swarm Source:
bzzr://9557be1501da2be788d3d6e3fcd6a17e1cf7e090ef0f9fd33c4c67df23d91ed0
Block Age transaction Difficulty GasUsed Reward
Block Age Uncle Number Difficulty GasUsed Reward
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.