ETH Price: $3,288.42 (+1.30%)
Gas: 1 Gwei

Contract

0x6194212Db2375d207540b3be8f1136A93c41d136
 

Overview

ETH Balance

0.01285145 ETH

Eth Value

$42.26 (@ $3,288.42/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw151232122022-07-11 19:22:51748 days ago1657567371IN
0x6194212D...93c41d136
0 ETH0.002919447.45307299
Withdraw151227702022-07-11 17:49:45748 days ago1657561785IN
0x6194212D...93c41d136
0 ETH0.0013483630.34665133
Withdraw151187452022-07-11 2:43:00748 days ago1657507380IN
0x6194212D...93c41d136
0 ETH0.0004926611.09113772
Withdraw151187422022-07-11 2:42:38748 days ago1657507358IN
0x6194212D...93c41d136
0 ETH0.0007183911.67746743
Withdraw151187402022-07-11 2:42:07748 days ago1657507327IN
0x6194212D...93c41d136
0 ETH0.0006956511.30589544
Withdraw151184282022-07-11 1:38:21748 days ago1657503501IN
0x6194212D...93c41d136
0 ETH0.0010213323.85302522
Transfer151184122022-07-11 1:34:01748 days ago1657503241IN
0x6194212D...93c41d136
0.7 ETH0.0004073414.14104782
Withdraw151179262022-07-10 23:48:19749 days ago1657496899IN
0x6194212D...93c41d136
0 ETH0.0006905511.22271635
Withdraw151179222022-07-10 23:47:49749 days ago1657496869IN
0x6194212D...93c41d136
0 ETH0.0009324215.56163933
Transfer151178432022-07-10 23:31:39749 days ago1657495899IN
0x6194212D...93c41d136
0.05 ETH0.0006786414.78344815

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
151243572022-07-11 23:34:54748 days ago1657582494
0x6194212D...93c41d136
0.00075 ETH
151232122022-07-11 19:22:51748 days ago1657567371
0x6194212D...93c41d136
0.15554525 ETH
151227702022-07-11 17:49:45748 days ago1657561785
0x6194212D...93c41d136
0.14554525 ETH
151193992022-07-11 5:12:30748 days ago1657516350
0x6194212D...93c41d136
0.0006 ETH
151193622022-07-11 5:04:50748 days ago1657515890
0x6194212D...93c41d136
0.0006 ETH
151193362022-07-11 4:57:02748 days ago1657515422
0x6194212D...93c41d136
0.001725 ETH
151193322022-07-11 4:55:36748 days ago1657515336
0x6194212D...93c41d136
0.0004275 ETH
151192572022-07-11 4:41:59748 days ago1657514519
0x6194212D...93c41d136
0.00171 ETH
151192392022-07-11 4:39:04748 days ago1657514344
0x6194212D...93c41d136
0.0004275 ETH
151191992022-07-11 4:27:34748 days ago1657513654
0x6194212D...93c41d136
0.0005925 ETH
151191962022-07-11 4:26:40748 days ago1657513600
0x6194212D...93c41d136
0.0004275 ETH
151191942022-07-11 4:25:38748 days ago1657513538
0x6194212D...93c41d136
0.0004425 ETH
151191912022-07-11 4:24:35748 days ago1657513475
0x6194212D...93c41d136
0.0004575 ETH
151191882022-07-11 4:23:49748 days ago1657513429
0x6194212D...93c41d136
0.000525 ETH
151191732022-07-11 4:21:22748 days ago1657513282
0x6194212D...93c41d136
0.0004275 ETH
151191492022-07-11 4:16:18748 days ago1657512978
0x6194212D...93c41d136
0.0004275 ETH
151191472022-07-11 4:16:02748 days ago1657512962
0x6194212D...93c41d136
0.00075 ETH
151191342022-07-11 4:13:40748 days ago1657512820
0x6194212D...93c41d136
0.0006 ETH
151191272022-07-11 4:12:38748 days ago1657512758
0x6194212D...93c41d136
0.000525 ETH
151189352022-07-11 3:26:40748 days ago1657510000
0x6194212D...93c41d136
0.0004275 ETH
151188022022-07-11 2:53:41748 days ago1657508021
0x6194212D...93c41d136
0.0004275 ETH
151187802022-07-11 2:50:08748 days ago1657507808
0x6194212D...93c41d136
0.00075 ETH
151187782022-07-11 2:49:55748 days ago1657507795
0x6194212D...93c41d136
0.00027675 ETH
151187682022-07-11 2:47:49748 days ago1657507669
0x6194212D...93c41d136
0.0004275 ETH
151187632022-07-11 2:46:34748 days ago1657507594
0x6194212D...93c41d136
0.00036675 ETH
View All Internal Transactions
Loading...
Loading

Minimal Proxy Contract for 0xbbe0558cde7e6044b350d0fe8ffb38accca13a77

Contract Name:
Buffer

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 2 : Buffer.sol
/////////////////////////////////////////////////////////////////////////////////////
//
//  SPDX-License-Identifier: MIT
//
//  ███    ███  ██████  ███    ██ ███████ ██    ██ ██████  ██ ██████  ███████
//  ████  ████ ██    ██ ████   ██ ██       ██  ██  ██   ██ ██ ██   ██ ██     
//  ██ ████ ██ ██    ██ ██ ██  ██ █████     ████   ██████  ██ ██████  █████  
//  ██  ██  ██ ██    ██ ██  ██ ██ ██         ██    ██      ██ ██      ██     
//  ██      ██  ██████  ██   ████ ███████    ██    ██      ██ ██      ███████
//
//  ██████  ██    ██ ███████ ███████ ███████ ██████  
//  ██   ██ ██    ██ ██      ██      ██      ██   ██ 
//  ██████  ██    ██ █████   █████   █████   ██████  
//  ██   ██ ██    ██ ██      ██      ██      ██   ██ 
//  ██████   ██████  ██      ██      ███████ ██   ██ 
//
//  https://moneypipe.xyz
//
/////////////////////////////////////////////////////////////////////////////////////
pragma solidity ^0.8.4;
import "@openzeppelin/contracts/proxy/utils/Initializable.sol";
contract Buffer is Initializable {
  mapping (address => uint) public withdrawn;
  bytes32 public root;
  uint public totalReceived;
  function initialize(bytes32 _root) initializer public {
    root = _root;
  }
  receive () external payable {
    totalReceived += msg.value;
  }
  function withdraw(address account, uint256 amount, bytes32[] calldata proof) external payable {
    // 1. verify proof
    bytes32 hash = keccak256(abi.encodePacked(account, amount));
    for (uint256 i = 0; i < proof.length; i++) {
      bytes32 proofElement = proof[i];
      if (hash <= proofElement) {
        hash = _hash(hash, proofElement);
      } else {
        hash = _hash(proofElement, hash);
      }
    }
    require(hash == root, "1");
    // 2. calculate amount to withdraw based on "amount" (out of 1,000,000,000,000)
    uint payment = totalReceived * amount / 10**12 - withdrawn[account];
    withdrawn[account] += payment;
    _transfer(account, payment);
  }
  // memory optimization from: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3039
  function _hash(bytes32 a, bytes32 b) private pure returns (bytes32 value) {
    assembly {
      mstore(0x00, a)
      mstore(0x20, b)
      value := keccak256(0x00, 0x40)
    }
  }
  // adopted from https://github.com/lexDAO/Kali/blob/main/contracts/libraries/SafeTransferLib.sol
  error TransferFailed();
  function _transfer(address to, uint256 amount) internal {
    bool callStatus;
    assembly {
      callStatus := call(gas(), to, amount, 0, 0, 0, 0)
    }
    if (!callStatus) revert TransferFailed();
  }
}

File 2 of 2 : Initializable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/**
 * @dev This is a base contract to aid in writing upgradeable contracts, or any kind of contract that will be deployed
 * behind a proxy. Since a proxied contract can't have a constructor, it's common to move constructor logic to an
 * external initializer function, usually called `initialize`. It then becomes necessary to protect this initializer
 * function so it can only be called once. The {initializer} modifier provided by this contract will have this effect.
 *
 * TIP: To avoid leaving the proxy in an uninitialized state, the initializer function should be called as early as
 * possible by providing the encoded function call as the `_data` argument to {ERC1967Proxy-constructor}.
 *
 * CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure
 * that all initializers are idempotent. This is not verified automatically as constructors are by Solidity.
 */
abstract contract Initializable {
    /**
     * @dev Indicates that the contract has been initialized.
     */
    bool private _initialized;

    /**
     * @dev Indicates that the contract is in the process of being initialized.
     */
    bool private _initializing;

    /**
     * @dev Modifier to protect an initializer function from being invoked twice.
     */
    modifier initializer() {
        require(_initializing || !_initialized, "Initializable: contract is already initialized");

        bool isTopLevelCall = !_initializing;
        if (isTopLevelCall) {
            _initializing = true;
            _initialized = true;
        }

        _;

        if (isTopLevelCall) {
            _initializing = false;
        }
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 1000
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract ABI

[{"inputs":[],"name":"TransferFailed","type":"error"},{"inputs":[{"internalType":"bytes32","name":"_root","type":"bytes32"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"root","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalReceived","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes32[]","name":"proof","type":"bytes32[]"}],"name":"withdraw","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"withdrawn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

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.