ETH Price: $3,244.45 (-1.14%)

Contract

0xCf8D63d11B747e9f3238c9dB444B0C24eCd2aF6f
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

> 10 Internal Transactions and 2 Token Transfers found.

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
69126782018-12-19 3:17:262216 days ago1545189446
0xCf8D63d1...4eCd2aF6f
1,036.97786571 ETH
69123342018-12-19 1:55:472216 days ago1545184547
0xCf8D63d1...4eCd2aF6f
980 ETH
69123172018-12-19 1:51:162216 days ago1545184276
0xCf8D63d1...4eCd2aF6f
1 ETH
67942552018-11-29 12:12:362236 days ago1543493556
0xCf8D63d1...4eCd2aF6f
1.4 ETH
66345222018-11-03 7:39:422262 days ago1541230782
0xCf8D63d1...4eCd2aF6f
1.9 ETH
66208562018-11-01 1:36:122264 days ago1541036172
0xCf8D63d1...4eCd2aF6f
3.9 ETH
66208332018-11-01 1:30:132264 days ago1541035813
0xCf8D63d1...4eCd2aF6f
0.1 ETH
66117352018-10-30 13:42:412266 days ago1540906961
0xCf8D63d1...4eCd2aF6f
3.9 ETH
64810232018-10-09 5:50:322287 days ago1539064232
0xCf8D63d1...4eCd2aF6f
1 ETH
64793632018-10-08 23:21:232287 days ago1539040883
0xCf8D63d1...4eCd2aF6f
1 ETH
64236842018-09-29 21:58:312297 days ago1538258311
0xCf8D63d1...4eCd2aF6f
6 ETH
63975872018-09-25 15:23:072301 days ago1537888987
0xCf8D63d1...4eCd2aF6f
7 ETH
58928232018-07-02 14:11:352386 days ago1530540695
0xCf8D63d1...4eCd2aF6f
10 ETH
58693302018-06-28 13:37:362390 days ago1530193056
0xCf8D63d1...4eCd2aF6f
10 ETH
58629402018-06-27 11:19:592391 days ago1530098399
0xCf8D63d1...4eCd2aF6f
3 ETH
58212592018-06-20 7:10:542398 days ago1529478654
0xCf8D63d1...4eCd2aF6f
0.17996648 ETH
57935052018-06-15 13:50:062403 days ago1529070606
0xCf8D63d1...4eCd2aF6f
0.12789923 ETH
56828692018-05-27 0:40:352422 days ago1527381635
0xCf8D63d1...4eCd2aF6f
1.65 ETH
56611562018-05-23 4:21:472426 days ago1527049307
0xCf8D63d1...4eCd2aF6f
0.1 ETH
56526362018-05-21 15:52:312428 days ago1526917951
0xCf8D63d1...4eCd2aF6f
3.6 ETH
56161662018-05-15 5:25:402434 days ago1526361940
0xCf8D63d1...4eCd2aF6f
0.13 ETH
56160642018-05-15 4:57:282434 days ago1526360248
0xCf8D63d1...4eCd2aF6f
0.18 ETH
55956342018-05-11 15:27:002438 days ago1526052420
0xCf8D63d1...4eCd2aF6f
0.71 ETH
55847722018-05-09 17:38:462440 days ago1525887526
0xCf8D63d1...4eCd2aF6f
0.1 ETH
55779942018-05-08 13:07:132441 days ago1525784833  Contract Creation0 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xCf23CC20...1E28F7f3D
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
RefundVault

Compiler Version
v0.4.21+commit.dfe3193c

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-05-08
*/

pragma solidity ^0.4.21;

// File: contracts/math/SafeMath.sol

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {

  /**
  * @dev Multiplies two numbers, throws on overflow.
  */
  function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
    if (a == 0) {
      return 0;
    }
    c = a * b;
    assert(c / a == b);
    return c;
  }

  /**
  * @dev Integer division of two numbers, truncating the quotient.
  */
  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 a / b;
  }

  /**
  * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
  */
  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  /**
  * @dev Adds two numbers, throws on overflow.
  */
  function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
    c = a + b;
    assert(c >= a);
    return c;
  }
}

// File: contracts/ownership/Ownable.sol

/**
 * @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));
    emit OwnershipTransferred(owner, newOwner);
    owner = newOwner;
  }

}

// File: contracts/crowdsale/RefundVault.sol

/**
 * @title RefundVault
 * @dev This contract is used for storing funds while a crowdsale
 * is in progress. Supports refunding the money if crowdsale fails,
 * and forwarding it if crowdsale is successful.
 */
contract RefundVault is Ownable {
  using SafeMath for uint256;

  enum State { Active, Refunding, Closed }

  mapping (address => uint256) public deposited;
  address public wallet;
  State public state;

  event Closed();
  event RefundsEnabled();
  event Refunded(address indexed beneficiary, uint256 weiAmount);

  function RefundVault(address _wallet) public {
    require(_wallet != address(0));
    wallet = _wallet;
    state = State.Active;
  }

  function deposit(address investor) onlyOwner public payable {
    require(state == State.Active);
    deposited[investor] = deposited[investor].add(msg.value);
  }

  function close() onlyOwner public {
    // this is this part that shall be removed, that way if called later it run the wallet transfer in any case
    // require(state == State.Active);
    state = State.Closed;
    emit Closed();
    wallet.transfer(address(this).balance);
  }

  function enableRefunds() onlyOwner public {
    require(state == State.Active);
    state = State.Refunding;
    emit RefundsEnabled();
  }

  function refund(address investor) public {
    require(state == State.Refunding);
    uint256 depositedValue = deposited[investor];
    deposited[investor] = 0;
    investor.transfer(depositedValue);
    emit Refunded(investor, depositedValue);
  }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[],"name":"close","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"wallet","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableRefunds","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":"state","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"deposited","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"},{"constant":false,"inputs":[{"name":"investor","type":"address"}],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"investor","type":"address"}],"name":"refund","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_wallet","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[],"name":"Closed","type":"event"},{"anonymous":false,"inputs":[],"name":"RefundsEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"beneficiary","type":"address"},{"indexed":false,"name":"weiAmount","type":"uint256"}],"name":"Refunded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

Deployed Bytecode

0x6060604052600436106100985763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166343d726d6811461009d578063521eb273146100b25780638c52dc41146100e15780638da5cb5b146100f4578063c19d93fb14610107578063cb13cddb1461013e578063f2fde38b1461016f578063f340fa011461018e578063fa89401a146101a2575b600080fd5b34156100a857600080fd5b6100b06101c1565b005b34156100bd57600080fd5b6100c5610278565b604051600160a060020a03909116815260200160405180910390f35b34156100ec57600080fd5b6100b0610287565b34156100ff57600080fd5b6100c5610318565b341561011257600080fd5b61011a610327565b6040518082600281111561012a57fe5b60ff16815260200191505060405180910390f35b341561014957600080fd5b61015d600160a060020a0360043516610337565b60405190815260200160405180910390f35b341561017a57600080fd5b6100b0600160a060020a0360043516610349565b6100b0600160a060020a03600435166103e4565b34156101ad57600080fd5b6100b0600160a060020a0360043516610468565b60005433600160a060020a039081169116146101dc57600080fd5b6002805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a60405160405180910390a1600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561027657600080fd5b565b600254600160a060020a031681565b60005433600160a060020a039081169116146102a257600080fd5b60006002805460a060020a900460ff16908111156102bc57fe5b146102c657600080fd5b6002805474ff0000000000000000000000000000000000000000191660a060020a1790557f599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b8960405160405180910390a1565b600054600160a060020a031681565b60025460a060020a900460ff1681565b60016020526000908152604090205481565b60005433600160a060020a0390811691161461036457600080fd5b600160a060020a038116151561037957600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a039081169116146103ff57600080fd5b60006002805460a060020a900460ff169081111561041957fe5b1461042357600080fd5b600160a060020a03811660009081526001602052604090205461044c903463ffffffff61051816565b600160a060020a03909116600090815260016020526040902055565b600060016002805460a060020a900460ff169081111561048457fe5b1461048e57600080fd5b50600160a060020a038116600081815260016020526040808220805492905590919082156108fc0290839051600060405180830381858888f1935050505015156104d757600080fd5b81600160a060020a03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d06518260405190815260200160405180910390a25050565b8181018281101561052557fe5b929150505600a165627a7a72305820baff5c547d78d83d4a58e9748f9c4d6a66a1a851de72ca4c72af060ee2214da20029

Swarm Source

bzzr://baff5c547d78d83d4a58e9748f9c4d6a66a1a851de72ca4c72af060ee2214da2

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.