Transaction Hash:
Block:
12371605 at May-05-2021 02:49:35 AM +UTC
Transaction Fee:
0.001068488 ETH
$2.71
Gas Used:
23,228 Gas / 46 Gwei
Emitted Events:
198 |
Proxy.Received( value=197930000000000000, sender=[Sender] 0x340d693ed55d7ba167d184ea76ea2fd092a35bdc, data=0x )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x340d693E...092a35BDc | (Uphold.com) |
1,703.114418877061293257 Eth
Nonce: 574576
|
1,702.915420389061293257 Eth
Nonce: 574577
| 0.198998488 | |
0xd21C8853...5ddb84E18 | 0.165362087893668785 Eth | 0.363292087893668785 Eth | 0.19793 | ||
0xEA674fdD...16B898ec8
Miner
| (Ethermine) | 859.88819143154297515 Eth | 859.88925991954297515 Eth | 0.001068488 |
Execution Trace
ETH 0.19793
Proxy.CALL( )
pragma solidity ^0.6.12; // Copyright (C) 2018 Argent Labs Ltd. <https://argent.xyz> // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with this program. If not, see <http://www.gnu.org/licenses/>. // SPDX-License-Identifier: GPL-3.0-only /** * @title Proxy * @notice Basic proxy that delegates all calls to a fixed implementing contract. * The implementing contract cannot be upgraded. * @author Julien Niset - <[email protected]> */ contract Proxy { address implementation; event Received(uint indexed value, address indexed sender, bytes data); constructor(address _implementation) public { implementation = _implementation; } fallback() external payable { // solhint-disable-next-line no-inline-assembly assembly { let target := sload(0) calldatacopy(0, 0, calldatasize()) let result := delegatecall(gas(), target, 0, calldatasize(), 0, 0) returndatacopy(0, 0, returndatasize()) switch result case 0 {revert(0, returndatasize())} default {return (0, returndatasize())} } } receive() external payable { emit Received(msg.value, msg.sender, msg.data); } }