ETH Price: $2,293.28 (-4.86%)

Contract

0xcd97405Fb58e94954E825E46dB192b916A45d412

Overview

ETH Balance

0.00046548131600523 ETH

ETH Value

$1.07 (@ $2,293.28/ETH)

Token Holdings

More Info

Private Name Tags

Transaction Hash
Block
From
To
Deposit To3100108272025-02-26 6:44:07341 days ago1740552247IN
0xcd97405F...16A45d412
0.00004 ETH0.000000480.01
Deposit To2849914252024-12-15 11:05:10414 days ago1734260710IN
0xcd97405F...16A45d412
0.00007 ETH0.000000710.01
Deposit To2802604022024-12-01 15:15:28427 days ago1733066128IN
0xcd97405F...16A45d412
0.00005 ETH0.000002480.01
Deposit To2802595512024-12-01 15:11:53427 days ago1733065913IN
0xcd97405F...16A45d412
0.0001 ETH0.000002650.01
Deposit To2568459262024-09-24 11:34:01496 days ago1727177641IN
0xcd97405F...16A45d412
0.0002 ETH0.000001290.01
Deposit To2555034252024-09-20 13:54:23499 days ago1726840463IN
0xcd97405F...16A45d412
0.00001 ETH0.000003420.01
Deposit To2554856212024-09-20 12:39:47499 days ago1726835987IN
0xcd97405F...16A45d412
0.000075 ETH0.000000960.01
Deposit To2531239492024-09-13 15:06:10506 days ago1726239970IN
0xcd97405F...16A45d412
0.00012 ETH0.000000640.010302
Deposit To2524284382024-09-11 14:31:42508 days ago1726065102IN
0xcd97405F...16A45d412
0.0002 ETH0.000000730.010189
Deposit To2507414332024-09-06 16:35:31513 days ago1725640531IN
0xcd97405F...16A45d412
0.0002 ETH0.000002450.039182
Deposit To2506915792024-09-06 13:05:40513 days ago1725627940IN
0xcd97405F...16A45d412
0.0002 ETH0.000000770.01
Deposit To2506038982024-09-06 6:58:50514 days ago1725605930IN
0xcd97405F...16A45d412
0.0001 ETH0.000000510.01
Deposit To2446675992024-08-20 0:37:53531 days ago1724114273IN
0xcd97405F...16A45d412
0.001 ETH0.000002780.060277
Deposit To2428699652024-08-14 18:58:12536 days ago1723661892IN
0xcd97405F...16A45d412
0.0003 ETH0.000000680.01
Deposit To2381814652024-08-01 3:23:19550 days ago1722482599IN
0xcd97405F...16A45d412
0.00001 ETH0.000000630.01
Deposit To2381808092024-08-01 3:20:34550 days ago1722482434IN
0xcd97405F...16A45d412
0.00002 ETH0.000001060.015775
Deposit To2379606132024-07-31 12:00:06550 days ago1722427206IN
0xcd97405F...16A45d412
0.0005 ETH0.000000780.01
Deposit To2348964572024-07-22 14:23:58559 days ago1721658238IN
0xcd97405F...16A45d412
0.00065 ETH0.000001130.013026
Deposit To2335956202024-07-18 19:47:05563 days ago1721332025IN
0xcd97405F...16A45d412
0.000009 ETH0.000000950.01
Deposit To2335147082024-07-18 14:07:30563 days ago1721311650IN
0xcd97405F...16A45d412
0.0002 ETH0.000001240.014671
Deposit To2334855172024-07-18 12:03:59563 days ago1721304239IN
0xcd97405F...16A45d412
0.003 ETH0.000001030.014447
Deposit To2331071862024-07-17 9:26:21565 days ago1721208381IN
0xcd97405F...16A45d412
0.0009 ETH0.000001050.01
Deposit To2324593012024-07-15 12:20:15566 days ago1721046015IN
0xcd97405F...16A45d412
0.0001 ETH0.000000710.01
Deposit To2322544272024-07-14 22:04:19567 days ago1720994659IN
0xcd97405F...16A45d412
0.0004 ETH0.000000590.01
Deposit To2319035442024-07-13 21:39:37568 days ago1720906777IN
0xcd97405F...16A45d412
0.001 ETH0.000000530.01
View all transactions

Latest 2 internal transactions

Parent Transaction Hash Block From To
2588790342024-09-30 9:34:30490 days ago1727688870
0xcd97405F...16A45d412
5.5468 ETH
1234164022023-08-21 3:02:54896 days ago1692586974  Contract Creation0 ETH

Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TokenReceiver

Compiler Version
v0.8.14+commit.80d49f37

Optimization Enabled:
Yes with 200 runs

Other Settings:
london EvmVersion
// SPDX-License-Identifier: GPL-3.0-or-later

pragma solidity 0.8.14;

import { Owned } from "solmate/src/auth/Owned.sol";

/**
 * @title TokenReceiver
 * @author CyberConnect
 * @notice A contract that receive native token and record the amount.
 * The deposit only record the cumulative amount and withdraw won't affect
 * the deposit value.
 */
contract TokenReceiver is Owned {
    /*//////////////////////////////////////////////////////////////
                                STATES
    //////////////////////////////////////////////////////////////*/

    mapping(address => uint256) public deposits;

    /*//////////////////////////////////////////////////////////////
                                 EVENT
    //////////////////////////////////////////////////////////////*/

    event Deposit(address from, address to, uint256 amount);
    event Withdraw(address to, uint256 amount);

    /*//////////////////////////////////////////////////////////////
                                 CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address owner) Owned(owner) {}

    /*//////////////////////////////////////////////////////////////
                                 EXTERNAL
    //////////////////////////////////////////////////////////////*/

    function depositTo(address to) external payable {
        deposits[to] += msg.value;
        emit Deposit(msg.sender, to, msg.value);
    }

    function withdraw(address to, uint256 amount) external onlyOwner {
        payable(to).transfer(amount);
        emit Withdraw(to, amount);
    }
}

// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Simple single owner authorization mixin.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/Owned.sol)
abstract contract Owned {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

    event OwnershipTransferred(address indexed user, address indexed newOwner);

    /*//////////////////////////////////////////////////////////////
                            OWNERSHIP STORAGE
    //////////////////////////////////////////////////////////////*/

    address public owner;

    modifier onlyOwner() virtual {
        require(msg.sender == owner, "UNAUTHORIZED");

        _;
    }

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address _owner) {
        owner = _owner;

        emit OwnershipTransferred(address(0), _owner);
    }

    /*//////////////////////////////////////////////////////////////
                             OWNERSHIP LOGIC
    //////////////////////////////////////////////////////////////*/

    function transferOwnership(address newOwner) public virtual onlyOwner {
        owner = newOwner;

        emit OwnershipTransferred(msg.sender, newOwner);
    }
}

Settings
{
  "remappings": [
    "@openzeppelin/=lib/kernel/lib/openzeppelin-contracts/",
    "account-abstraction/=lib/account-abstraction/contracts/",
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "forge-std/=lib/forge-std/src/",
    "kernel/=lib/kernel/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "solady/=lib/kernel/lib/solady/",
    "solmate/=lib/solmate/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"depositTo","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"deposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b5060405161047338038061047383398101604081905261002f9161007e565b600080546001600160a01b0319166001600160a01b03831690811782556040518392907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350506100ae565b60006020828403121561009057600080fd5b81516001600160a01b03811681146100a757600080fd5b9392505050565b6103b6806100bd6000396000f3fe60806040526004361061004a5760003560e01c80638da5cb5b1461004f578063b760faf91461008c578063f2fde38b146100a1578063f3fef3a3146100c1578063fc7e286d146100e1575b600080fd5b34801561005b57600080fd5b5060005461006f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a36600461030e565b61011c565b005b3480156100ad57600080fd5b5061009f6100bc36600461030e565b610193565b3480156100cd57600080fd5b5061009f6100dc366004610330565b61022c565b3480156100ed57600080fd5b5061010e6100fc36600461030e565b60016020526000908152604090205481565b604051908152602001610083565b6001600160a01b0381166000908152600160205260408120805434929061014490849061035a565b9091555050604080513381526001600160a01b0383166020820152348183015290517f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f629181900360600190a150565b6000546001600160a01b031633146101e15760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b031633146102755760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064016101d8565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156102ab573d6000803e3d6000fd5b50604080516001600160a01b0384168152602081018390527f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364910160405180910390a15050565b80356001600160a01b038116811461030957600080fd5b919050565b60006020828403121561032057600080fd5b610329826102f2565b9392505050565b6000806040838503121561034357600080fd5b61034c836102f2565b946020939093013593505050565b6000821982111561037b57634e487b7160e01b600052601160045260246000fd5b50019056fea264697066735822122086b8f781cafea27501f18896fa9b56c41d5a15806e818834b53faadeb91d93ae64736f6c634300080e00330000000000000000000000007884f7f04f994da14302a16cf15e597e31eebecf

Deployed Bytecode

0x60806040526004361061004a5760003560e01c80638da5cb5b1461004f578063b760faf91461008c578063f2fde38b146100a1578063f3fef3a3146100c1578063fc7e286d146100e1575b600080fd5b34801561005b57600080fd5b5060005461006f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a36600461030e565b61011c565b005b3480156100ad57600080fd5b5061009f6100bc36600461030e565b610193565b3480156100cd57600080fd5b5061009f6100dc366004610330565b61022c565b3480156100ed57600080fd5b5061010e6100fc36600461030e565b60016020526000908152604090205481565b604051908152602001610083565b6001600160a01b0381166000908152600160205260408120805434929061014490849061035a565b9091555050604080513381526001600160a01b0383166020820152348183015290517f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f629181900360600190a150565b6000546001600160a01b031633146101e15760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b031633146102755760405162461bcd60e51b815260206004820152600c60248201526b15539055551213d49256915160a21b60448201526064016101d8565b6040516001600160a01b0383169082156108fc029083906000818181858888f193505050501580156102ab573d6000803e3d6000fd5b50604080516001600160a01b0384168152602081018390527f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a9424364910160405180910390a15050565b80356001600160a01b038116811461030957600080fd5b919050565b60006020828403121561032057600080fd5b610329826102f2565b9392505050565b6000806040838503121561034357600080fd5b61034c836102f2565b946020939093013593505050565b6000821982111561037b57634e487b7160e01b600052601160045260246000fd5b50019056fea264697066735822122086b8f781cafea27501f18896fa9b56c41d5a15806e818834b53faadeb91d93ae64736f6c634300080e0033

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

0000000000000000000000007884f7f04f994da14302a16cf15e597e31eebecf

-----Decoded View---------------
Arg [0] : owner (address): 0x7884f7F04F994da14302a16Cf15E597e31eebECf

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007884f7f04f994da14302a16cf15e597e31eebecf


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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