Cryo Explorer Ethereum Mainnet

Address Contract Partially Verified

Address 0x7712c34205737192402172409a8F7ccef8aA2AEc
Balance 0 ETH
Nonce 1
Code Size 703 bytes
Indexed Transactions 0
External Etherscan · Sourcify

Contract Bytecode

703 bytes
0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806313af4035146100c2578063776d1a01146100d55780638da5cb5b146100e8578063d4b8399214610117575b6001546001600160a01b03168061009b5760405162461bcd60e51b815260206004820152600e60248201526d15185c99d95d081b9bdd081cd95d60921b60448201526064015b60405180910390fd5b60405136600082376000803683855af43d806000843e8180156100bc578184f35b8184fd5b005b6100c06100d0366004610259565b61012a565b6100c06100e3366004610259565b6101c5565b6000546100fb906001600160a01b031681565b6040516001600160a01b03909116815260200160405180910390f35b6001546100fb906001600160a01b031681565b6000546001600160a01b031633146101705760405162461bcd60e51b81526020600482015260096024820152682737ba1037bbb732b960b91b6044820152606401610092565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527fe543d3a077035cec99b732bad2c4cf1c0fdee02ddf561ae543106ccc31cf35a3906020015b60405180910390a150565b6000546001600160a01b0316331461020b5760405162461bcd60e51b81526020600482015260096024820152682737ba1037bbb732b960b91b6044820152606401610092565b600180546001600160a01b0319166001600160a01b0383169081179091556040519081527ff1b1e874978309afba903baec19abf568b0337fcedc05dde58cfea25ec25b94d906020016101ba565b60006020828403121561026b57600080fd5b81356001600160a01b038116811461028257600080fd5b939250505056fea26469706673582212208571e44d10b28fe06365e4ff3378d5931e12d387c20bf8a1073cb2eea9fe514864736f6c634300080d0033

Verified Source Code Partial Match

Compiler: v0.8.13+commit.abaa5c0e EVM: london Optimization: Yes (200 runs)
Proxy.sol 53 lines
pragma solidity ^0.8.13;

//SPDX-License-Identifier: UNLICENSED
contract Proxy {
    address public owner;
    address public target;

    event ProxyTargetSet(address target);
    event ProxyOwnerChanged(address owner);

    constructor() {
        owner = msg.sender;
    }

    /**
   * @dev Throws if called by any account other than the owner.
   */
    modifier onlyOwner() {
        require(msg.sender == owner, "Not owner");
        _;
    }

    function setTarget(address _target) public onlyOwner {
        target = _target;
        emit ProxyTargetSet(_target);
    }

    function setOwner(address _owner) public onlyOwner {
        owner = _owner;
        emit ProxyOwnerChanged(_owner);
    }

    fallback() external {
        address _impl = target;
        require(_impl != address(0), "Target not set");

        assembly {
            let ptr := mload(0x40)
            calldatacopy(ptr, 0, calldatasize())
            let result := delegatecall(gas(), _impl, ptr, calldatasize(), 0, 0)
            let size := returndatasize()
            returndatacopy(ptr, 0, size)

            switch result
                case 0 {
                    revert(ptr, size)
                }
                default {
                    return(ptr, size)
                }
        }
    }
}

Read Contract

owner 0x8da5cb5b → address
target 0xd4b83992 → address

Write Contract 2 functions

These functions modify contract state and require a wallet transaction to execute.

setOwner 0x13af4035
address _owner
setTarget 0x776d1a01
address _target

Recent Transactions

No transactions found for this address