ETH Price: $3,317.00 (-2.55%)

Contract

0x9465A32618a9172b3c14d82cecdCa788dE1ef878
 

Overview

ETH Balance

0.446189147653318302 ETH

Eth Value

$1,480.01 (@ $3,317.00/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw203286112024-07-17 20:22:59183 days ago1721247779IN
0x9465A326...8dE1ef878
0 ETH0.0005711214.14162255
Withdraw191194042024-01-30 12:43:59352 days ago1706618639IN
0x9465A326...8dE1ef878
0 ETH0.0008289529.67009812
Stake104742062020-07-17 2:18:041644 days ago1594952284IN
0x9465A326...8dE1ef878
0 ETH0.003260336.00000145
Stake94736262020-02-13 8:35:381799 days ago1581582938IN
0x9465A326...8dE1ef878
0 ETH0.000815079
Stake93158092020-01-20 3:09:121823 days ago1579489752IN
0x9465A326...8dE1ef878
0 ETH0.00015112
Stake92762932020-01-14 1:49:061829 days ago1578966546IN
0x9465A326...8dE1ef878
0 ETH0.000113341.5
Stake89826612019-11-22 21:30:111882 days ago1574458211IN
0x9465A326...8dE1ef878
0 ETH0.000074361.1
Stake89826472019-11-22 21:27:421882 days ago1574458062IN
0x9465A326...8dE1ef878
0 ETH0.000087971.3
Stake89705762019-11-20 21:16:301884 days ago1574284590IN
0x9465A326...8dE1ef878
0 ETH0.000067671
Stake89689592019-11-20 14:51:451884 days ago1574261505IN
0x9465A326...8dE1ef878
0 ETH0.000135342
Stake89588982019-11-18 22:17:541886 days ago1574115474IN
0x9465A326...8dE1ef878
0 ETH0.000067731
Stake89517722019-11-17 17:41:151887 days ago1574012475IN
0x9465A326...8dE1ef878
0 ETH0.000097731
Withdraw82014472019-07-22 16:08:412005 days ago1563811721IN
0x9465A326...8dE1ef878
0 ETH0.000037991
Withdraw76780942019-05-01 23:06:472087 days ago1556752007IN
0x9465A326...8dE1ef878
0 ETH0.000037991
Stake75667402019-04-14 14:56:422104 days ago1555253802IN
0x9465A326...8dE1ef878
0 ETH0.000195342
Withdraw75478232019-04-11 16:32:242107 days ago1555000344IN
0x9465A326...8dE1ef878
0 ETH0.000189975
Withdraw74549552019-03-28 4:49:472121 days ago1553748587IN
0x9465A326...8dE1ef878
0 ETH0.000227966
Withdraw73337262019-03-09 7:39:112140 days ago1552117151IN
0x9465A326...8dE1ef878
0 ETH0.000262156.90000025
Stake73221212019-03-07 12:18:222142 days ago1551961102IN
0x9465A326...8dE1ef878
0 ETH0.000413365
Stake73190442019-03-07 0:39:142143 days ago1551919154IN
0x9465A326...8dE1ef878
0 ETH0.000496036
Withdraw72846542019-03-01 15:40:052148 days ago1551454805IN
0x9465A326...8dE1ef878
0 ETH0.0003799410
Stake71618512019-02-02 4:16:132175 days ago1549080973IN
0x9465A326...8dE1ef878
0 ETH0.000035591.3
Withdraw71214642019-01-25 0:36:092184 days ago1548376569IN
0x9465A326...8dE1ef878
0 ETH0.000189975
Withdraw70788852019-01-17 1:04:062192 days ago1547687046IN
0x9465A326...8dE1ef878
0 ETH0.000075982
Withdraw70610572019-01-13 20:41:392195 days ago1547412099IN
0x9465A326...8dE1ef878
0 ETH0.000113983
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
203286112024-07-17 20:22:59183 days ago1721247779
0x9465A326...8dE1ef878
0.00791813 ETH
82014472019-07-22 16:08:412005 days ago1563811721
0x9465A326...8dE1ef878
0.00160864 ETH
76780942019-05-01 23:06:472087 days ago1556752007
0x9465A326...8dE1ef878
0.00339579 ETH
75478232019-04-11 16:32:242107 days ago1555000344
0x9465A326...8dE1ef878
0.0016044 ETH
74549552019-03-28 4:49:472121 days ago1553748587
0x9465A326...8dE1ef878
0.00612321 ETH
73337262019-03-09 7:39:112140 days ago1552117151
0x9465A326...8dE1ef878
0.0101257 ETH
72846542019-03-01 15:40:052148 days ago1551454805
0x9465A326...8dE1ef878
0.03627938 ETH
71214642019-01-25 0:36:092184 days ago1548376569
0x9465A326...8dE1ef878
0.02736755 ETH
70788852019-01-17 1:04:062192 days ago1547687046
0x9465A326...8dE1ef878
0.00607859 ETH
70610572019-01-13 20:41:392195 days ago1547412099
0x9465A326...8dE1ef878
0.01078367 ETH
70511032019-01-12 1:52:432196 days ago1547257963
0x9465A326...8dE1ef878
0.00207583 ETH
70370312019-01-09 13:21:392199 days ago1547040099
0x9465A326...8dE1ef878
0.00200605 ETH
70044452019-01-03 17:13:392205 days ago1546535619
0x9465A326...8dE1ef878
0.00039336 ETH
69850552018-12-31 9:31:442208 days ago1546248704
0x9465A326...8dE1ef878
0.02058085 ETH
69743622018-12-29 14:27:572210 days ago1546093677
0x9465A326...8dE1ef878
0.00082422 ETH
69181902018-12-20 2:00:022219 days ago1545271202
0x9465A326...8dE1ef878
0.00232728 ETH
69090592018-12-18 12:42:452221 days ago1545136965
0x9465A326...8dE1ef878
0.00428624 ETH
68760302018-12-13 0:43:462227 days ago1544661826
0x9465A326...8dE1ef878
0.00095056 ETH
68684142018-12-11 18:33:002228 days ago1544553180
0x9465A326...8dE1ef878
0.01584816 ETH
68258642018-12-04 17:44:012235 days ago1543945441
0x9465A326...8dE1ef878
0.0297003 ETH
67973692018-11-30 0:43:172240 days ago1543538597
0x9465A326...8dE1ef878
0.0003057 ETH
67882702018-11-28 12:53:242241 days ago1543409604
0x9465A326...8dE1ef878
0.0253108 ETH
67790832018-11-27 0:03:172243 days ago1543276997
0x9465A326...8dE1ef878
0.01134405 ETH
67772242018-11-26 16:45:292243 days ago1543250729
0x9465A326...8dE1ef878
0.01326999 ETH
67741092018-11-26 4:24:332243 days ago1543206273
0x9465A326...8dE1ef878
0.00277779 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
P4RTYDaoVault

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-10-30
*/

pragma solidity ^0.4.21;

// File: contracts/ReinvestProxy.sol

/*
 * Visit: https://p4rty.io
 * Discord: https://discord.gg/7y3DHYF
 * Copyright Mako Labs LLC 2018 All Rights Reseerved
*/
interface ReinvestProxy {

    /// @dev Converts all incoming ethereum to tokens for the caller,
    function reinvestFor(address customer) external payable;

}

// File: openzeppelin-solidity/contracts/math/Math.sol

/**
 * @title Math
 * @dev Assorted math operations
 */
library Math {
  function max64(uint64 a, uint64 b) internal pure returns (uint64) {
    return a >= b ? a : b;
  }

  function min64(uint64 a, uint64 b) internal pure returns (uint64) {
    return a < b ? a : b;
  }

  function max256(uint256 a, uint256 b) internal pure returns (uint256) {
    return a >= b ? a : b;
  }

  function min256(uint256 a, uint256 b) internal pure returns (uint256) {
    return a < b ? a : b;
  }
}

// File: openzeppelin-solidity/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: openzeppelin-solidity/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.
   */
  constructor() 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: openzeppelin-solidity/contracts/ownership/Whitelist.sol

/**
 * @title Whitelist
 * @dev The Whitelist contract has a whitelist of addresses, and provides basic authorization control functions.
 * @dev This simplifies the implementation of "user permissions".
 */
contract Whitelist is Ownable {
  mapping(address => bool) public whitelist;

  event WhitelistedAddressAdded(address addr);
  event WhitelistedAddressRemoved(address addr);

  /**
   * @dev Throws if called by any account that's not whitelisted.
   */
  modifier onlyWhitelisted() {
    require(whitelist[msg.sender]);
    _;
  }

  /**
   * @dev add an address to the whitelist
   * @param addr address
   * @return true if the address was added to the whitelist, false if the address was already in the whitelist
   */
  function addAddressToWhitelist(address addr) onlyOwner public returns(bool success) {
    if (!whitelist[addr]) {
      whitelist[addr] = true;
      emit WhitelistedAddressAdded(addr);
      success = true;
    }
  }

  /**
   * @dev add addresses to the whitelist
   * @param addrs addresses
   * @return true if at least one address was added to the whitelist,
   * false if all addresses were already in the whitelist
   */
  function addAddressesToWhitelist(address[] addrs) onlyOwner public returns(bool success) {
    for (uint256 i = 0; i < addrs.length; i++) {
      if (addAddressToWhitelist(addrs[i])) {
        success = true;
      }
    }
  }

  /**
   * @dev remove an address from the whitelist
   * @param addr address
   * @return true if the address was removed from the whitelist,
   * false if the address wasn't in the whitelist in the first place
   */
  function removeAddressFromWhitelist(address addr) onlyOwner public returns(bool success) {
    if (whitelist[addr]) {
      whitelist[addr] = false;
      emit WhitelistedAddressRemoved(addr);
      success = true;
    }
  }

  /**
   * @dev remove addresses from the whitelist
   * @param addrs addresses
   * @return true if at least one address was removed from the whitelist,
   * false if all addresses weren't in the whitelist in the first place
   */
  function removeAddressesFromWhitelist(address[] addrs) onlyOwner public returns(bool success) {
    for (uint256 i = 0; i < addrs.length; i++) {
      if (removeAddressFromWhitelist(addrs[i])) {
        success = true;
      }
    }
  }

}

// File: openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol

/**
 * @title ERC20Basic
 * @dev Simpler version of ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/179
 */
contract ERC20Basic {
  function totalSupply() public view returns (uint256);
  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);
}

// File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 */
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);
}

// File: contracts/P4RTYDaoVault.sol

/*
 * Visit: https://p4rty.io
 * Discord: https://discord.gg/7y3DHYF
*/

contract P4RTYDaoVault is Whitelist {


    /*=================================
    =            MODIFIERS            =
    =================================*/

    /// @dev Only people with profits
    modifier onlyDivis {
        require(myDividends() > 0);
        _;
    }


    /*==============================
    =            EVENTS            =
    ==============================*/

    event onStake(
        address indexed customerAddress,
        uint256 stakedTokens,
        uint256 timestamp
    );

    event onDeposit(
        address indexed fundingSource,
        uint256 ethDeposited,
        uint    timestamp
    );

    event onWithdraw(
        address indexed customerAddress,
        uint256 ethereumWithdrawn,
        uint timestamp
    );

    event onReinvestmentProxy(
        address indexed customerAddress,
        address indexed destinationAddress,
        uint256 ethereumReinvested
    );




    /*=====================================
    =            CONFIGURABLES            =
    =====================================*/


    uint256 constant internal magnitude = 2 ** 64;


    /*=================================
     =            DATASETS            =
     ================================*/

    // amount of shares for each address (scaled number)
    mapping(address => uint256) internal tokenBalanceLedger_;
    mapping(address => int256) internal payoutsTo_;

    //Initial deposits backed by one virtual share that cannot be unstaked
    uint256 internal tokenSupply_ = 1;
    uint256 internal profitPerShare_;

    ERC20 public p4rty;


    /*=======================================
    =            PUBLIC FUNCTIONS           =
    =======================================*/

    constructor(address _p4rtyAddress) Ownable() public {

        p4rty = ERC20(_p4rtyAddress);

    }

    /**
     * @dev Fallback function to handle ethereum that was send straight to the contract
     */
    function() payable public {
        deposit();
    }

    /// @dev Internal function to actually purchase the tokens.
    function deposit() payable public  {

        uint256 _incomingEthereum = msg.value;
        address _fundingSource = msg.sender;

        // take the amount of dividends gained through this transaction, and allocates them evenly to each shareholder
        profitPerShare_ += (_incomingEthereum * magnitude / tokenSupply_);


        // fire event
        emit onDeposit(_fundingSource, _incomingEthereum, now);

    }

    function stake(uint _amountOfTokens) public {


        //Approval has to happen separately directly with p4rty
        //p4rty.approve(<DAO>, _amountOfTokens);

        address _customerAddress = msg.sender;

        //Customer needs to have P4RTY
        require(p4rty.balanceOf(_customerAddress) > 0);



        uint256 _balance = p4rty.balanceOf(_customerAddress);
        uint256 _stakeAmount = Math.min256(_balance,_amountOfTokens);

        require(_stakeAmount > 0);
        p4rty.transferFrom(_customerAddress, address(this), _stakeAmount);

        //Add to the tokenSupply_
        tokenSupply_ = SafeMath.add(tokenSupply_, _stakeAmount);

        // update circulating supply & the ledger address for the customer
        tokenBalanceLedger_[_customerAddress] = SafeMath.add(tokenBalanceLedger_[_customerAddress], _stakeAmount);

        // Tells the contract that the buyer doesn't deserve dividends for the tokens before they owned them;
        // really i know you think you do but you don't
        int256 _updatedPayouts = (int256) (profitPerShare_ * _stakeAmount);
        payoutsTo_[_customerAddress] += _updatedPayouts;

        emit onStake(_customerAddress, _amountOfTokens, now);
    }

    /// @dev Withdraws all of the callers earnings.
    function withdraw() onlyDivis public {

        address _customerAddress = msg.sender;
        // setup data
        uint256 _dividends = dividendsOf(_customerAddress);

        // update dividend tracker
        payoutsTo_[_customerAddress] += (int256) (_dividends * magnitude);


        // lambo delivery service
        _customerAddress.transfer(_dividends);

        // fire event
        emit onWithdraw(_customerAddress, _dividends, now);
    }

    function reinvestByProxy(address _customerAddress) onlyWhitelisted public {
        // setup data
        uint256 _dividends = dividendsOf(_customerAddress);

        // update dividend tracker
        payoutsTo_[_customerAddress] += (int256) (_dividends * magnitude);


        // dispatch a buy order with the virtualized "withdrawn dividends"
        ReinvestProxy reinvestProxy =  ReinvestProxy(msg.sender);
        reinvestProxy.reinvestFor.value(_dividends)(_customerAddress);

        emit onReinvestmentProxy(_customerAddress,msg.sender,_dividends);

    }


    /*=====================================
    =      HELPERS AND CALCULATORS        =
    =====================================*/

    /**
     * @dev Method to view the current Ethereum stored in the contract
     *  Example: totalEthereumBalance()
     */
    function totalEthereumBalance() public view returns (uint256) {
        return address(this).balance;
    }

    /// @dev Retrieve the total token supply.
    function totalSupply() public view returns (uint256) {
        return tokenSupply_;
    }

    /// @dev Retrieve the tokens owned by the caller.
    function myTokens() public view returns (uint256) {
        address _customerAddress = msg.sender;
        return balanceOf(_customerAddress);
    }

    /// @dev The percentage of the
    function votingPower(address _customerAddress) public view returns (uint256) {
        return SafeMath.div(balanceOf(_customerAddress), totalSupply());
    }

    /**
     * @dev Retrieve the dividends owned by the caller.
     *  If `_includeReferralBonus` is to to 1/true, the referral bonus will be included in the calculations.
     *  The reason for this, is that in the frontend, we will want to get the total divs (global + ref)
     *  But in the internal calculations, we want them separate.
     */
    function myDividends() public view returns (uint256) {
        return dividendsOf(msg.sender);

    }

    /// @dev Retrieve the token balance of any single address.
    function balanceOf(address _customerAddress) public view returns (uint256) {
        return tokenBalanceLedger_[_customerAddress];
    }

    /// @dev Retrieve the dividend balance of any single address.
    function dividendsOf(address _customerAddress) public view returns (uint256) {
        return (uint256) ((int256) (profitPerShare_ * tokenBalanceLedger_[_customerAddress]) - payoutsTo_[_customerAddress]) / magnitude;
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"dividendsOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addrs","type":"address[]"}],"name":"removeAddressesFromWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"removeAddressFromWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"myDividends","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":"totalEthereumBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"addAddressToWhitelist","outputs":[{"name":"success","type":"bool"}],"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":"myTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whitelist","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"p4rty","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amountOfTokens","type":"uint256"}],"name":"stake","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"votingPower","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"addrs","type":"address[]"}],"name":"addAddressesToWhitelist","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_customerAddress","type":"address"}],"name":"reinvestByProxy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_p4rtyAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"stakedTokens","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onStake","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"fundingSource","type":"address"},{"indexed":false,"name":"ethDeposited","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":false,"name":"ethereumWithdrawn","type":"uint256"},{"indexed":false,"name":"timestamp","type":"uint256"}],"name":"onWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"customerAddress","type":"address"},{"indexed":true,"name":"destinationAddress","type":"address"},{"indexed":false,"name":"ethereumReinvested","type":"uint256"}],"name":"onReinvestmentProxy","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"}],"name":"WhitelistedAddressAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"}],"name":"WhitelistedAddressRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

6080604052600160045534801561001557600080fd5b50604051602080610cad833981016040525160008054600160a060020a0319908116331790915560068054600160a060020a0390931692909116919091179055610c49806100646000396000f3006080604052600436106101055763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166265318b811461010f57806318160ddd1461014257806324953eaa14610157578063286dd3f5146101c05780633151ecfc146101e15780633ccfd60b146101f65780636b2f46321461020b57806370a08231146102205780637b9417c8146102415780638da5cb5b14610262578063949e8acd146102935780639b19251a146102a8578063a3b49204146102c9578063a694fc3a146102de578063c07473f6146102f6578063d0e30db014610105578063e2ec6ec314610317578063f2fde38b1461036c578063f9b04f721461038d575b61010d6103ae565b005b34801561011b57600080fd5b50610130600160a060020a036004351661041d565b60408051918252519081900360200190f35b34801561014e57600080fd5b5061013061045b565b34801561016357600080fd5b50604080516020600480358082013583810280860185019096528085526101ac953695939460249493850192918291850190849080828437509497506104619650505050505050565b604080519115158252519081900360200190f35b3480156101cc57600080fd5b506101ac600160a060020a03600435166104c0565b3480156101ed57600080fd5b50610130610556565b34801561020257600080fd5b5061010d610566565b34801561021757600080fd5b50610130610627565b34801561022c57600080fd5b50610130600160a060020a036004351661062c565b34801561024d57600080fd5b506101ac600160a060020a0360043516610647565b34801561026e57600080fd5b506102776106e2565b60408051600160a060020a039092168252519081900360200190f35b34801561029f57600080fd5b506101306106f1565b3480156102b457600080fd5b506101ac600160a060020a0360043516610703565b3480156102d557600080fd5b50610277610718565b3480156102ea57600080fd5b5061010d600435610727565b34801561030257600080fd5b50610130600160a060020a03600435166109c8565b34801561032357600080fd5b50604080516020600480358082013583810280860185019096528085526101ac953695939460249493850192918291850190849080828437509497506109e99650505050505050565b34801561037857600080fd5b5061010d600160a060020a0360043516610a42565b34801561039957600080fd5b5061010d600160a060020a0360043516610ad6565b600454349033906801000000000000000083028115156103ca57fe5b60058054929091049091019055604080518381524260208201528151600160a060020a038416927fd6bbc989766039cda6ca06b473aabd4d296527497aadc6808e640e053427d2b3928290030190a25050565b600160a060020a038116600090815260036020908152604080832054600290925282205460055468010000000000000000929102030490505b919050565b60045490565b600080548190600160a060020a0316331461047b57600080fd5b5060005b82518110156104ba576104a8838281518110151561049957fe5b906020019060200201516104c0565b156104b257600191505b60010161047f565b50919050565b60008054600160a060020a031633146104d857600080fd5b600160a060020a03821660009081526001602052604090205460ff161561045657600160a060020a038216600081815260016020908152604091829020805460ff19169055815192835290517ff1abf01a1043b7c244d128e8595cf0c1d10743b022b03a02dffd8ca3bf729f5a9281900390910190a1506001919050565b60006105613361041d565b905090565b6000806000610573610556565b1161057d57600080fd5b3391506105898261041d565b600160a060020a038316600081815260036020526040808220805468010000000000000000860201905551929350909183156108fc0291849190818181858888f193505050501580156105e0573d6000803e3d6000fd5b50604080518281524260208201528151600160a060020a038516927f1b091269e929df55d64d6ea7e9cadbe4fb38dce5ccdc995767bc515030dbfbbf928290030190a25050565b303190565b600160a060020a031660009081526002602052604090205490565b60008054600160a060020a0316331461065f57600080fd5b600160a060020a03821660009081526001602052604090205460ff16151561045657600160a060020a038216600081815260016020818152604092839020805460ff1916909217909155815192835290517fd1bba68c128cc3f427e5831b3c6f99f480b6efa6b9e80c757768f6124158cc3f9281900390910190a1506001919050565b600054600160a060020a031681565b6000336106fd8161062c565b91505090565b60016020526000908152604090205460ff1681565b600654600160a060020a031681565b600654604080517f70a08231000000000000000000000000000000000000000000000000000000008152336004820181905291519192600092839283928392600160a060020a03909116916370a0823191602480830192602092919082900301818787803b15801561079857600080fd5b505af11580156107ac573d6000803e3d6000fd5b505050506040513d60208110156107c257600080fd5b5051116107ce57600080fd5b600654604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152915191909216916370a082319160248083019260209291908290030181600087803b15801561083657600080fd5b505af115801561084a573d6000803e3d6000fd5b505050506040513d602081101561086057600080fd5b5051925061086e8386610be3565b91506000821161087d57600080fd5b600654604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015230602483015260448201869052915191909216916323b872dd9160648083019260209291908290030181600087803b1580156108f257600080fd5b505af1158015610906573d6000803e3d6000fd5b505050506040513d602081101561091c57600080fd5b505060045461092b9083610bfb565b600455600160a060020a0384166000908152600260205260409020546109519083610bfb565b600160a060020a03851660008181526002602090815260408083209490945560055460038252918490208054928702928301905583518981524291810191909152835191945091927f67eb285178ed97c7defb3f6b5d97ea47f24ca9a429e1d6e8f31db80a7c1d9300928290030190a25050505050565b60006109e36109d68361062c565b6109de61045b565b610c08565b92915050565b600080548190600160a060020a03163314610a0357600080fd5b5060005b82518110156104ba57610a308382815181101515610a2157fe5b90602001906020020151610647565b15610a3a57600191505b600101610a07565b600054600160a060020a03163314610a5957600080fd5b600160a060020a0381161515610a6e57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b33600090815260016020526040812054819060ff161515610af657600080fd5b610aff8361041d565b600160a060020a038416600081815260036020526040808220805468010000000000000000860201905580517f6c6170480000000000000000000000000000000000000000000000000000000081526004810193909352519294503393508392636c617048928692602480830193919282900301818588803b158015610b8457600080fd5b505af1158015610b98573d6000803e3d6000fd5b5050604080518681529051339450600160a060020a03881693507fb0c3654a9b0006eaf87cd1a772dc962fbcf10c9d3a29c48ec3a056b2a95155d692509081900360200190a3505050565b6000818310610bf25781610bf4565b825b9392505050565b818101828110156109e357fe5b60008183811515610c1557fe5b0493925050505600a165627a7a723058205adf8293597a7e2879da82bf6451bc882c771bb4a67b5bf293d7672c8cb62e87002900000000000000000000000034837d9dd34008c0dd8edac6a9a4dcd42fbccc3e

Deployed Bytecode

0x6080604052600436106101055763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166265318b811461010f57806318160ddd1461014257806324953eaa14610157578063286dd3f5146101c05780633151ecfc146101e15780633ccfd60b146101f65780636b2f46321461020b57806370a08231146102205780637b9417c8146102415780638da5cb5b14610262578063949e8acd146102935780639b19251a146102a8578063a3b49204146102c9578063a694fc3a146102de578063c07473f6146102f6578063d0e30db014610105578063e2ec6ec314610317578063f2fde38b1461036c578063f9b04f721461038d575b61010d6103ae565b005b34801561011b57600080fd5b50610130600160a060020a036004351661041d565b60408051918252519081900360200190f35b34801561014e57600080fd5b5061013061045b565b34801561016357600080fd5b50604080516020600480358082013583810280860185019096528085526101ac953695939460249493850192918291850190849080828437509497506104619650505050505050565b604080519115158252519081900360200190f35b3480156101cc57600080fd5b506101ac600160a060020a03600435166104c0565b3480156101ed57600080fd5b50610130610556565b34801561020257600080fd5b5061010d610566565b34801561021757600080fd5b50610130610627565b34801561022c57600080fd5b50610130600160a060020a036004351661062c565b34801561024d57600080fd5b506101ac600160a060020a0360043516610647565b34801561026e57600080fd5b506102776106e2565b60408051600160a060020a039092168252519081900360200190f35b34801561029f57600080fd5b506101306106f1565b3480156102b457600080fd5b506101ac600160a060020a0360043516610703565b3480156102d557600080fd5b50610277610718565b3480156102ea57600080fd5b5061010d600435610727565b34801561030257600080fd5b50610130600160a060020a03600435166109c8565b34801561032357600080fd5b50604080516020600480358082013583810280860185019096528085526101ac953695939460249493850192918291850190849080828437509497506109e99650505050505050565b34801561037857600080fd5b5061010d600160a060020a0360043516610a42565b34801561039957600080fd5b5061010d600160a060020a0360043516610ad6565b600454349033906801000000000000000083028115156103ca57fe5b60058054929091049091019055604080518381524260208201528151600160a060020a038416927fd6bbc989766039cda6ca06b473aabd4d296527497aadc6808e640e053427d2b3928290030190a25050565b600160a060020a038116600090815260036020908152604080832054600290925282205460055468010000000000000000929102030490505b919050565b60045490565b600080548190600160a060020a0316331461047b57600080fd5b5060005b82518110156104ba576104a8838281518110151561049957fe5b906020019060200201516104c0565b156104b257600191505b60010161047f565b50919050565b60008054600160a060020a031633146104d857600080fd5b600160a060020a03821660009081526001602052604090205460ff161561045657600160a060020a038216600081815260016020908152604091829020805460ff19169055815192835290517ff1abf01a1043b7c244d128e8595cf0c1d10743b022b03a02dffd8ca3bf729f5a9281900390910190a1506001919050565b60006105613361041d565b905090565b6000806000610573610556565b1161057d57600080fd5b3391506105898261041d565b600160a060020a038316600081815260036020526040808220805468010000000000000000860201905551929350909183156108fc0291849190818181858888f193505050501580156105e0573d6000803e3d6000fd5b50604080518281524260208201528151600160a060020a038516927f1b091269e929df55d64d6ea7e9cadbe4fb38dce5ccdc995767bc515030dbfbbf928290030190a25050565b303190565b600160a060020a031660009081526002602052604090205490565b60008054600160a060020a0316331461065f57600080fd5b600160a060020a03821660009081526001602052604090205460ff16151561045657600160a060020a038216600081815260016020818152604092839020805460ff1916909217909155815192835290517fd1bba68c128cc3f427e5831b3c6f99f480b6efa6b9e80c757768f6124158cc3f9281900390910190a1506001919050565b600054600160a060020a031681565b6000336106fd8161062c565b91505090565b60016020526000908152604090205460ff1681565b600654600160a060020a031681565b600654604080517f70a08231000000000000000000000000000000000000000000000000000000008152336004820181905291519192600092839283928392600160a060020a03909116916370a0823191602480830192602092919082900301818787803b15801561079857600080fd5b505af11580156107ac573d6000803e3d6000fd5b505050506040513d60208110156107c257600080fd5b5051116107ce57600080fd5b600654604080517f70a08231000000000000000000000000000000000000000000000000000000008152600160a060020a038781166004830152915191909216916370a082319160248083019260209291908290030181600087803b15801561083657600080fd5b505af115801561084a573d6000803e3d6000fd5b505050506040513d602081101561086057600080fd5b5051925061086e8386610be3565b91506000821161087d57600080fd5b600654604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015230602483015260448201869052915191909216916323b872dd9160648083019260209291908290030181600087803b1580156108f257600080fd5b505af1158015610906573d6000803e3d6000fd5b505050506040513d602081101561091c57600080fd5b505060045461092b9083610bfb565b600455600160a060020a0384166000908152600260205260409020546109519083610bfb565b600160a060020a03851660008181526002602090815260408083209490945560055460038252918490208054928702928301905583518981524291810191909152835191945091927f67eb285178ed97c7defb3f6b5d97ea47f24ca9a429e1d6e8f31db80a7c1d9300928290030190a25050505050565b60006109e36109d68361062c565b6109de61045b565b610c08565b92915050565b600080548190600160a060020a03163314610a0357600080fd5b5060005b82518110156104ba57610a308382815181101515610a2157fe5b90602001906020020151610647565b15610a3a57600191505b600101610a07565b600054600160a060020a03163314610a5957600080fd5b600160a060020a0381161515610a6e57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b33600090815260016020526040812054819060ff161515610af657600080fd5b610aff8361041d565b600160a060020a038416600081815260036020526040808220805468010000000000000000860201905580517f6c6170480000000000000000000000000000000000000000000000000000000081526004810193909352519294503393508392636c617048928692602480830193919282900301818588803b158015610b8457600080fd5b505af1158015610b98573d6000803e3d6000fd5b5050604080518681529051339450600160a060020a03881693507fb0c3654a9b0006eaf87cd1a772dc962fbcf10c9d3a29c48ec3a056b2a95155d692509081900360200190a3505050565b6000818310610bf25781610bf4565b825b9392505050565b818101828110156109e357fe5b60008183811515610c1557fe5b0493925050505600a165627a7a723058205adf8293597a7e2879da82bf6451bc882c771bb4a67b5bf293d7672c8cb62e870029

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

00000000000000000000000034837d9dd34008c0dd8edac6a9a4dcd42fbccc3e

-----Decoded View---------------
Arg [0] : _p4rtyAddress (address): 0x34837D9Dd34008C0DD8EDAc6a9A4DcD42fBcCc3E

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000034837d9dd34008c0dd8edac6a9a4dcd42fbccc3e


Swarm Source

bzzr://5adf8293597a7e2879da82bf6451bc882c771bb4a67b5bf293d7672c8cb62e87

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.