Goerli Testnet

Contract

0x0000a26b00c1F0DF003000390027140000fAa719
Source Code
Transaction Hash
Method
Block
From
To
Value
Add Withdraw Add...80168152022-11-25 9:50:48375 days 18 hrs ago1669369848IN
0x0000a2...00fAa719
0 ETH0.000032131.00009875
Unwrap And Withd...74933252022-08-29 18:06:36463 days 10 hrs ago1661796396IN
0x0000a2...00fAa719
0 ETH0.000018860.308
Withdraw74933152022-08-29 18:04:24463 days 10 hrs ago1661796264IN
0x0000a2...00fAa719
0 ETH0.000013540.308
Withdraw ERC20To...74933102022-08-29 18:03:12463 days 10 hrs ago1661796192IN
0x0000a2...00fAa719
0 ETH0.000021050.308
Unwrap And Withd...74933072022-08-29 18:02:36463 days 10 hrs ago1661796156IN
0x0000a2...00fAa719
0 ETH0.000018860.308
Withdraw ERC20To...74933052022-08-29 18:02:12463 days 10 hrs ago1661796132IN
0x0000a2...00fAa719
0 ETH0.000020020.308
Withdraw ERC20To...74932882022-08-29 17:56:48463 days 10 hrs ago1661795808IN
0x0000a2...00fAa719
0 ETH0.000025290.30799999

Latest 25 internal transactions (View All)

Advanced mode:
Parent Txn Hash Block From To Value
101656432023-12-06 4:08:1236 mins ago1701835692
0x0000a2...00fAa719
0.00125 ETH
101655222023-12-06 3:36:361 hr 7 mins ago1701833796
0x0000a2...00fAa719
0.0125 ETH
101653082023-12-06 2:44:002 hrs ago1701830640
0x0000a2...00fAa719
0.00025 ETH
101652282023-12-06 2:24:002 hrs 20 mins ago1701829440
0x0000a2...00fAa719
0.00025 ETH
101652122023-12-06 2:20:122 hrs 24 mins ago1701829212
0x0000a2...00fAa719
0.00125 ETH
101648492023-12-06 0:49:003 hrs 55 mins ago1701823740
0x0000a2...00fAa719
0.02375 ETH
101646882023-12-06 0:08:364 hrs 35 mins ago1701821316
0x0000a2...00fAa719
0.0025 ETH
101638392023-12-05 20:34:488 hrs 9 mins ago1701808488
0x0000a2...00fAa719
0.00125 ETH
101629652023-12-05 16:52:4811 hrs 51 mins ago1701795168
0x0000a2...00fAa719
0.001325 ETH
101629462023-12-05 16:48:2411 hrs 55 mins ago1701794904
0x0000a2...00fAa719
0.00265 ETH
101629382023-12-05 16:45:2411 hrs 58 mins ago1701794724
0x0000a2...00fAa719
0.00265 ETH
101629172023-12-05 16:40:4812 hrs 3 mins ago1701794448
0x0000a2...00fAa719
0.001325 ETH
101629042023-12-05 16:37:4812 hrs 6 mins ago1701794268
0x0000a2...00fAa719
0.001325 ETH
101628962023-12-05 16:35:3612 hrs 8 mins ago1701794136
0x0000a2...00fAa719
0.001325 ETH
101628822023-12-05 16:32:0012 hrs 12 mins ago1701793920
0x0000a2...00fAa719
0.001325 ETH
101627192023-12-05 15:50:2412 hrs 53 mins ago1701791424
0x0000a2...00fAa719
0.0025 ETH
101622802023-12-05 14:03:2414 hrs 40 mins ago1701785004
0x0000a2...00fAa719
0.000025 ETH
101622172023-12-05 13:48:2414 hrs 55 mins ago1701784104
0x0000a2...00fAa719
0.0025 ETH
101622132023-12-05 13:47:2414 hrs 56 mins ago1701784044
0x0000a2...00fAa719
0.0025 ETH
101618812023-12-05 12:20:2416 hrs 23 mins ago1701778824
0x0000a2...00fAa719
0.001325 ETH
101618182023-12-05 12:02:4816 hrs 41 mins ago1701777768
0x0000a2...00fAa719
0.001325 ETH
101617722023-12-05 11:52:2416 hrs 51 mins ago1701777144
0x0000a2...00fAa719
0.00125002 ETH
101616492023-12-05 11:19:4817 hrs 24 mins ago1701775188
0x0000a2...00fAa719
0.00125 ETH
101615072023-12-05 10:44:4817 hrs 59 mins ago1701773088
0x0000a2...00fAa719
0.01 ETH
101614072023-12-05 10:20:1218 hrs 24 mins ago1701771612
0x0000a2...00fAa719
0.0025 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PayableProxy

Compiler Version
v0.8.14+commit.80d49f37

Optimization Enabled:
Yes with 19066 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

File 1 of 2 : PayableProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;

import { PayableProxyInterface } from "../interfaces/PayableProxyInterface.sol";

interface IUpgradeBeacon {
    /**
     * @notice An external view function that returns the implementation.
     *
     * @return The address of the implementation.
     */
    function implementation() external view returns (address);
}

/**
 * @title   PayableProxy
 * @author  OpenSea Protocol Team
 * @notice  PayableProxy is a beacon proxy which will immediately return if
 *          called with callvalue. Otherwise, it will delegatecall the beacon
 *          implementation.
 */
contract PayableProxy is PayableProxyInterface {
    // Address of the beacon.
    address private immutable _beacon;

    constructor(address beacon) payable {
        // Ensure the origin is an approved deployer.
        require(
            (tx.origin == address(0x939C8d89EBC11fA45e576215E2353673AD0bA18A) ||
                tx.origin ==
                address(0xe80a65eB7a3018DedA407e621Ef5fb5B416678CA) ||
                tx.origin ==
                address(0x86D26897267711ea4b173C8C124a0A73612001da) ||
                tx.origin ==
                address(0x3B52ad533687Ce908bA0485ac177C5fb42972962)),
            "Deployment must originate from an approved deployer."
        );
        // Set the initial beacon.
        _beacon = beacon;
    }

    function initialize(address ownerToSet) external {
        // Ensure the origin is an approved deployer.
        require(
            (tx.origin == address(0x939C8d89EBC11fA45e576215E2353673AD0bA18A) ||
                tx.origin ==
                address(0xe80a65eB7a3018DedA407e621Ef5fb5B416678CA) ||
                tx.origin ==
                address(0x86D26897267711ea4b173C8C124a0A73612001da) ||
                tx.origin ==
                address(0x3B52ad533687Ce908bA0485ac177C5fb42972962)),
            "Initialize must originate from an approved deployer."
        );
        // Get the implementation address from the provided beacon.
        address implementation = IUpgradeBeacon(_beacon).implementation();

        // Create the initializationCalldata from the provided parameters.
        bytes memory initializationCalldata = abi.encodeWithSignature(
            "initialize(address)",
            ownerToSet
        );

        // Delegatecall into the implementation, supplying initialization
        // calldata.
        (bool ok, ) = implementation.delegatecall(initializationCalldata);

        // Revert and include revert data if delegatecall to implementation
        // reverts.
        if (!ok) {
            assembly {
                returndatacopy(0, 0, returndatasize())
                revert(0, returndatasize())
            }
        }
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by
     *      `_implementation()`. Will run if no other function in the contract
     *      matches the call data.
     */
    fallback() external payable override {
        _fallback();
    }

    /**
     * @dev Internal fallback function that delegates calls to the address
     *      returned by `_implementation()`. Will run if no other function
     *      in the contract matches the call data.
     */
    function _fallback() internal {
        // Delegate if call value is zero.
        if (msg.value == 0) {
            _delegate(_implementation());
        }
    }

    /**
     * @dev Delegates the current call to `implementation`.
     *
     * This function does not return to its internal call site, it will
     * return directly to the external caller.
     */
    function _delegate(address implementation) internal virtual {
        assembly {
            // Copy msg.data. We take full control of memory in this
            // inline assembly block because it will not return to
            // Solidity code. We overwrite the Solidity scratch pad
            // at memory position 0.
            calldatacopy(0, 0, calldatasize())

            // Call the implementation.
            // out and outsize are 0 because we don't know the size yet.
            let result := delegatecall(
                gas(),
                implementation,
                0,
                calldatasize(),
                0,
                0
            )

            // Copy the returned data.
            returndatacopy(0, 0, returndatasize())

            switch result
            // delegatecall returns 0 on error.
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    /**
     * @dev This function returns the address to which the fallback function
     *      should delegate.
     */
    function _implementation() internal view returns (address) {
        return IUpgradeBeacon(_beacon).implementation();
    }
}

File 2 of 2 : PayableProxyInterface.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;

/**
 * @title   PayableProxyInterface
 * @author  OpenSea Protocol Team
 * @notice  PayableProxyInterface contains all external function interfaces
 *          for the payable proxy.
 */
interface PayableProxyInterface {
    /**
     * @dev Fallback function that delegates calls to the address returned by
     *      `_implementation()`. Will run if no other function in the contract
     *      matches the call data.
     */
    fallback() external payable;
}

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

Contract ABI

[{"inputs":[{"internalType":"address","name":"beacon","type":"address"}],"stateMutability":"payable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"ownerToSet","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a0601f61066738819003918201601f19168301916001600160401b038311848410176100765780849260209460405283398101031261007157516001600160a01b0381168103610071576100539061008c565b6040516104e29081610185823960805181818160e501526104320152f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b73939c8d89ebc11fa45e576215e2353673ad0ba18a32148015610167575b801561014a575b801561012d575b156100c257608052565b60405162461bcd60e51b815260206004820152603460248201527f4465706c6f796d656e74206d757374206f726967696e6174652066726f6d206160448201527f6e20617070726f766564206465706c6f7965722e0000000000000000000000006064820152608490fd5b50733b52ad533687ce908ba0485ac177c5fb4297296232146100b8565b507386d26897267711ea4b173c8c124a0a73612001da32146100b1565b5073e80a65eb7a3018deda407e621ef5fb5b416678ca32146100aa56fe60806040526004361015610018575b6100166103e4565b005b6000803560e01c63c4d66de81461002f575061000e565b346102245760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022457808060043561006c81610227565b73939c8d89ebc11fa45e576215e2353673ad0ba18a32148015610207575b80156101ea575b80156101cd575b6100a19061024a565b604051907f5c60da1b00000000000000000000000000000000000000000000000000000000825260208260048173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa9182156101c0575b8392610190575b506040517fc4d66de8000000000000000000000000000000000000000000000000000000006020820190815273ffffffffffffffffffffffffffffffffffffffff929092166024808301919091528152610171604482610305565b51915af461017d610378565b501561018857604051f35b3d81803e3d90fd5b6101b291925060203d81116101b9575b6101aa8183610305565b810190610353565b9038610116565b503d6101a0565b6101c861036b565b61010f565b5032733b52ad533687ce908ba0485ac177c5fb4297296214610098565b507386d26897267711ea4b173c8c124a0a73612001da3214610091565b5073e80a65eb7a3018deda407e621ef5fb5b416678ca321461008a565b80fd5b73ffffffffffffffffffffffffffffffffffffffff81160361024557565b600080fd5b1561025157565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f496e697469616c697a65206d757374206f726967696e6174652066726f6d206160448201527f6e20617070726f766564206465706c6f7965722e0000000000000000000000006064820152fd5b507f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761034657604052565b61034e6102d5565b604052565b90816020910312610245575161036881610227565b90565b506040513d6000823e3d90fd5b3d156103df573d9067ffffffffffffffff82116103d2575b604051916103c660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160184610305565b82523d6000602084013e565b6103da6102d5565b610390565b606090565b34156103ec57565b6000806040517f5c60da1b00000000000000000000000000000000000000000000000000000000815260208160048173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000165afa90811561049f575b8291610481575b50368280378136915af43d6000803e1561047c573d6000f35b3d6000fd5b610499915060203d81116101b9576101aa8183610305565b83610463565b6104a761036b565b61045c56fea264697066735822122022a6f8a80a3410719e8504e9b42af008259446db5cdbc3acc5d20ff3f8f338a464736f6c634300080e00330000000000000000000000000000000033ca97c0b4df29103dc8da00a967884f

Deployed Bytecode

0x60806040526004361015610018575b6100166103e4565b005b6000803560e01c63c4d66de81461002f575061000e565b346102245760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261022457808060043561006c81610227565b73939c8d89ebc11fa45e576215e2353673ad0ba18a32148015610207575b80156101ea575b80156101cd575b6100a19061024a565b604051907f5c60da1b00000000000000000000000000000000000000000000000000000000825260208260048173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000033ca97c0b4df29103dc8da00a967884f165afa9182156101c0575b8392610190575b506040517fc4d66de8000000000000000000000000000000000000000000000000000000006020820190815273ffffffffffffffffffffffffffffffffffffffff929092166024808301919091528152610171604482610305565b51915af461017d610378565b501561018857604051f35b3d81803e3d90fd5b6101b291925060203d81116101b9575b6101aa8183610305565b810190610353565b9038610116565b503d6101a0565b6101c861036b565b61010f565b5032733b52ad533687ce908ba0485ac177c5fb4297296214610098565b507386d26897267711ea4b173c8c124a0a73612001da3214610091565b5073e80a65eb7a3018deda407e621ef5fb5b416678ca321461008a565b80fd5b73ffffffffffffffffffffffffffffffffffffffff81160361024557565b600080fd5b1561025157565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f496e697469616c697a65206d757374206f726967696e6174652066726f6d206160448201527f6e20617070726f766564206465706c6f7965722e0000000000000000000000006064820152fd5b507f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761034657604052565b61034e6102d5565b604052565b90816020910312610245575161036881610227565b90565b506040513d6000823e3d90fd5b3d156103df573d9067ffffffffffffffff82116103d2575b604051916103c660207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160184610305565b82523d6000602084013e565b6103da6102d5565b610390565b606090565b34156103ec57565b6000806040517f5c60da1b00000000000000000000000000000000000000000000000000000000815260208160048173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000033ca97c0b4df29103dc8da00a967884f165afa90811561049f575b8291610481575b50368280378136915af43d6000803e1561047c573d6000f35b3d6000fd5b610499915060203d81116101b9576101aa8183610305565b83610463565b6104a761036b565b61045c56fea264697066735822122022a6f8a80a3410719e8504e9b42af008259446db5cdbc3acc5d20ff3f8f338a464736f6c634300080e0033

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

0000000000000000000000000000000033ca97c0b4df29103dc8da00a967884f

-----Decoded View---------------
Arg [0] : beacon (address): 0x0000000033cA97C0b4DF29103DC8dA00a967884f

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000033ca97c0b4df29103dc8da00a967884f


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
[ 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.