ETH Price: $3,484.35 (+2.04%)

Contract

0x495B71d2E1f280BFf2d7F1F26D4CbC12b7389d0c
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw106657222020-08-15 16:29:221592 days ago1597508962IN
0x495B71d2...2b7389d0c
0 ETH0.00374448120
Withdraw97807852020-03-31 17:12:141729 days ago1585674734IN
0x495B71d2...2b7389d0c
0 ETH0.000110655
Withdraw97807852020-03-31 17:12:141729 days ago1585674734IN
0x495B71d2...2b7389d0c
0 ETH0.00010184.6
Withdraw97806682020-03-31 16:49:341729 days ago1585673374IN
0x495B71d2...2b7389d0c
0 ETH0.000110655
Update75616982019-04-13 20:10:452082 days ago1555186245IN
0x495B71d2...2b7389d0c
0.002 ETH0.000110422
Update75187192019-04-07 3:49:372088 days ago1554608977IN
0x495B71d2...2b7389d0c
0.002 ETH0.000080552
Update75187152019-04-07 3:48:572088 days ago1554608937IN
0x495B71d2...2b7389d0c
0.002 ETH0.000080552
Update75187122019-04-07 3:48:342088 days ago1554608914IN
0x495B71d2...2b7389d0c
0.002 ETH0.000080552
Update75187092019-04-07 3:47:422088 days ago1554608862IN
0x495B71d2...2b7389d0c
0.002 ETH0.000110552
Update74657942019-03-29 21:30:032097 days ago1553895003IN
0x495B71d2...2b7389d0c
0.002 ETH0.00022114
Update74657882019-03-29 21:29:072097 days ago1553894947IN
0x495B71d2...2b7389d0c
0.002 ETH0.000160844
Update72040302019-02-10 21:05:472144 days ago1549832747IN
0x495B71d2...2b7389d0c
0.002 ETH0.000369949.2
Update71738832019-02-04 15:07:152150 days ago1549292835IN
0x495B71d2...2b7389d0c
0.002 ETH0.000110422
Update71314862019-01-26 23:59:202159 days ago1548547160IN
0x495B71d2...2b7389d0c
0.002 ETH0.000055211
Update71314862019-01-26 23:59:202159 days ago1548547160IN
0x495B71d2...2b7389d0c
0.002 ETH0.000040211
Update69872932018-12-31 18:53:202185 days ago1546282400IN
0x495B71d2...2b7389d0c
0.002 ETH0.000361899
Update69580292018-12-26 19:51:232190 days ago1545853883IN
0x495B71d2...2b7389d0c
0.002 ETH0.000120823
Update69537302018-12-26 2:37:562190 days ago1545791876IN
0x495B71d2...2b7389d0c
0.002 ETH0.000165823
Update68744992018-12-12 18:42:592204 days ago1544640179IN
0x495B71d2...2b7389d0c
0.002 ETH0.000145922.64
Update68470352018-12-08 6:09:592208 days ago1544249399IN
0x495B71d2...2b7389d0c
0.002 ETH0.00016114
Update68002582018-11-30 12:06:252216 days ago1543579585IN
0x495B71d2...2b7389d0c
0.002 ETH0.0012146422
Update67957842018-11-29 18:32:442217 days ago1543516364IN
0x495B71d2...2b7389d0c
0.002 ETH0.000362479
Update67726022018-11-25 22:31:362221 days ago1543185096IN
0x495B71d2...2b7389d0c
0.01 ETH0.000080552
Update67712942018-11-25 17:23:082221 days ago1543166588IN
0x495B71d2...2b7389d0c
0.01 ETH0.000120823
Update67712852018-11-25 17:21:182221 days ago1543166478IN
0x495B71d2...2b7389d0c
0.01 ETH0.000201375
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
106657222020-08-15 16:29:221592 days ago1597508962
0x495B71d2...2b7389d0c
0.2755 ETH
75616982019-04-13 20:10:452082 days ago1555186245
0x495B71d2...2b7389d0c
0.001 ETH
75187192019-04-07 3:49:372088 days ago1554608977
0x495B71d2...2b7389d0c
0.001 ETH
75187152019-04-07 3:48:572088 days ago1554608937
0x495B71d2...2b7389d0c
0.001 ETH
75187122019-04-07 3:48:342088 days ago1554608914
0x495B71d2...2b7389d0c
0.001 ETH
75187092019-04-07 3:47:422088 days ago1554608862
0x495B71d2...2b7389d0c
0.001 ETH
74657942019-03-29 21:30:032097 days ago1553895003
0x495B71d2...2b7389d0c
0.001 ETH
74657882019-03-29 21:29:072097 days ago1553894947
0x495B71d2...2b7389d0c
0.001 ETH
72040302019-02-10 21:05:472144 days ago1549832747
0x495B71d2...2b7389d0c
0.001 ETH
71738832019-02-04 15:07:152150 days ago1549292835
0x495B71d2...2b7389d0c
0.001 ETH
71314862019-01-26 23:59:202159 days ago1548547160
0x495B71d2...2b7389d0c
0.001 ETH
71314862019-01-26 23:59:202159 days ago1548547160
0x495B71d2...2b7389d0c
0.001 ETH
69872932018-12-31 18:53:202185 days ago1546282400
0x495B71d2...2b7389d0c
0.001 ETH
69580292018-12-26 19:51:232190 days ago1545853883
0x495B71d2...2b7389d0c
0.001 ETH
69537302018-12-26 2:37:562190 days ago1545791876
0x495B71d2...2b7389d0c
0.001 ETH
68744992018-12-12 18:42:592204 days ago1544640179
0x495B71d2...2b7389d0c
0.001 ETH
68470352018-12-08 6:09:592208 days ago1544249399
0x495B71d2...2b7389d0c
0.001 ETH
68002582018-11-30 12:06:252216 days ago1543579585
0x495B71d2...2b7389d0c
0.001 ETH
67957842018-11-29 18:32:442217 days ago1543516364
0x495B71d2...2b7389d0c
0.001 ETH
67726022018-11-25 22:31:362221 days ago1543185096
0x495B71d2...2b7389d0c
0.005 ETH
67712942018-11-25 17:23:082221 days ago1543166588
0x495B71d2...2b7389d0c
0.005 ETH
67712852018-11-25 17:21:182221 days ago1543166478
0x495B71d2...2b7389d0c
0.005 ETH
67712762018-11-25 17:19:132221 days ago1543166353
0x495B71d2...2b7389d0c
0.005 ETH
67712702018-11-25 17:18:122221 days ago1543166292
0x495B71d2...2b7389d0c
0.0045 ETH
67702902018-11-25 13:36:422221 days ago1543153002
0x495B71d2...2b7389d0c
0.001 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DappVolumeHearts

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.24;

// THE LAST SMART CONTRACT HAD SOME SECURITY HOLES
// THIS IS THE SECOND SMART CONTRACT FOR THE LIKE FEATURE
// OLD CONTRACT CAN BE SEEN AT https://etherscan.io/address/0x6acd16200a2a046bf207d1b263202ec1a75a7d51
// DATA IS IMPORTED FROM THE LAST CONTRACT
// BIG SHOUTOUT TO CASTILLO NETWORK FOR FINDING THE SECURITY HOLE AND PERFORMING AN AUDIT ON THE LAST CONTRACT
// https://github.com/EthereumCommonwealth/Auditing

// Old contract data
contract dappVolumeHearts {
	// map dapp ids with heart totals
	mapping(uint256 => uint256) public totals;
	// get total hearts by id
	function getTotalHeartsByDappId(uint256 dapp_id) public view returns(uint256) {
		return totals[dapp_id];
	}
}

// Allows users to "heart" (like) a DAPP by dapp id
// 1 Like = XXXXX eth will be set on front end of site
// 50% of each transaction gets sent to the last liker

contract DappVolumeHearts {

	dappVolumeHearts firstContract;

	using SafeMath for uint256;

	// set contract owner
	address public contractOwner;
	// set last address transacted
	address public lastAddress;
	// set first contracts address
	address constant public firstContractAddress = 0x6ACD16200a2a046bf207D1B263202ec1A75a7D51;
	// map dapp ids with heart totals ( does not count first contract )
	mapping(uint256 => uint256) public totals;

	// only contract owner
	modifier onlyContractOwner {
		require(msg.sender == contractOwner);
		_;
	}

	// set constructor
	constructor() public {
		contractOwner = msg.sender;
		lastAddress = msg.sender;
		firstContract = dappVolumeHearts(firstContractAddress);
	}


	// withdraw funds to contract creator
	function withdraw() public onlyContractOwner {
		contractOwner.transfer(address(this).balance);
	}

	// update heart count
	function update(uint256 dapp_id) public payable {
		require(msg.value >= 2000000000000000);
		require(dapp_id > 0);
		totals[dapp_id] = totals[dapp_id].add(msg.value);
		// send 50% of the money to the last person
		lastAddress.send(msg.value.div(2));
		lastAddress = msg.sender;
	}

	// get total hearts by id with legacy contract totaled in
	function getTotalHeartsByDappId(uint256 dapp_id) public view returns(uint256) {
		return totals[dapp_id].add(firstContract.getTotalHeartsByDappId(dapp_id));
	}

	// get contract balance
	function getBalance() public view returns(uint256){
		return address(this).balance;
	}

}

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

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"getBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"totals","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":"dapp_id","type":"uint256"}],"name":"getTotalHeartsByDappId","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"firstContractAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"dapp_id","type":"uint256"}],"name":"update","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"lastAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"contractOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]

608060405234801561001057600080fd5b5060018054600160a060020a03199081163390811790925560028054821690921790915560008054909116736acd16200a2a046bf207d1b263202ec1a75a7d511790556103b5806100626000396000f30060806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166312065fe081146100925780631b338710146100b95780633ccfd60b146100d157806372d475db146100e857806378afda071461010057806382ab890a14610131578063cd68100c1461013c578063ce606ee014610151575b600080fd5b34801561009e57600080fd5b506100a7610166565b60408051918252519081900360200190f35b3480156100c557600080fd5b506100a760043561016b565b3480156100dd57600080fd5b506100e661017d565b005b3480156100f457600080fd5b506100a76004356101d1565b34801561010c57600080fd5b50610115610286565b60408051600160a060020a039092168252519081900360200190f35b6100e660043561029e565b34801561014857600080fd5b50610115610349565b34801561015d57600080fd5b50610115610358565b303190565b60036020526000908152604090205481565b600154600160a060020a0316331461019457600080fd5b600154604051600160a060020a0390911690303180156108fc02916000818181858888f193505050501580156101ce573d6000803e3d6000fd5b50565b60008054604080517f72d475db00000000000000000000000000000000000000000000000000000000815260048101859052905161028092600160a060020a0316916372d475db91602480830192602092919082900301818887803b15801561023957600080fd5b505af115801561024d573d6000803e3d6000fd5b505050506040513d602081101561026357600080fd5b50516000848152600360205260409020549063ffffffff61036716565b92915050565b736acd16200a2a046bf207d1b263202ec1a75a7d5181565b66071afd498d00003410156102b257600080fd5b600081116102bf57600080fd5b6000818152600360205260409020546102de903463ffffffff61036716565b60008281526003602052604090205560028054600160a060020a0316906108fc9061031090349063ffffffff61037416565b6040518115909202916000818181858888f150506002805473ffffffffffffffffffffffffffffffffffffffff19163317905550505050565b600254600160a060020a031681565b600154600160a060020a031681565b8181018281101561028057fe5b6000818381151561038157fe5b0493925050505600a165627a7a7230582055382dfd6b9ea5d9b163271e1a05d72cde6d1971ef81acb2fdbcf7fef939d76e0029

Deployed Bytecode

0x60806040526004361061008d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166312065fe081146100925780631b338710146100b95780633ccfd60b146100d157806372d475db146100e857806378afda071461010057806382ab890a14610131578063cd68100c1461013c578063ce606ee014610151575b600080fd5b34801561009e57600080fd5b506100a7610166565b60408051918252519081900360200190f35b3480156100c557600080fd5b506100a760043561016b565b3480156100dd57600080fd5b506100e661017d565b005b3480156100f457600080fd5b506100a76004356101d1565b34801561010c57600080fd5b50610115610286565b60408051600160a060020a039092168252519081900360200190f35b6100e660043561029e565b34801561014857600080fd5b50610115610349565b34801561015d57600080fd5b50610115610358565b303190565b60036020526000908152604090205481565b600154600160a060020a0316331461019457600080fd5b600154604051600160a060020a0390911690303180156108fc02916000818181858888f193505050501580156101ce573d6000803e3d6000fd5b50565b60008054604080517f72d475db00000000000000000000000000000000000000000000000000000000815260048101859052905161028092600160a060020a0316916372d475db91602480830192602092919082900301818887803b15801561023957600080fd5b505af115801561024d573d6000803e3d6000fd5b505050506040513d602081101561026357600080fd5b50516000848152600360205260409020549063ffffffff61036716565b92915050565b736acd16200a2a046bf207d1b263202ec1a75a7d5181565b66071afd498d00003410156102b257600080fd5b600081116102bf57600080fd5b6000818152600360205260409020546102de903463ffffffff61036716565b60008281526003602052604090205560028054600160a060020a0316906108fc9061031090349063ffffffff61037416565b6040518115909202916000818181858888f150506002805473ffffffffffffffffffffffffffffffffffffffff19163317905550505050565b600254600160a060020a031681565b600154600160a060020a031681565b8181018281101561028057fe5b6000818381151561038157fe5b0493925050505600a165627a7a7230582055382dfd6b9ea5d9b163271e1a05d72cde6d1971ef81acb2fdbcf7fef939d76e0029

Swarm Source

bzzr://55382dfd6b9ea5d9b163271e1a05d72cde6d1971ef81acb2fdbcf7fef939d76e

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.