ETH Price: $2,301.03 (+2.83%)

Contract

0xbAd9B65CFB0c2E89bc9543B86849780Baa52C605
 

Overview

ETH Balance

6.4064455 ETH

Eth Value

$14,741.42 (@ $2,301.03/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
116147472021-01-08 14:54:011338 days ago1610117641
0xbAd9B65C...Baa52C605
12.08499389 ETH
103969362020-07-05 3:13:551526 days ago1593918835
0xbAd9B65C...Baa52C605
2.49082697 ETH
74449552019-03-26 15:19:081992 days ago1553613548
0xbAd9B65C...Baa52C605
15.98290413 ETH
73269262019-03-08 6:12:042010 days ago1552025524
0xbAd9B65C...Baa52C605
2.15082697 ETH
73204482019-03-07 5:59:202011 days ago1551938360
0xbAd9B65C...Baa52C605
108.88490497 ETH
73204342019-03-07 5:56:522011 days ago1551938212
0xbAd9B65C...Baa52C605
21.53439768 ETH
72777762019-02-28 7:14:502018 days ago1551338090
0xbAd9B65C...Baa52C605
62.99082697 ETH
72777692019-02-28 7:12:182018 days ago1551337938
0xbAd9B65C...Baa52C605
7.80332697 ETH
72777572019-02-28 7:07:152018 days ago1551337635
0xbAd9B65C...Baa52C605
11.70957697 ETH
72777442019-02-28 7:02:212018 days ago1551337341
0xbAd9B65C...Baa52C605
235.03355152 ETH
72777232019-02-28 6:57:542018 days ago1551337074
0xbAd9B65C...Baa52C605
23.42832697 ETH
72777132019-02-28 6:53:452018 days ago1551336825
0xbAd9B65C...Baa52C605
35.77207697 ETH
72776772019-02-28 6:41:552018 days ago1551336115
0xbAd9B65C...Baa52C605
19.67832697 ETH
72775722019-02-28 6:00:362018 days ago1551333636
0xbAd9B65C...Baa52C605
60.51699313 ETH
72775582019-02-28 5:56:472018 days ago1551333407
0xbAd9B65C...Baa52C605
16.14984126 ETH
72769432019-02-28 2:31:422019 days ago1551321102
0xbAd9B65C...Baa52C605
14.21582697 ETH
72393352019-02-19 6:58:402027 days ago1550559520
0xbAd9B65C...Baa52C605
19.67832697 ETH
64253232018-09-30 4:23:002170 days ago1538281380
0xbAd9B65C...Baa52C605
2 ETH
63776922018-09-22 9:00:332177 days ago1537606833
0xbAd9B65C...Baa52C605
2 ETH
63069862018-09-10 16:16:542189 days ago1536596214
0xbAd9B65C...Baa52C605
2 ETH
62805692018-09-06 5:47:162193 days ago1536212836
0xbAd9B65C...Baa52C605
2.1 ETH
62694792018-09-04 9:13:412195 days ago1536052421
0xbAd9B65C...Baa52C605
2 ETH
62579812018-09-02 10:52:592197 days ago1535885579
0xbAd9B65C...Baa52C605
2 ETH
62413882018-08-30 15:47:392200 days ago1535644059
0xbAd9B65C...Baa52C605
2.11746024 ETH
62246322018-08-27 19:38:442203 days ago1535398724
0xbAd9B65C...Baa52C605
2 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
RefundVaultWithCommission

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.18;

// File: contracts/math/SafeMath.sol

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

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

}

// File: contracts/modified.crowdsale/RefundVaultWithCommission.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 RefundVaultWithCommission is Ownable {
  using SafeMath for uint256;

  enum State { Active, Refunding, Closed }

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

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

  function RefundVaultWithCommission(address _wallet,address _walletFees) public {
    require(_wallet != address(0));
    require(_walletFees != address(0));
    wallet = _wallet;
    walletFees = _walletFees;
    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 {
    require(state == State.Active);
    state = State.Closed;
    Closed();

    uint256 fees = this.balance.mul(25).div(10000);

    // transfer the fees
    walletFees.transfer(fees);

    //transfer the remaining part
    wallet.transfer(this.balance);
  }

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

  function refund(address investor) public {
    require(state == State.Refunding);
    uint256 depositedValue = deposited[investor];
    deposited[investor] = 0;
    investor.transfer(depositedValue);
    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":true,"inputs":[],"name":"walletFees","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"},{"name":"_walletFees","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"}]

6060604052341561000f57600080fd5b60405160408061070c833981016040528080519190602001805160008054600160a060020a03191633600160a060020a039081169190911790915590925083161515905061005c57600080fd5b600160a060020a038116151561007157600080fd5b60028054600160a060020a03938416600160a060020a031991821617909155600380549290931691161760a060020a60ff0219169055610656806100b66000396000f3006060604052600436106100a35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166343d726d681146100a8578063521eb273146100bd578063666efa0a146100ec5780638c52dc41146100ff5780638da5cb5b14610112578063c19d93fb14610125578063cb13cddb1461015c578063f2fde38b1461018d578063f340fa01146101ac578063fa89401a146101c0575b600080fd5b34156100b357600080fd5b6100bb6101df565b005b34156100c857600080fd5b6100d061031f565b604051600160a060020a03909116815260200160405180910390f35b34156100f757600080fd5b6100d061032e565b341561010a57600080fd5b6100bb61033d565b341561011d57600080fd5b6100d06103ce565b341561013057600080fd5b6101386103dd565b6040518082600281111561014857fe5b60ff16815260200191505060405180910390f35b341561016757600080fd5b61017b600160a060020a03600435166103ed565b60405190815260200160405180910390f35b341561019857600080fd5b6100bb600160a060020a03600435166103ff565b6100bb600160a060020a036004351661049a565b34156101cb57600080fd5b6100bb600160a060020a036004351661051e565b6000805433600160a060020a039081169116146101fb57600080fd5b600060035460a060020a900460ff16600281111561021557fe5b1461021f57600080fd5b6003805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a60405160405180910390a16102ad6127106102a1600160a060020a03301631601963ffffffff6105ce16565b9063ffffffff61060416565b600354909150600160a060020a031681156108fc0282604051600060405180830381858888f1935050505015156102e357600080fd5b600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561031c57600080fd5b50565b600254600160a060020a031681565b600354600160a060020a031681565b60005433600160a060020a0390811691161461035857600080fd5b600060035460a060020a900460ff16600281111561037257fe5b1461037c57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557f599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b8960405160405180910390a1565b600054600160a060020a031681565b60035460a060020a900460ff1681565b60016020526000908152604090205481565b60005433600160a060020a0390811691161461041a57600080fd5b600160a060020a038116151561042f57600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a039081169116146104b557600080fd5b600060035460a060020a900460ff1660028111156104cf57fe5b146104d957600080fd5b600160a060020a038116600090815260016020526040902054610502903463ffffffff61061b16565b600160a060020a03909116600090815260016020526040902055565b6000600160035460a060020a900460ff16600281111561053a57fe5b1461054457600080fd5b50600160a060020a038116600081815260016020526040808220805492905590919082156108fc0290839051600060405180830381858888f19350505050151561058d57600080fd5b81600160a060020a03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d06518260405190815260200160405180910390a25050565b6000808315156105e157600091506105fd565b508282028284828115156105f157fe5b04146105f957fe5b8091505b5092915050565b600080828481151561061257fe5b04949350505050565b6000828201838110156105f957fe00a165627a7a723058203ee748091cf2565862d05c49892f599cf608ceefc485af8b60e709c0c5bb34d100290000000000000000000000000ae599ec3807408680748c517ca43490cd1aa83b000000000000000000000000d4db29b5b05c1a28c3a22049cc092673b7c74fbc

Deployed Bytecode

0x6060604052600436106100a35763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166343d726d681146100a8578063521eb273146100bd578063666efa0a146100ec5780638c52dc41146100ff5780638da5cb5b14610112578063c19d93fb14610125578063cb13cddb1461015c578063f2fde38b1461018d578063f340fa01146101ac578063fa89401a146101c0575b600080fd5b34156100b357600080fd5b6100bb6101df565b005b34156100c857600080fd5b6100d061031f565b604051600160a060020a03909116815260200160405180910390f35b34156100f757600080fd5b6100d061032e565b341561010a57600080fd5b6100bb61033d565b341561011d57600080fd5b6100d06103ce565b341561013057600080fd5b6101386103dd565b6040518082600281111561014857fe5b60ff16815260200191505060405180910390f35b341561016757600080fd5b61017b600160a060020a03600435166103ed565b60405190815260200160405180910390f35b341561019857600080fd5b6100bb600160a060020a03600435166103ff565b6100bb600160a060020a036004351661049a565b34156101cb57600080fd5b6100bb600160a060020a036004351661051e565b6000805433600160a060020a039081169116146101fb57600080fd5b600060035460a060020a900460ff16600281111561021557fe5b1461021f57600080fd5b6003805474ff00000000000000000000000000000000000000001916740200000000000000000000000000000000000000001790557f1cdde67b72a90f19919ac732a437ac2f7a10fc128d28c2a6e525d89ce5cd9d3a60405160405180910390a16102ad6127106102a1600160a060020a03301631601963ffffffff6105ce16565b9063ffffffff61060416565b600354909150600160a060020a031681156108fc0282604051600060405180830381858888f1935050505015156102e357600080fd5b600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561031c57600080fd5b50565b600254600160a060020a031681565b600354600160a060020a031681565b60005433600160a060020a0390811691161461035857600080fd5b600060035460a060020a900460ff16600281111561037257fe5b1461037c57600080fd5b6003805474ff0000000000000000000000000000000000000000191660a060020a1790557f599d8e5a83cffb867d051598c4d70e805d59802d8081c1c7d6dffc5b6aca2b8960405160405180910390a1565b600054600160a060020a031681565b60035460a060020a900460ff1681565b60016020526000908152604090205481565b60005433600160a060020a0390811691161461041a57600080fd5b600160a060020a038116151561042f57600080fd5b600054600160a060020a0380831691167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60005433600160a060020a039081169116146104b557600080fd5b600060035460a060020a900460ff1660028111156104cf57fe5b146104d957600080fd5b600160a060020a038116600090815260016020526040902054610502903463ffffffff61061b16565b600160a060020a03909116600090815260016020526040902055565b6000600160035460a060020a900460ff16600281111561053a57fe5b1461054457600080fd5b50600160a060020a038116600081815260016020526040808220805492905590919082156108fc0290839051600060405180830381858888f19350505050151561058d57600080fd5b81600160a060020a03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d06518260405190815260200160405180910390a25050565b6000808315156105e157600091506105fd565b508282028284828115156105f157fe5b04146105f957fe5b8091505b5092915050565b600080828481151561061257fe5b04949350505050565b6000828201838110156105f957fe00a165627a7a723058203ee748091cf2565862d05c49892f599cf608ceefc485af8b60e709c0c5bb34d10029

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

0000000000000000000000000ae599ec3807408680748c517ca43490cd1aa83b000000000000000000000000d4db29b5b05c1a28c3a22049cc092673b7c74fbc

-----Decoded View---------------
Arg [0] : _wallet (address): 0x0AE599eC3807408680748C517cA43490cd1AA83b
Arg [1] : _walletFees (address): 0xD4db29b5B05c1a28C3A22049cc092673b7C74fbC

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000000ae599ec3807408680748c517ca43490cd1aa83b
Arg [1] : 000000000000000000000000d4db29b5b05c1a28c3a22049cc092673b7c74fbc


Swarm Source

bzzr://3ee748091cf2565862d05c49892f599cf608ceefc485af8b60e709c0c5bb34d1

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.