ETH Price: $3,851.62 (-0.27%)

Contract

0x46cf3EBA5bD07fd5C171749928020e225f0F9882
 

Overview

ETH Balance

0.046486337766014241 ETH

Eth Value

$179.05 (@ $3,851.62/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Distribute54458482018-04-15 16:06:452436 days ago1523808405IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458462018-04-15 16:06:202436 days ago1523808380IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458382018-04-15 16:03:202436 days ago1523808200IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458332018-04-15 16:01:482436 days ago1523808108IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458302018-04-15 15:59:352436 days ago1523807975IN
0x46cf3EBA...25f0F9882
0 ETH0.000404925
Distribute54458282018-04-15 15:59:032436 days ago1523807943IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458242018-04-15 15:57:562436 days ago1523807876IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458212018-04-15 15:57:072436 days ago1523807827IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458162018-04-15 15:56:202436 days ago1523807780IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458142018-04-15 15:55:502436 days ago1523807750IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458122018-04-15 15:54:502436 days ago1523807690IN
0x46cf3EBA...25f0F9882
0 ETH0.000404925
Distribute54458092018-04-15 15:54:102436 days ago1523807650IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54458022018-04-15 15:52:302436 days ago1523807550IN
0x46cf3EBA...25f0F9882
0 ETH0.000280185
Distribute54458002018-04-15 15:52:162436 days ago1523807536IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457912018-04-15 15:49:252436 days ago1523807365IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457802018-04-15 15:47:492436 days ago1523807269IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457772018-04-15 15:47:112436 days ago1523807231IN
0x46cf3EBA...25f0F9882
0 ETH0.000404925
Distribute54457762018-04-15 15:46:462436 days ago1523807206IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457682018-04-15 15:44:542436 days ago1523807094IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457602018-04-15 15:42:232436 days ago1523806943IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457542018-04-15 15:40:282436 days ago1523806828IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457482018-04-15 15:39:032436 days ago1523806743IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457452018-04-15 15:37:442436 days ago1523806664IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457432018-04-15 15:37:092436 days ago1523806629IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
Distribute54457392018-04-15 15:36:082436 days ago1523806568IN
0x46cf3EBA...25f0F9882
0 ETH0.000279925
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
54458482018-04-15 16:06:452436 days ago1523808405
0x46cf3EBA...25f0F9882
0.00268909 ETH
54458462018-04-15 16:06:202436 days ago1523808380
0x46cf3EBA...25f0F9882
0.00000539 ETH
54458382018-04-15 16:03:202436 days ago1523808200
0x46cf3EBA...25f0F9882
0.00003676 ETH
54458332018-04-15 16:01:482436 days ago1523808108
0x46cf3EBA...25f0F9882
0.00000004 ETH
54458302018-04-15 15:59:352436 days ago1523807975
0x46cf3EBA...25f0F9882
0.00009803 ETH
54458282018-04-15 15:59:032436 days ago1523807943
0x46cf3EBA...25f0F9882
0.01667998 ETH
54458242018-04-15 15:57:562436 days ago1523807876
0x46cf3EBA...25f0F9882
0.00009803 ETH
54458212018-04-15 15:57:072436 days ago1523807827
0x46cf3EBA...25f0F9882
0.00153207 ETH
54458162018-04-15 15:56:202436 days ago1523807780
0x46cf3EBA...25f0F9882
0.01587579 ETH
54458142018-04-15 15:55:502436 days ago1523807750
0x46cf3EBA...25f0F9882
0.00000098 ETH
54458122018-04-15 15:54:502436 days ago1523807690
0x46cf3EBA...25f0F9882
0.00238313 ETH
54458092018-04-15 15:54:102436 days ago1523807650
0x46cf3EBA...25f0F9882
0.00197532 ETH
54458022018-04-15 15:52:302436 days ago1523807550
0x46cf3EBA...25f0F9882
0.06352708 ETH
54458002018-04-15 15:52:162436 days ago1523807536
0x46cf3EBA...25f0F9882
0.00261252 ETH
54457912018-04-15 15:49:252436 days ago1523807365
0x46cf3EBA...25f0F9882
0.00083375 ETH
54457802018-04-15 15:47:492436 days ago1523807269
0x46cf3EBA...25f0F9882
0.00069827 ETH
54457772018-04-15 15:47:112436 days ago1523807231
0x46cf3EBA...25f0F9882
0.00073474 ETH
54457762018-04-15 15:46:462436 days ago1523807206
0x46cf3EBA...25f0F9882
0.00057593 ETH
54457682018-04-15 15:44:542436 days ago1523807094
0x46cf3EBA...25f0F9882
0.00097835 ETH
54457602018-04-15 15:42:232436 days ago1523806943
0x46cf3EBA...25f0F9882
0.05927449 ETH
54457542018-04-15 15:40:282436 days ago1523806828
0x46cf3EBA...25f0F9882
0.00015684 ETH
54457482018-04-15 15:39:032436 days ago1523806743
0x46cf3EBA...25f0F9882
0.00326668 ETH
54457452018-04-15 15:37:442436 days ago1523806664
0x46cf3EBA...25f0F9882
0.12408774 ETH
54457432018-04-15 15:37:092436 days ago1523806629
0x46cf3EBA...25f0F9882
0.00012253 ETH
54457392018-04-15 15:36:082436 days ago1523806568
0x46cf3EBA...25f0F9882
0.0208316 ETH
View All Internal Transactions
Loading...
Loading

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

Contract Name:
Distributor

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-12-11
*/

pragma solidity ^0.4.18;


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) {
        uint256 c = a / b;
        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 Owned {
    address public owner;

    function Owned() public {
        owner = msg.sender;
    }

    function withdraw() public onlyOwner {
        owner.transfer(this.balance);
    }

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

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

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

contract Distributor is Owned {

    using SafeMath for uint256;

    ERC20 public token;
    uint256 public eligibleTokens;
    mapping(address => uint256) public distributed;
    uint256 public totalDistributionAmountInWei;

    event Dividend(address holder, uint256 amountDistributed);

    function Distributor(address _targetToken, uint256 _eligibleTokens) public payable {
        require(msg.value > 0);

        token = ERC20(_targetToken);
        assert(_eligibleTokens <= token.totalSupply());
        eligibleTokens = _eligibleTokens;
        totalDistributionAmountInWei = msg.value;
    }

    function percent(uint numerator, uint denominator, uint precision) internal pure returns (uint quotient) {
        uint _numerator = numerator * 10 ** (precision + 1);
        quotient = ((_numerator / denominator) + 5) / 10;
    }

    function distribute(address holder) public onlyOwner returns (uint256 amountDistributed) {
        require(distributed[holder] == 0);

        uint256 holderBalance = token.balanceOf(holder);
        uint256 portion = percent(holderBalance, eligibleTokens, uint256(18));
        amountDistributed = totalDistributionAmountInWei.mul(portion).div(1000000000000000000);

        distributed[holder] = amountDistributed;
        Dividend(holder, amountDistributed);
        holder.transfer(amountDistributed);
    }


}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"eligibleTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"distributed","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"holder","type":"address"}],"name":"distribute","outputs":[{"name":"amountDistributed","type":"uint256"}],"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":"totalDistributionAmountInWei","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_targetToken","type":"address"},{"name":"_eligibleTokens","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"holder","type":"address"},{"indexed":false,"name":"amountDistributed","type":"uint256"}],"name":"Dividend","type":"event"}]

Deployed Bytecode

0x606060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063273a5729146100885780633ccfd60b146100b1578063578bcf35146100c657806363453ae1146101135780638da5cb5b14610160578063a60c8043146101b5578063fc0c546a146101de575b600080fd5b341561009357600080fd5b61009b610233565b6040518082815260200191505060405180910390f35b34156100bc57600080fd5b6100c4610239565b005b34156100d157600080fd5b6100fd600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061030e565b6040518082815260200191505060405180910390f35b341561011e57600080fd5b61014a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610326565b6040518082815260200191505060405180910390f35b341561016b57600080fd5b6101736105ed565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156101c057600080fd5b6101c8610612565b6040518082815260200191505060405180910390f35b34156101e957600080fd5b6101f1610618565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60025481565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561029457600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050151561030c57600080fd5b565b60036020528060005260406000206000915090505481565b60008060003373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561038657600080fd5b6000600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415156103d457600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561049957600080fd5b6102c65a03f115156104aa57600080fd5b5050506040518051905091506104c482600254601261063e565b90506104f5670de0b6b3a76400006104e78360045461067190919063ffffffff16565b6106ac90919063ffffffff16565b925082600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507ff6a7e669306918b018d1eb595a21c8180bdecc0c90847daef23f9cf5fbd4902a8484604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a18373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f1935050505015156105e657600080fd5b5050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60045481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060018301600a0a85029050600a6005858381151561065b57fe5b040181151561066657fe5b049150509392505050565b600080600084141561068657600091506106a5565b828402905082848281151561069757fe5b041415156106a157fe5b8091505b5092915050565b60008082848115156106ba57fe5b04905080915050929150505600a165627a7a723058202ca56dee23845d0849ecc45f95607ccc24f5e7c21b30bb0a290571b77b39be1a0029

Swarm Source

bzzr://2ca56dee23845d0849ecc45f95607ccc24f5e7c21b30bb0a290571b77b39be1a

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.