ETH Price: $3,451.54 (-1.17%)
Gas: 12 Gwei

Contract

0x388a037aB169b128E70CF67E1228eCd03F0400F2
 

Overview

ETH Balance

1.65 ETH

Eth Value

$5,695.04 (@ $3,451.54/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Claim53106462018-03-24 2:37:062308 days ago1521859026IN
0x388a037a...03F0400F2
0 ETH0.000114922
Claim47279412017-12-13 22:53:432408 days ago1513205623IN
0x388a037a...03F0400F2
0 ETH0.0012066821
Claim46738172017-12-04 11:01:282417 days ago1512385288IN
0x388a037a...03F0400F2
0 ETH0.000652149
0x6060604046500262017-11-30 12:41:012421 days ago1512045661IN
 Create: DonationSplitter
0 ETH0.003346824

Latest 21 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
53106462018-03-24 2:37:062308 days ago1521859026
0x388a037a...03F0400F2
16.5 ETH
47279412017-12-13 22:53:432408 days ago1513205623
0x388a037a...03F0400F2
11.55 ETH
46738172017-12-04 11:01:282417 days ago1512385288
0x388a037a...03F0400F2
3.3 ETH
46643332017-12-02 20:50:582419 days ago1512247858
0x388a037a...03F0400F2
4.82039 ETH
46642002017-12-02 20:19:042419 days ago1512245944
0x388a037a...03F0400F2
1 ETH
46639822017-12-02 19:24:252419 days ago1512242665
0x388a037a...03F0400F2
0.02161 ETH
46632342017-12-02 16:22:242419 days ago1512231744
0x388a037a...03F0400F2
4 ETH
46631002017-12-02 15:52:002419 days ago1512229920
0x388a037a...03F0400F2
3 ETH
46630892017-12-02 15:50:242419 days ago1512229824
0x388a037a...03F0400F2
1 ETH
46630792017-12-02 15:46:442419 days ago1512229604
0x388a037a...03F0400F2
10 ETH
46630122017-12-02 15:32:082419 days ago1512228728
0x388a037a...03F0400F2
3 ETH
46629992017-12-02 15:28:372419 days ago1512228517
0x388a037a...03F0400F2
3.3 ETH
46617242017-12-02 10:26:382419 days ago1512210398
0x388a037a...03F0400F2
1 ETH
46589412017-12-01 23:35:402420 days ago1512171340
0x388a037a...03F0400F2
0.5 ETH
46588822017-12-01 23:23:032420 days ago1512170583
0x388a037a...03F0400F2
0.05 ETH
46584652017-12-01 21:42:322420 days ago1512164552
0x388a037a...03F0400F2
0.1 ETH
46584382017-12-01 21:34:512420 days ago1512164091
0x388a037a...03F0400F2
0.01 ETH
46580922017-12-01 20:13:592420 days ago1512159239
0x388a037a...03F0400F2
0.1 ETH
46576602017-12-01 18:33:482420 days ago1512153228
0x388a037a...03F0400F2
0.5 ETH
46574022017-12-01 17:33:122420 days ago1512149592
0x388a037a...03F0400F2
0.098 ETH
46500922017-11-30 12:53:562421 days ago1512046436
0x388a037a...03F0400F2
0.5 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DonationSplitter

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-11-30
*/

pragma solidity ^0.4.13;

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

contract SplitPayment {
  using SafeMath for uint256;

  uint256 public totalShares = 0;
  uint256 public totalReleased = 0;

  mapping(address => uint256) public shares;
  mapping(address => uint256) public released;
  address[] public payees;

  /**
   * @dev Constructor
   */
  function SplitPayment(address[] _payees, uint256[] _shares) public {
    require(_payees.length == _shares.length);

    for (uint256 i = 0; i < _payees.length; i++) {
      addPayee(_payees[i], _shares[i]);
    }
  }

  /**
   * @dev Add a new payee to the contract.
   * @param _payee The address of the payee to add.
   * @param _shares The number of shares owned by the payee.
   */
  function addPayee(address _payee, uint256 _shares) internal {
    require(_payee != address(0));
    require(_shares > 0);
    require(shares[_payee] == 0);

    payees.push(_payee);
    shares[_payee] = _shares;
    totalShares = totalShares.add(_shares);
  }

  /**
   * @dev Claim your share of the balance.
   */
  function claim() public {
    address payee = msg.sender;

    require(shares[payee] > 0);

    uint256 totalReceived = this.balance.add(totalReleased);
    uint256 payment = totalReceived.mul(shares[payee]).div(totalShares).sub(released[payee]);

    require(payment != 0);
    require(this.balance >= payment);

    released[payee] = released[payee].add(payment);
    totalReleased = totalReleased.add(payment);

    payee.transfer(payment);
  }
}

contract DonationSplitter is SplitPayment {
    function DonationSplitter (address[] _payees, uint256[] _shares)
        SplitPayment(_payees, _shares)
        public
    {

    }

    // accept ether
    function () public payable {}
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"totalShares","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"claim","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"payees","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"released","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"shares","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalReleased","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_payees","type":"address[]"},{"name":"_shares","type":"uint256[]"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

6060604052600080556000600155341561001857600080fd5b6040516109d53803806109d583398101604052808051820191906020018051820191905050818160008151835114151561005157600080fd5b600090505b82518110156100b7576100aa838281518110151561007057fe5b90602001906020020151838381518110151561008857fe5b906020019060200201516100c16401000000000261054e176401000000009004565b8080600101915050610056565b505050505061029c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156100fd57600080fd5b60008111151561010c57600080fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414151561015a57600080fd5b6004805480600101828161016e919061024b565b9160005260206000209001600084909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506102238160005461022d640100000000026104c1179091906401000000009004565b6000819055505050565b600080828401905083811015151561024157fe5b8091505092915050565b815481835581811511610272578183600052602060002091820191016102719190610277565b5b505050565b61029991905b8082111561029557600081600090555060010161027d565b5090565b90565b61072a806102ab6000396000f300606060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633a98ef391461007a5780634e71d92d146100a357806363037b0c146100b85780639852595c1461011b578063ce7c2ac214610168578063e33b7de3146101b5575b005b341561008557600080fd5b61008d6101de565b6040518082815260200191505060405180910390f35b34156100ae57600080fd5b6100b66101e4565b005b34156100c357600080fd5b6100d9600480803590602001909190505061044c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561012657600080fd5b610152600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061048b565b6040518082815260200191505060405180910390f35b341561017357600080fd5b61019f600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506104a3565b6040518082815260200191505060405180910390f35b34156101c057600080fd5b6101c86104bb565b6040518082815260200191505060405180910390f35b60005481565b60008060003392506000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411151561023a57600080fd5b6102666001543073ffffffffffffffffffffffffffffffffffffffff16316104c190919063ffffffff16565b915061031f600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610311600054610303600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054876104df90919063ffffffff16565b61051a90919063ffffffff16565b61053590919063ffffffff16565b90506000811415151561033157600080fd5b803073ffffffffffffffffffffffffffffffffffffffff16311015151561035757600080fd5b6103a981600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546104c190919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610401816001546104c190919063ffffffff16565b6001819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561044757600080fd5b505050565b60048181548110151561045b57fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915090505481565b60026020528060005260406000206000915090505481565b60015481565b60008082840190508381101515156104d557fe5b8091505092915050565b60008060008414156104f45760009150610513565b828402905082848281151561050557fe5b0414151561050f57fe5b8091505b5092915050565b600080828481151561052857fe5b0490508091505092915050565b600082821115151561054357fe5b818303905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561058a57600080fd5b60008111151561059957600080fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415156105e757600080fd5b600480548060010182816105fb91906106ad565b9160005260206000209001600084909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106a3816000546104c190919063ffffffff16565b6000819055505050565b8154818355818115116106d4578183600052602060002091820191016106d391906106d9565b5b505050565b6106fb91905b808211156106f75760008160009055506001016106df565b5090565b905600a165627a7a72305820e57b776e3fb2bb7fd7c95d22fd36390945048a805809481b62c8e374a1dcb76b0029000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000400000000000000000000000023e0619e5339184cf21ad78a3fede6c4d12bc467000000000000000000000000ef9ab8658f145319e97ce96ecd7b3903b34801280000000000000000000000007cb57b5a97eabe94205c07890be4c1ad31e486a80000000000000000000000009ae80465047dc67876b8f95bd17b187e3a4a482a0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000005

Deployed Bytecode

0x606060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633a98ef391461007a5780634e71d92d146100a357806363037b0c146100b85780639852595c1461011b578063ce7c2ac214610168578063e33b7de3146101b5575b005b341561008557600080fd5b61008d6101de565b6040518082815260200191505060405180910390f35b34156100ae57600080fd5b6100b66101e4565b005b34156100c357600080fd5b6100d9600480803590602001909190505061044c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561012657600080fd5b610152600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061048b565b6040518082815260200191505060405180910390f35b341561017357600080fd5b61019f600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506104a3565b6040518082815260200191505060405180910390f35b34156101c057600080fd5b6101c86104bb565b6040518082815260200191505060405180910390f35b60005481565b60008060003392506000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411151561023a57600080fd5b6102666001543073ffffffffffffffffffffffffffffffffffffffff16316104c190919063ffffffff16565b915061031f600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610311600054610303600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054876104df90919063ffffffff16565b61051a90919063ffffffff16565b61053590919063ffffffff16565b90506000811415151561033157600080fd5b803073ffffffffffffffffffffffffffffffffffffffff16311015151561035757600080fd5b6103a981600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546104c190919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610401816001546104c190919063ffffffff16565b6001819055508273ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050151561044757600080fd5b505050565b60048181548110151561045b57fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915090505481565b60026020528060005260406000206000915090505481565b60015481565b60008082840190508381101515156104d557fe5b8091505092915050565b60008060008414156104f45760009150610513565b828402905082848281151561050557fe5b0414151561050f57fe5b8091505b5092915050565b600080828481151561052857fe5b0490508091505092915050565b600082821115151561054357fe5b818303905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561058a57600080fd5b60008111151561059957600080fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415156105e757600080fd5b600480548060010182816105fb91906106ad565b9160005260206000209001600084909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506106a3816000546104c190919063ffffffff16565b6000819055505050565b8154818355818115116106d4578183600052602060002091820191016106d391906106d9565b5b505050565b6106fb91905b808211156106f75760008160009055506001016106df565b5090565b905600a165627a7a72305820e57b776e3fb2bb7fd7c95d22fd36390945048a805809481b62c8e374a1dcb76b0029

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

000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000400000000000000000000000023e0619e5339184cf21ad78a3fede6c4d12bc467000000000000000000000000ef9ab8658f145319e97ce96ecd7b3903b34801280000000000000000000000007cb57b5a97eabe94205c07890be4c1ad31e486a80000000000000000000000009ae80465047dc67876b8f95bd17b187e3a4a482a0000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000003200000000000000000000000000000000000000000000000000000000000000230000000000000000000000000000000000000000000000000000000000000005

-----Decoded View---------------
Arg [0] : _payees (address[]): 0x23e0619E5339184cF21Ad78a3fEdE6C4D12Bc467,0xEF9ab8658F145319e97ce96ecd7B3903B3480128,0x7cB57B5A97eAbe94205C07890BE4c1aD31E486A8,0x9AE80465047dc67876B8F95bd17B187e3A4a482A
Arg [1] : _shares (uint256[]): 10,50,35,5

-----Encoded View---------------
12 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [3] : 00000000000000000000000023e0619e5339184cf21ad78a3fede6c4d12bc467
Arg [4] : 000000000000000000000000ef9ab8658f145319e97ce96ecd7b3903b3480128
Arg [5] : 0000000000000000000000007cb57b5a97eabe94205c07890be4c1ad31e486a8
Arg [6] : 0000000000000000000000009ae80465047dc67876b8f95bd17b187e3a4a482a
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [8] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000032
Arg [10] : 0000000000000000000000000000000000000000000000000000000000000023
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000005


Swarm Source

bzzr://e57b776e3fb2bb7fd7c95d22fd36390945048a805809481b62c8e374a1dcb76b

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  ]
[ 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.