Contract 0xe933c0Cd9784414d5F278C114904F5A84b396919 1

 
Txn Hash
Method
Block
From
To
Value
0x2c6e76c5c1ba878241e524c3678449ebf188bd0e4ff5e79f6858e809f020c80dIco Buy52016082018-03-05 15:53:131675 days 19 hrs ago0x3090ee894719222dce4d231d735741b2d44f30ba IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.02 Ether0.000164813
0x50dfc3f0015782adad57101d7b9041c1a0d4f2aed83604c60829ea12f2613e3dRegister For ICO52004732018-03-05 11:05:551676 days 23 mins ago0x3090ee894719222dce4d231d735741b2d44f30ba IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.000211074
0x17082272c7b14d2985f0b81fc527e483e076e6f5defc0e98325cba5882038486Ico Buy51788792018-03-01 19:20:421679 days 16 hrs ago0x8f32ca4f43545ef881b239da2fdc9925ee987004 IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.99 Ether0.0014686721
0xc61ddc47d2988fa5aa8dcd119004f37b64cfa24ec52468630363a86367b25e7aRegister For ICO51788592018-03-01 19:16:491679 days 16 hrs ago0x4c556b28a7d62d3b7a84481521308fbb9687f38f IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.0006475121
0xb4a9823de45d00782daa9d29da4ad3ec79b85570eb089e42a60553d099260057Ico Buy51781542018-03-01 16:28:101679 days 19 hrs ago0xaf49394a15bda27b6e579473fa993e13193c5c3e IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.2 Ether0.0011536721
0xfb65073a2ed11695660d14ad1cefb0d9fc3935da3b0229dcb5aa88456ec5db7aIco Buy51771302018-03-01 12:16:431679 days 23 hrs ago0x004923981309b14b6a693d0a739b3f4652dfb0a1 IN  0xe933c0cd9784414d5f278c114904f5a84b3969192.1 Ether0.0011536721
0x456cca5cf0327910a36ac7d37084dd245d934116b3556b88695f274cbf3dab78Ico Buy51768832018-03-01 11:15:471680 days 13 mins ago0xac571d83dc9f753942c744f3e6d4f3a03557a45b IN  0xe933c0cd9784414d5f278c114904f5a84b3969191.774 Ether0.000209813
0x149dd489fc9d41d14f4c5498fa6942da921f1ea2381b61032541c8dc8595ad73Register For ICO51768362018-03-01 11:02:371680 days 26 mins ago0x3090ee894719222dce4d231d735741b2d44f30ba IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.00013753
0x4f9f32a5bfedf48313395ba958394134fa875cb1a6f4cab3dae62d592b6ad31dIco Buy51767612018-03-01 10:43:591680 days 45 mins ago0xac571d83dc9f753942c744f3e6d4f3a03557a45b IN  0xe933c0cd9784414d5f278c114904f5a84b3969191.772 Ether0.000109573
0x95a742110322212b6944bfa6a1b37d173865ca5bac0a1e7f8db4075e59a752e3Ico Buy51765392018-03-01 9:47:301680 days 1 hr ago0x00bbbd750307448049e2060a96b2fd9ff74715d4 IN  0xe933c0cd9784414d5f278c114904f5a84b3969197 Ether0.000139872
0xb186b37ed99414a50b8ac80fa496acb8ec16112d705daff7cbf8eac039a5ac59Ico Buy51764532018-03-01 9:24:541680 days 2 hrs ago0x0011bae4596643c62e5c70984402dd698e7ae5d0 IN  0xe933c0cd9784414d5f278c114904f5a84b3969191.40064469 Ether0.0028674141
0xbc6aac4d6929a37fcf677472e440559932d0b344b91376ecee28813704bd1fb3Register For ICO51762852018-03-01 8:46:301680 days 2 hrs ago0x3090ee894719222dce4d231d735741b2d44f30ba IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.000202923
0xc81cc0a655471ab080f7d72db9f737364053a70cc8d5e98dcece917aa85a2590Ico Buy51720292018-02-28 15:23:201680 days 20 hrs ago0xaf49394a15bda27b6e579473fa993e13193c5c3e IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.71 Ether0.0011536721
0xb92d535ae49ce7fa042fa6b3d73b6f16e4f328196d44ff48c6eb4cff3973d220Register For ICO51593852018-02-26 11:41:291682 days 23 hrs ago0x4c556b28a7d62d3b7a84481521308fbb9687f38f IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.0009625121
0x43115cf3e2b9b8561d9815bca350344ce2bf2eea1b205f347a7490471b63fcd7Ico Buy51388722018-02-22 23:48:351686 days 11 hrs ago0xc898c30b24545a1f069d92b2a6dc45f593bbd2a4 IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.58 Ether0.0014686721
0xeef6c2c0fd2f282c097a1494c136211ea07e7ee60ee942524db5439bf7df6197Ico Buy51388602018-02-22 23:44:371686 days 11 hrs ago0xc898c30b24545a1f069d92b2a6dc45f593bbd2a4 IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.6 Ether0.0010521
0xbab0c8cf2e66ffdbed1b012d575a402bf7a506907462b434ff57eba58a83151bRegister For ICO51388312018-02-22 23:37:101686 days 11 hrs ago0x4c556b28a7d62d3b7a84481521308fbb9687f38f IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.0009625121
0x522f06740e03f3631a0629adeab2d480084c8c10e284b967f6dc230d3ed8d8b6Ico Buy51388212018-02-22 23:33:451686 days 11 hrs ago0xc898c30b24545a1f069d92b2a6dc45f593bbd2a4 IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.58 Ether0.0007670421
0xc39d47bcb2a3a759561ca5d3e04e7b534d81641a0f962046326501f4dd03c41fTransfer51383132018-02-22 21:27:551686 days 14 hrs ago0x3090ee894719222dce4d231d735741b2d44f30ba IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.000037211
0x37ecf628726957872957c107ef8804065342ae155d88ddccc5ef6c811e387e63Ico Buy51377982018-02-22 19:29:411686 days 15 hrs ago0xbc78cb8309fc9a6205c1997176f7079d086c1cce IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.35 Ether0.000164813
0x4ae19b26b51f5f86dcd93f56ea1e481f2c9e17926916538ca5a8d7785004c9dbIco Buy51358472018-02-22 11:26:131687 days 3 mins ago0x004923981309b14b6a693d0a739b3f4652dfb0a1 IN  0xe933c0cd9784414d5f278c114904f5a84b3969192.5 Ether0.0011536721
0xe21ff2929927c9583f76e4aa53d6ffb7bd8ab0bf841d8e6e53efe989ad8b4771Ico Buy51358212018-02-22 11:20:301687 days 8 mins ago0xaf49394a15bda27b6e579473fa993e13193c5c3e IN  0xe933c0cd9784414d5f278c114904f5a84b3969191.99 Ether0.0011536721
0x4c6f1ff72323002d6d8ff0731f9e422a77cab1bd8e1342d483d26bad093bfd51Ico Buy51357882018-02-22 11:13:051687 days 16 mins ago0xaf49394a15bda27b6e579473fa993e13193c5c3e IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.1 Ether0.0014686721
0x9426fa782cec0b862a500236dbc66485f85373719e9d6ab848e60990b8b3540dRegister For ICO51357712018-02-22 11:10:111687 days 19 mins ago0x4c556b28a7d62d3b7a84481521308fbb9687f38f IN  0xe933c0cd9784414d5f278c114904f5a84b3969190 Ether0.0009625121
0x88712273bce88f3663551a9b7b28f1cc323e5ac16d93c13b5c50bcd0aff67502Ico Buy51325642018-02-21 22:03:521687 days 13 hrs ago0x004923981309b14b6a693d0a739b3f4652dfb0a1 IN  0xe933c0cd9784414d5f278c114904f5a84b3969190.05 Ether0.0011536721
[ Download CSV Export 
Latest 23 internal transactions
Parent Txn Hash Block From To Value
0x2c6e76c5c1ba878241e524c3678449ebf188bd0e4ff5e79f6858e809f020c80d52016082018-03-05 15:53:131675 days 19 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.02 Ether
0x17082272c7b14d2985f0b81fc527e483e076e6f5defc0e98325cba588203848651788792018-03-01 19:20:421679 days 16 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.99 Ether
0xb4a9823de45d00782daa9d29da4ad3ec79b85570eb089e42a60553d09926005751781542018-03-01 16:28:101679 days 19 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.2 Ether
0xfb65073a2ed11695660d14ad1cefb0d9fc3935da3b0229dcb5aa88456ec5db7a51771302018-03-01 12:16:431679 days 23 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f2.1 Ether
0x456cca5cf0327910a36ac7d37084dd245d934116b3556b88695f274cbf3dab7851768832018-03-01 11:15:471680 days 13 mins ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f1.774 Ether
0x4f9f32a5bfedf48313395ba958394134fa875cb1a6f4cab3dae62d592b6ad31d51767612018-03-01 10:43:591680 days 45 mins ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f1.772 Ether
0x95a742110322212b6944bfa6a1b37d173865ca5bac0a1e7f8db4075e59a752e351765392018-03-01 9:47:301680 days 1 hr ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f7 Ether
0xb186b37ed99414a50b8ac80fa496acb8ec16112d705daff7cbf8eac039a5ac5951764532018-03-01 9:24:541680 days 2 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f1.40064469 Ether
0xc81cc0a655471ab080f7d72db9f737364053a70cc8d5e98dcece917aa85a259051720292018-02-28 15:23:201680 days 20 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.71 Ether
0x43115cf3e2b9b8561d9815bca350344ce2bf2eea1b205f347a7490471b63fcd751388722018-02-22 23:48:351686 days 11 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.58 Ether
0xeef6c2c0fd2f282c097a1494c136211ea07e7ee60ee942524db5439bf7df619751388602018-02-22 23:44:371686 days 11 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.6 Ether
0x522f06740e03f3631a0629adeab2d480084c8c10e284b967f6dc230d3ed8d8b651388212018-02-22 23:33:451686 days 11 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.58 Ether
0x37ecf628726957872957c107ef8804065342ae155d88ddccc5ef6c811e387e6351377982018-02-22 19:29:411686 days 15 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.35 Ether
0x4ae19b26b51f5f86dcd93f56ea1e481f2c9e17926916538ca5a8d7785004c9db51358472018-02-22 11:26:131687 days 3 mins ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f2.5 Ether
0xe21ff2929927c9583f76e4aa53d6ffb7bd8ab0bf841d8e6e53efe989ad8b477151358212018-02-22 11:20:301687 days 8 mins ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f1.99 Ether
0x4c6f1ff72323002d6d8ff0731f9e422a77cab1bd8e1342d483d26bad093bfd5151357882018-02-22 11:13:051687 days 16 mins ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.1 Ether
0x88712273bce88f3663551a9b7b28f1cc323e5ac16d93c13b5c50bcd0aff6750251325642018-02-21 22:03:521687 days 13 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.05 Ether
0xcc6fa264671c29795f16056cd9c4976b357eb6193c28dd50b93a56e869a9271751318922018-02-21 19:21:111687 days 16 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.135 Ether
0x1258983c67676e0ae5955c776e79eed60c422320ca4f761ec29d2df49de02b1451309012018-02-21 15:21:071687 days 20 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.13 Ether
0x2a3d1f97143e1d84602407aa8ed9b0b76378d99864b1d3e80cda4937d48ad8da51308852018-02-21 15:16:421687 days 20 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.136 Ether
0x465b078eefa70df2e0b24713eee5a122e275ebb6f516e123df63a7fd881dcae551306782018-02-21 14:29:161687 days 21 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b3969190x4c556b28a7d62d3b7a84481521308fbb9687f38f0.02013574 Ether
0xf7d972c551aad484cdb4afe0f2ba3daca6ea0481462833dd8e2e838411a1b6dc51275382018-02-21 1:20:101688 days 10 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b396919Null Address: 0x000…0000.1 Ether
0xe901aef63ae14ccc891002326f6a877f098f95d35f7067f9fd685a339a859bc151274992018-02-21 1:12:021688 days 10 hrs ago 0xe933c0cd9784414d5f278c114904f5a84b396919Null Address: 0x000…0000.1 Ether
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Who

Compiler Version
v0.4.20+commit.3155dd80

Optimization Enabled:
Yes with 200 runs

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

pragma solidity 0.4.20;


contract WhoVote {

    mapping (address => bytes32) public voteHash;
    address public parentContract;
    uint public deadline;

    modifier isActive {
        require(now < deadline);
        _;
    }

    modifier isParent {
        require(msg.sender == parentContract);
        _;
    }

    function WhoVote(address _parentContract, uint timespan) public {
        parentContract = _parentContract;
        deadline = now + timespan;
    }

    /**
    * @dev Recieve Vote from Who-Token-Contract
    * @param _sender Contest-participant
    * @param _hash Hash of the JSON-Parameter
    */
    function recieveVote(address _sender, bytes32 _hash) public isActive isParent returns (bool) {
        require(voteHash[_sender] == 0);
        voteHash[_sender] = _hash;
        return true;
    }


}


/**
 * @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) {
        if (a == 0) {
            return 0;
        }
        uint256 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 c;
    }

    /**
    * @dev Substracts 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) {
        uint256 c = a + b;
        assert(c >= a);
        return c;
    }
}
/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Interface {
    function circulatingSupply() public view returns (uint);
    function balanceOf(address who) public view returns (uint);
    function transfer(address to, uint value) public returns (bool);
    event TransferEvent(address indexed from, address indexed to, uint value);
}


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

    uint public maxSupply;
    uint public totalSupply;
    uint public timestampMint;
    uint public timestampRelease;
    uint8 public decimals;

    string public symbol;
    string public  name;

    address public owner;

    bool public stopped;

    mapping(address => uint) public balanceOf;
    mapping (address => uint) public permissonedAccounts;

    /**
    * @dev Checks if last mint is 3 weeks in past
    */
    modifier onlyAfter() {
        require(now >= timestampMint + 3 weeks);
        _;
    }

    /**
    * @dev Checks if last mint is 3 weeks in past
    */
    modifier isActive() {
        require(!stopped);
        _;
    }

    /**
    * @dev Checks if account has staff-level
    */
    modifier hasPermission(uint _level) {
        require(permissonedAccounts[msg.sender] > 0);
        require(permissonedAccounts[msg.sender] <= _level);
        _;
    }

    /**
    * @dev total number of tokens in existence
    */
    function circulatingSupply() public view returns (uint) {
        return totalSupply;
    }

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

    /**
    * @dev Token-transfer from msg.sender to address
    * @param _to target-address
    * @param _value amount of WHO transfered
    */
    function transfer(address _to, uint _value) public isActive returns (bool) {
        require(_to != address(0));
        require(_value <= balanceOf[msg.sender]);
        balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value);
        balanceOf[_to] = balanceOf[_to].add(_value);
        TransferEvent(msg.sender, _to, _value);
        return true;
    }
}


/**
 * @title The Who-Token by WhoHas v1.2
 * @author Felix Leber, Christian Siegert
 * @dev Special version of the ERC20 Token
 */
contract Who is StandardToken {

    mapping (address => uint) public votings_;
    mapping (address => uint8) public icoAccounts;
    address public prizePool;
    uint public icoPool;
    uint public raisedIcoValue;
    uint public maxMint;


    event WinningEvent(address[] winner, address contest, uint payoutValue);
    event VotingStarted(address _voting, uint _duration, uint _costPerVote);
    event ParticipatedInVoting(address _sender, address _votingContract, bytes32 _hash, uint _voteAmount);

    modifier icoPhase() {
        require(now >= timestampRelease);
        require(now <= 3 weeks + timestampRelease);
        require(msg.value >= 2*(10**16));
        _;

    }

    function Who() public {
        owner = 0x4c556b28A7D62D3b7A84481521308fbb9687f38F;

        name = "WhoHas";
        symbol = "WHO";
        decimals = 18;

        permissonedAccounts[owner] = 1;
        permissonedAccounts[0x3090Ee894719222DCE4d231d735741B2d44f30ba] = 1;
        timestampRelease = now + 6 hours + 40 minutes;

        balanceOf[owner] = 150000000*(10**18); //150 Millionen
        icoPool = 100000000*(10**18); //100 Millionen
        maxSupply = 1500000000*(10**18); //1,5 Billion
        maxMint = 150000*(10**18); //150 k
        totalSupply = totalSupply.add(balanceOf[owner]); //250 Million

        stopped = false;
    }

    /**
    * @dev Buy option during ICO, payable
    * @notice Please make sure that ICO Pool is at least equal to your bid
    */
    function icoBuy() public icoPhase() payable isActive {
        prizePool.transfer(msg.value);
        raisedIcoValue = raisedIcoValue.add(msg.value);
        uint256 tokenAmount = calculateTokenAmountICO(msg.value);

        require(icoPool >= tokenAmount);

        icoPool = icoPool.sub(tokenAmount);
        balanceOf[msg.sender] += tokenAmount;
        TransferEvent(prizePool, msg.sender, tokenAmount);
        totalSupply = totalSupply.add(tokenAmount);
    }

    /**
    * @dev Calculation of Token Ratio in ICO
    * @param _etherAmount Amount in Ether in order to be spent on WHO Token
    */
    function calculateTokenAmountICO(uint256 _etherAmount) public icoPhase constant returns(uint256) {
          // ICO standard rate: 1 ETH : 3315 WHO - 0,20 Euro
          // ICO Phase 1:   1 ETH : 4420 WHO - 0,15 Euro
        if (now <= 10 days + timestampRelease) {
            require(icoAccounts[msg.sender] == 1);
            return _etherAmount.mul(4420);
        } else {
            require(icoAccounts[msg.sender] == 2);
            return _etherAmount.mul(3315);
        }
    }

    /**
    * @dev Set/Unset address as permissioned
    */
    function killToken() public isActive hasPermission(1) {
        stopped = true;
    }

    /**
    * @dev Set/Unset address as permissioned
    * @param _account The address to give/take away the permissiones.
    * @param _level Permission-Level: 7:none, 1: owner, 2: admin, 3: pyFactory
    */
    function updatePermissions(address _account, uint _level) public isActive hasPermission(1) {
        require(_level != 1 && msg.sender != _account);
        permissonedAccounts[_account] = _level;
    }

    /**
    * @dev Update Address recieving & distributing tokens in votings
    * @param _account Address of the new prize Pool
    */
    function updatePrizePool(address _account) public isActive hasPermission(1) {
        prizePool = _account;
    }

    /**
    * @dev Increases totalSupply by specified amount. Available every three weeks until maxSupply is reached.
    * @param _mintAmount Amount of increase, must be smaller than 100000000
    */
    function mint(uint _mintAmount) public onlyAfter isActive hasPermission(2) {
        require(_mintAmount <= maxMint);
        require(totalSupply + _mintAmount <= maxSupply);
        balanceOf[owner] = balanceOf[owner].add(_mintAmount);
        totalSupply = totalSupply.add(_mintAmount);
        timestampMint = now;
    }

    function registerForICO(address[] _icoAddresses, uint8 _level) public isActive hasPermission(3) {
        for (uint i = 0; i < _icoAddresses.length; i++) {
            icoAccounts[_icoAddresses[i]] = _level;
        }
    }

    /**
    * @dev Manually add an existing WhoVote contract
    * @param _timespan Amount of time the contract is valid
    * @param _votePrice Price in Who(x10^18) per Vote
    */
    function gernerateVoting(uint _timespan, uint _votePrice) public isActive hasPermission(3) {
        require(_votePrice > 0 && _timespan > 0);
        address generatedVoting = new WhoVote(this, _timespan);
        votings_[generatedVoting] = _votePrice;
        VotingStarted(generatedVoting, _timespan, _votePrice);
    }

    /**
    * @dev Manually add an existing WhoVote contract
    * @param _votingContract Adress of Voting-Contrac
    * @param _votePrice Price in Who(x10^18) per Vote
    */
    function addVoting(address _votingContract, uint _votePrice) public isActive hasPermission(3) {
        votings_[_votingContract] = _votePrice;
    }

    /**
    * @dev Disable voting
    * @param _votingContract Adress of Voting-Contract
    */
    function finalizeVoting(address _votingContract) public isActive hasPermission(3) {
        votings_[_votingContract] = 0;
    }

    /**
    * @dev PyFactory payout of winner
    * @param _winner Account which paricipated in the voting
    * @param _payoutValue Amount of Who payed to the winning account
    * @param _votingAddress Address of the Voting-Contract
    */
    function payout(address[] _winner, uint _payoutValue, address _votingAddress) public isActive hasPermission(3) {
        for (uint i = 0; i < _winner.length; i++) {
            transfer(_winner[i], _payoutValue);
        }
        WinningEvent(_winner, _votingAddress, _payoutValue);
    }

    /**
    * @dev Participating in a Voting
    * @param _votingContract Adress of Voting-Contract
    * @param _hash Hash of the JSON-Parameter
    * @param _quantity Quantity of Votes
    */
    function payForVote(address _votingContract, bytes32 _hash, uint _quantity) public isActive {
        require(_quantity >= 1 && _quantity <= 5);
        uint votePrice = votings_[_votingContract];
        require(votePrice > 0);
        transfer(prizePool, _quantity.mul(votePrice));
        sendVote(_votingContract, msg.sender, _hash);
        ParticipatedInVoting(msg.sender, _votingContract, _hash, _quantity);
    }

    /**
    * @dev [Internal] Send vote to Voting-Contract
    * @param _contract Address of Voting-Contract
    * @param _sender Sender of Votes
    * @param _hash Hash of the JSON-Parameter
    */
    function sendVote(address _contract, address _sender, bytes32 _hash) private returns (bool) {
        return WhoVote(_contract).recieveVote(_sender, _hash);
    }

}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_winner","type":"address[]"},{"name":"_payoutValue","type":"uint256"},{"name":"_votingAddress","type":"address"}],"name":"payout","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_etherAmount","type":"uint256"}],"name":"calculateTokenAmountICO","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"timestampRelease","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"killToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_votingContract","type":"address"},{"name":"_votePrice","type":"uint256"}],"name":"addVoting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"votings_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"icoBuy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"prizePool","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"timestampMint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxMint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stopped","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_timespan","type":"uint256"},{"name":"_votePrice","type":"uint256"}],"name":"gernerateVoting","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":"circulatingSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_mintAmount","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"permissonedAccounts","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_votingContract","type":"address"},{"name":"_hash","type":"bytes32"},{"name":"_quantity","type":"uint256"}],"name":"payForVote","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_votingContract","type":"address"}],"name":"finalizeVoting","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"raisedIcoValue","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"icoPool","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"icoAccounts","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"maxSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_account","type":"address"},{"name":"_level","type":"uint256"}],"name":"updatePermissions","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_account","type":"address"}],"name":"updatePrizePool","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_icoAddresses","type":"address[]"},{"name":"_level","type":"uint8"}],"name":"registerForICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"winner","type":"address[]"},{"indexed":false,"name":"contest","type":"address"},{"indexed":false,"name":"payoutValue","type":"uint256"}],"name":"WinningEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_voting","type":"address"},{"indexed":false,"name":"_duration","type":"uint256"},{"indexed":false,"name":"_costPerVote","type":"uint256"}],"name":"VotingStarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_sender","type":"address"},{"indexed":false,"name":"_votingContract","type":"address"},{"indexed":false,"name":"_hash","type":"bytes32"},{"indexed":false,"name":"_voteAmount","type":"uint256"}],"name":"ParticipatedInVoting","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"TransferEvent","type":"event"}]

606060405234156200001057600080fd5b60078054600160a060020a031916734c556b28a7d62d3b7a84481521308fbb9687f38f1790556040805190810160405260068082527f57686f486173000000000000000000000000000000000000000000000000000060208301529080516200007e929160200190620001c7565b5060408051908101604052600381527f57484f000000000000000000000000000000000000000000000000000000000060208201526005908051620000c8929160200190620001c7565b506004805460ff1916601217905560078054600160a060020a0390811660009081526009602090815260408083206001908190557fe9a303b65665c6eb5bb6cc52651efb419df61578124c3912acd1c460f57048e1819055615dc0420160035585548516845260089092528083206a7c13bc4b2c133c5600000090556a52b7d2dcc80cd2e4000000600d556b04d8c55aefb8c05b5c0000008355691fc3842bd1f071c00000600f5593549092168152919091205490546200019791640100000000620012d0620001b082021704565b6001556007805460a060020a60ff02191690556200026c565b600082820183811015620001c057fe5b9392505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200020a57805160ff19168380011785556200023a565b828001600101855582156200023a579182015b828111156200023a5782518255916020019190600101906200021d565b50620002489291506200024c565b5090565b6200026991905b8082111562000248576000815560010162000253565b90565b6115f9806200027c6000396000f30060606040526004361061018a5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166303addce2811461018f578063057b7105146101f057806306fdde031461021857806318160ddd146102a257806320e25965146102b55780632bd7cd17146102c8578063313ce567146102db5780633c45b373146103045780634a0473fe1461032657806353ceee6c1461034557806370a082311461034d578063719ce73e1461036c57806372a7655e1461039b5780637501f741146103ae57806375f12b21146103c157806388b51ac0146103e85780638da5cb5b146104015780639358928b1461041457806395d89b4114610427578063a0712d681461043a578063a9059cbb14610450578063ad247dd914610472578063b2bbae6914610491578063b2c60690146104b6578063b65418f5146104d5578063bde8cd4d146104e8578063cbcf4d25146104fb578063d5abeb011461051a578063e50655221461052d578063f8ce58941461054f578063fe7cd9991461056e575b600080fd5b341561019a57600080fd5b6101ee60046024813581810190830135806020818102016040519081016040528093929190818152602001838360200280828437509496505084359460200135600160a060020a031693506105c292505050565b005b34156101fb57600080fd5b6102066004356106f7565b60405190815260200160405180910390f35b341561022357600080fd5b61022b6107bf565b60405160208082528190810183818151815260200191508051906020019080838360005b8381101561026757808201518382015260200161024f565b50505050905090810190601f1680156102945780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156102ad57600080fd5b61020661085d565b34156102c057600080fd5b610206610863565b34156102d357600080fd5b6101ee610869565b34156102e657600080fd5b6102ee6108f4565b60405160ff909116815260200160405180910390f35b341561030f57600080fd5b6101ee600160a060020a03600435166024356108fd565b341561033157600080fd5b610206600160a060020a036004351661097e565b6101ee610990565b341561035857600080fd5b610206600160a060020a0360043516610ad4565b341561037757600080fd5b61037f610aef565b604051600160a060020a03909116815260200160405180910390f35b34156103a657600080fd5b610206610afe565b34156103b957600080fd5b610206610b04565b34156103cc57600080fd5b6103d4610b0a565b604051901515815260200160405180910390f35b34156103f357600080fd5b6101ee600435602435610b1a565b341561040c57600080fd5b61037f610c53565b341561041f57600080fd5b610206610c62565b341561043257600080fd5b61022b610c68565b341561044557600080fd5b6101ee600435610cd3565b341561045b57600080fd5b6103d4600160a060020a0360043516602435610dd1565b341561047d57600080fd5b610206600160a060020a0360043516610ee4565b341561049c57600080fd5b6101ee600160a060020a0360043516602435604435610ef6565b34156104c157600080fd5b6101ee600160a060020a0360043516610fe4565b34156104e057600080fd5b610206611063565b34156104f357600080fd5b610206611069565b341561050657600080fd5b6102ee600160a060020a036004351661106f565b341561052557600080fd5b610206611084565b341561053857600080fd5b6101ee600160a060020a036004351660243561108a565b341561055a57600080fd5b6101ee600160a060020a0360043516611139565b341561057957600080fd5b6101ee60046024813581810190830135806020818102016040519081016040528093929190818152602001838360200280828437509496505050923560ff1692506111cd915050565b60075460009060a060020a900460ff16156105dc57600080fd5b600160a060020a033316600090815260096020526040812054600391901161060357600080fd5b600160a060020a0333166000908152600960205260409020548190111561062957600080fd5b600091505b84518210156106625761065685838151811061064657fe5b9060200190602002015185610dd1565b5060019091019061062e565b7faa772fa04856d36863eb60b6629ac56af60fed82d6046e69e0a38d60408e64fc858486604051600160a060020a03831660208201526040810182905260608082528190810185818151815260200191508051906020019060200280838360005b838110156106db5780820151838201526020016106c3565b5050505090500194505050505060405180910390a15050505050565b60035460009042101561070957600080fd5b600354621baf800142111561071d57600080fd5b66470de4df82000034101561073157600080fd5b600354620d2f0001421161078057600160a060020a0333166000908152600b602052604090205460ff1660011461076757600080fd5b6107798261114463ffffffff61129a16565b90506107ba565b33600160a060020a03166000908152600b602052604090205460ff166002146107a857600080fd5b61077982610cf363ffffffff61129a16565b919050565b60068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108555780601f1061082a57610100808354040283529160200191610855565b820191906000526020600020905b81548152906001019060200180831161083857829003601f168201915b505050505081565b60015481565b60035481565b60075460a060020a900460ff161561088057600080fd5b600160a060020a03331660009081526009602052604081205460019190116108a757600080fd5b600160a060020a033316600090815260096020526040902054819011156108cd57600080fd5b506007805474ff0000000000000000000000000000000000000000191660a060020a179055565b60045460ff1681565b60075460a060020a900460ff161561091457600080fd5b600160a060020a033316600090815260096020526040812054600391901161093b57600080fd5b600160a060020a0333166000908152600960205260409020548190111561096157600080fd5b50600160a060020a039091166000908152600a6020526040902055565b600a6020526000908152604090205481565b6003546000904210156109a257600080fd5b600354621baf80014211156109b657600080fd5b66470de4df8200003410156109ca57600080fd5b60075460a060020a900460ff16156109e157600080fd5b600c54600160a060020a03163480156108fc0290604051600060405180830381858888f193505050501515610a1557600080fd5b600e54610a28903463ffffffff6112d016565b600e55610a34346106f7565b905080600d5410151515610a4757600080fd5b600d54610a5a908263ffffffff6112df16565b600d55600160a060020a0333811660008181526008602052604090819020805485019055600c54919291909116907feaf1c4b3ce0f4f62a2bae7eb3e68225c75f7e6ff4422073b7437b9a78d25f1709084905190815260200160405180910390a3600154610ace908263ffffffff6112d016565b60015550565b600160a060020a031660009081526008602052604090205490565b600c54600160a060020a031681565b60025481565b600f5481565b60075460a060020a900460ff1681565b60075460009060a060020a900460ff1615610b3457600080fd5b600160a060020a0333166000908152600960205260408120546003919011610b5b57600080fd5b600160a060020a03331660009081526009602052604090205481901115610b8157600080fd5b600083118015610b915750600084115b1515610b9c57600080fd5b3084610ba661138b565b600160a060020a039092168252602082015260409081019051809103906000f0801515610bd257600080fd5b600160a060020a0381166000908152600a6020526040908190208590559092507f9132b81d6a8478fad16294f362c0ce25bcb1aef9197d5840e9127c289875907290839086908690518084600160a060020a0316600160a060020a03168152602001838152602001828152602001935050505060405180910390a150505050565b600754600160a060020a031681565b60015490565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108555780601f1061082a57610100808354040283529160200191610855565b600254621baf8001421015610ce757600080fd5b60075460a060020a900460ff1615610cfe57600080fd5b600160a060020a0333166000908152600960205260408120546002919011610d2557600080fd5b600160a060020a03331660009081526009602052604090205481901115610d4b57600080fd5b600f54821115610d5a57600080fd5b60005460015483011115610d6d57600080fd5b600754600160a060020a0316600090815260086020526040902054610d98908363ffffffff6112d016565b600754600160a060020a0316600090815260086020526040902055600154610dc6908363ffffffff6112d016565b600155505042600255565b60075460009060a060020a900460ff1615610deb57600080fd5b600160a060020a0383161515610e0057600080fd5b600160a060020a033316600090815260086020526040902054821115610e2557600080fd5b600160a060020a033316600090815260086020526040902054610e4e908363ffffffff6112df16565b600160a060020a033381166000908152600860205260408082209390935590851681522054610e83908363ffffffff6112d016565b600160a060020a0380851660008181526008602052604090819020939093559133909116907feaf1c4b3ce0f4f62a2bae7eb3e68225c75f7e6ff4422073b7437b9a78d25f1709085905190815260200160405180910390a350600192915050565b60096020526000908152604090205481565b60075460009060a060020a900460ff1615610f1057600080fd5b60018210158015610f22575060058211155b1515610f2d57600080fd5b50600160a060020a0383166000908152600a6020526040812054908111610f5357600080fd5b600c54610f7890600160a060020a0316610f73848463ffffffff61129a16565b610dd1565b50610f848433856112f1565b507f2717cc7ccb5733df244a525cd203217056f5fbed6378004c5930978afc60aa8e33858585604051600160a060020a0394851681529290931660208301526040808301919091526060820192909252608001905180910390a150505050565b60075460a060020a900460ff1615610ffb57600080fd5b600160a060020a033316600090815260096020526040812054600391901161102257600080fd5b600160a060020a0333166000908152600960205260409020548190111561104857600080fd5b50600160a060020a03166000908152600a6020526040812055565b600e5481565b600d5481565b600b6020526000908152604090205460ff1681565b60005481565b60075460a060020a900460ff16156110a157600080fd5b600160a060020a03331660009081526009602052604081205460019190116110c857600080fd5b600160a060020a033316600090815260096020526040902054819011156110ee57600080fd5b81600114158015611111575082600160a060020a031633600160a060020a031614155b151561111c57600080fd5b50600160a060020a03909116600090815260096020526040902055565b60075460a060020a900460ff161561115057600080fd5b600160a060020a033316600090815260096020526040812054600191901161117757600080fd5b600160a060020a0333166000908152600960205260409020548190111561119d57600080fd5b50600c805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60075460009060a060020a900460ff16156111e757600080fd5b600160a060020a033316600090815260096020526040812054600391901161120e57600080fd5b600160a060020a0333166000908152600960205260409020548190111561123457600080fd5b600091505b83518210156112945782600b600086858151811061125357fe5b90602001906020020151600160a060020a031681526020810191909152604001600020805460ff191660ff9290921691909117905560019190910190611239565b50505050565b6000808315156112ad57600091506112c9565b508282028284828115156112bd57fe5b04146112c557fe5b8091505b5092915050565b6000828201838110156112c557fe5b6000828211156112eb57fe5b50900390565b600083600160a060020a0316631d755c8d84846000604051602001526040517c010000000000000000000000000000000000000000000000000000000063ffffffff8516028152600160a060020a0390921660048301526024820152604401602060405180830381600087803b151561136957600080fd5b6102c65a03f1151561137a57600080fd5b505050604051805195945050505050565b6040516102328061139c8339019056006060604052341561000f57600080fd5b604051604080610232833981016040528080519190602001805160018054600160a060020a031916600160a060020a039590951694909417909355505042016002556101d2806100606000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631d755c8d8114610066578063230b9da31461009c57806329dcb0cf146100cb5780639a38bfae146100f0575b600080fd5b341561007157600080fd5b610088600160a060020a036004351660243561010f565b604051901515815260200160405180910390f35b34156100a757600080fd5b6100af61017f565b604051600160a060020a03909116815260200160405180910390f35b34156100d657600080fd5b6100de61018e565b60405190815260200160405180910390f35b34156100fb57600080fd5b6100de600160a060020a0360043516610194565b600254600090421061012057600080fd5b60015433600160a060020a0390811691161461013b57600080fd5b600160a060020a0383166000908152602081905260409020541561015e57600080fd5b50600160a060020a0391909116600090815260208190526040902055600190565b600154600160a060020a031681565b60025481565b600060208190529081526040902054815600a165627a7a72305820533cf4a1c7dc91cf129715016e866fbf8498c2be0a27fffd9556d009781d1ce90029a165627a7a723058205805591b9b99773ea276869b97c3343f850f5c10b4786d4d66e24b14f8b544210029

Swarm Source

bzzr://5805591b9b99773ea276869b97c3343f850f5c10b4786d4d66e24b14f8b54421
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.