ETH Price: $3,804.99 (+6.48%)

Contract

0x57B946008913B82E4dF85f501cbAeD910e58D26C
 
Transaction Hash
Method
Block
From
To
Transfer213299422024-12-04 15:11:114 mins ago1733325071IN
Marlin: POND Token
0 ETH0.0015950246.124234
Transfer213299262024-12-04 15:07:597 mins ago1733324879IN
Marlin: POND Token
0 ETH0.0015585745.05451139
Transfer213299142024-12-04 15:05:3510 mins ago1733324735IN
Marlin: POND Token
0 ETH0.0028703650.82006559
Transfer213298762024-12-04 14:57:5917 mins ago1733324279IN
Marlin: POND Token
0 ETH0.0024002346.43243171
Transfer213297152024-12-04 14:25:1150 mins ago1733322311IN
Marlin: POND Token
0 ETH0.0019264948.93435293
Transfer213296912024-12-04 14:20:2355 mins ago1733322023IN
Marlin: POND Token
0 ETH0.0015550844.98509324
Transfer213296542024-12-04 14:12:591 hr ago1733321579IN
Marlin: POND Token
0 ETH0.0024130142.73165821
Transfer213296402024-12-04 14:10:111 hr ago1733321411IN
Marlin: POND Token
0 ETH0.0016080146.5
Transfer213296252024-12-04 14:07:111 hr ago1733321231IN
Marlin: POND Token
0 ETH0.0007980823.07083235
Transfer213296052024-12-04 14:03:111 hr ago1733320991IN
Marlin: POND Token
0 ETH0.0014318625.35127775
Transfer213295952024-12-04 14:01:111 hr ago1733320871IN
Marlin: POND Token
0 ETH0.0013765124.36607872
Transfer213293932024-12-04 13:20:471 hr ago1733318447IN
Marlin: POND Token
0 ETH0.0008540121.68597727
Transfer213293902024-12-04 13:20:111 hr ago1733318411IN
Marlin: POND Token
0 ETH0.0014609225.86585057
Transfer213292972024-12-04 13:00:592 hrs ago1733317259IN
Marlin: POND Token
0 ETH0.0006722219.43233538
Transfer213292182024-12-04 12:44:472 hrs ago1733316287IN
Marlin: POND Token
0 ETH0.0012475122.0826861
Transfer213292152024-12-04 12:44:112 hrs ago1733316251IN
Marlin: POND Token
0 ETH0.0013052823.11514734
Transfer213291042024-12-04 12:21:592 hrs ago1733314919IN
Marlin: POND Token
0 ETH0.0008162423.60392215
Transfer213290962024-12-04 12:20:232 hrs ago1733314823IN
Marlin: POND Token
0 ETH0.0014264425.25536473
Transfer213290942024-12-04 12:19:592 hrs ago1733314799IN
Marlin: POND Token
0 ETH0.0009215826.65930913
Transfer213290732024-12-04 12:15:473 hrs ago1733314547IN
Marlin: POND Token
0 ETH0.0013762424.3665943
Transfer213290472024-12-04 12:10:353 hrs ago1733314235IN
Marlin: POND Token
0 ETH0.0010201919.74019665
Transfer213289942024-12-04 11:59:593 hrs ago1733313599IN
Marlin: POND Token
0 ETH0.0009142626.43842439
Transfer213289782024-12-04 11:56:473 hrs ago1733313407IN
Marlin: POND Token
0 ETH0.0012616922.33842439
Transfer213288182024-12-04 11:24:353 hrs ago1733311475IN
Marlin: POND Token
0 ETH0.0006861619.82843337
Transfer213287862024-12-04 11:18:113 hrs ago1733311091IN
Marlin: POND Token
0 ETH0.0006458618.66405302
VIEW ADVANCED FILTER

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xDe045Ef9...2b1A8d6b8
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
TokenProxy

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 1000000 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-11-30
*/

pragma solidity >=0.4.21 <0.7.0;


/// @title Contract to reward overlapping stakes
/// @author Marlin
/// @notice Use this contract only for testing
/// @dev Contract may or may not change in future (depending upon the new slots in proxy-store)
contract TokenProxy {
    bytes32 internal constant IMPLEMENTATION_SLOT = bytes32(
        uint256(keccak256("eip1967.proxy.implementation")) - 1
    );
    bytes32 internal constant PROXY_ADMIN_SLOT = bytes32(
        uint256(keccak256("eip1967.proxy.admin")) - 1
    );

    constructor(address contractLogic, address proxyAdmin) public {
        // save the code address
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            sstore(slot, contractLogic)
        }
        // save the proxy admin
        slot = PROXY_ADMIN_SLOT;
        address sender = proxyAdmin;
        assembly {
            sstore(slot, sender)
        }
    }

    function updateAdmin(address _newAdmin) public {
        require(
            msg.sender == getAdmin(),
            "Only the current admin should be able to new admin"
        );
        bytes32 slot = PROXY_ADMIN_SLOT;
        assembly {
            sstore(slot, _newAdmin)
        }
    }

    /// @author Marlin
    /// @dev Only admin can update the contract
    /// @param _newLogic address is the address of the contract that has to updated to
    function updateLogic(address _newLogic) public {
        require(
            msg.sender == getAdmin(),
            "Only Admin should be able to update the contracts"
        );
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            sstore(slot, _newLogic)
        }
    }

    /// @author Marlin
    /// @dev use assembly as contract store slot is manually decided
    function getAdmin() internal view returns (address result) {
        bytes32 slot = PROXY_ADMIN_SLOT;
        assembly {
            result := sload(slot)
        }
    }

    /// @author Marlin
    /// @dev add functionality to forward the balance as well.
    function() external payable {
        bytes32 slot = IMPLEMENTATION_SLOT;
        assembly {
            let contractLogic := sload(slot)
            calldatacopy(0x0, 0x0, calldatasize())
            let success := delegatecall(
                sub(gas(), 10000),
                contractLogic,
                0x0,
                calldatasize(),
                0,
                0
            )
            let retSz := returndatasize()
            returndatacopy(0, 0, retSz)

            switch success
                case 0 {
                    revert(0, retSz)
                }
                default {
                    return(0, retSz)
                }
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"contractLogic","type":"address"},{"internalType":"address","name":"proxyAdmin","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":false,"inputs":[{"internalType":"address","name":"_newAdmin","type":"address"}],"name":"updateAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_newLogic","type":"address"}],"name":"updateLogic","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

Deployed Bytecode

0x6080604052600436106100295760003560e01c8063795e617e146100a8578063e2f273bd146100ea575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180543660008037600080366000846127105a03f43d806000803e8180156100a357816000f35b816000fd5b3480156100b457600080fd5b506100e8600480360360208110156100cb57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661012a565b005b3480156100f657600080fd5b506100e86004803603602081101561010d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661020c565b6101326102ee565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260318152602001806103476031913960400191505060405180910390fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0155565b6102146102ee565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610297576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103786032913960400191505060405180910390fd5b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0155565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01549056fe4f6e6c792041646d696e2073686f756c642062652061626c6520746f207570646174652074686520636f6e7472616374734f6e6c79207468652063757272656e742061646d696e2073686f756c642062652061626c6520746f206e65772061646d696ea265627a7a72315820a6f56351dbbc0d0b4182cc0742811aa02a1e1c5ed47f268611b819fad621356764736f6c63430005110032

Deployed Bytecode Sourcemap

253:2541:0:-;;;;;;;;;;;;;;;;;;;;;;;354:41;;;;;;;;;;;;;;;;346:54;;2210:11;;2258:14;2120:12;;2235:38;2476:1;2456;2423:14;2401:3;2369:13;2344:5;2337;2333:17;2302:190;2519:16;2570:5;2567:1;2564;2549:27;2599:7;2624:65;;;;2748:5;2745:1;2738:16;2624:65;2664:5;2661:1;2654:16;1406:302;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1406:302:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1406:302:0;;;;:::i;:::-;;937:300;;8:9:-1;5:2;;;30:1;27;20:12;5:2;937:300:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;937:300:0;;;;:::i;1406:302::-;1500:10;:8;:10::i;:::-;1486:24;;:10;:24;;;1464:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;354:41;;;;;;;;;;;;;;;;346:54;;1667:23;1652:49::o;937:300::-;1031:10;:8;:10::i;:::-;1017:24;;:10;:24;;;995:124;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;485:32;;;;;;;;;;;;;;;;477:45;;1196:23;1181:49::o;1810:175::-;485:32;;;;;;;;;;;;;;;;477:45;;1956:11;;1931:47::o

Swarm Source

bzzr://a6f56351dbbc0d0b4182cc0742811aa02a1e1c5ed47f268611b819fad6213567

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

Marlin is a verifiable computing protocol featuring TEE and ZK-based coprocessors to delegate complex workloads over a decentralized cloud.

Validator Index Block Amount
View All Withdrawals

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