ETH Price: $2,366.12 (+2.30%)

Contract

0x9c09C076e83557e8D0A099528cA2Fa1f91C3b727

Overview

ETH Balance

0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Sweep4236083402026-01-21 6:57:3112 days ago1768978651IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020016
Sweep4236083292026-01-21 6:57:2812 days ago1768978648IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020006
Sweep4236083202026-01-21 6:57:2612 days ago1768978646IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020004
Sweep4236083112026-01-21 6:57:2412 days ago1768978644IN
0x9c09C076...f91C3b727
0 ETH0.000001540.020258
Sweep4236082982026-01-21 6:57:2012 days ago1768978640IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020044
Sweep4236082892026-01-21 6:57:1812 days ago1768978638IN
0x9c09C076...f91C3b727
0 ETH0.000001530.02008
Sweep4236082802026-01-21 6:57:1612 days ago1768978636IN
0x9c09C076...f91C3b727
0 ETH0.000001520.02
Sweep4236082712026-01-21 6:57:1412 days ago1768978634IN
0x9c09C076...f91C3b727
0 ETH0.000001530.020146
Sweep4236082622026-01-21 6:57:1112 days ago1768978631IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020032
Sweep4236082492026-01-21 6:57:0812 days ago1768978628IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020004
Sweep4236082402026-01-21 6:57:0612 days ago1768978626IN
0x9c09C076...f91C3b727
0 ETH0.000001520.02
Sweep4236082322026-01-21 6:57:0412 days ago1768978624IN
0x9c09C076...f91C3b727
0 ETH0.000001520.02
Sweep4236082192026-01-21 6:57:0112 days ago1768978621IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020022
Sweep4236082082026-01-21 6:56:5812 days ago1768978618IN
0x9c09C076...f91C3b727
0 ETH0.000001520.02
Sweep4236081982026-01-21 6:56:5512 days ago1768978615IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020006
Sweep4236081852026-01-21 6:56:5212 days ago1768978612IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020002
Sweep4236081742026-01-21 6:56:4912 days ago1768978609IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020028
Sweep4236081432026-01-21 6:56:4212 days ago1768978602IN
0x9c09C076...f91C3b727
0 ETH0.000001530.020138
Sweep4236081162026-01-21 6:56:3512 days ago1768978595IN
0x9c09C076...f91C3b727
0 ETH0.000001520.02
Sweep4236081072026-01-21 6:56:3312 days ago1768978593IN
0x9c09C076...f91C3b727
0 ETH0.000001530.02013
Sweep4236080982026-01-21 6:56:3012 days ago1768978590IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020032
Sweep4236080892026-01-21 6:56:2812 days ago1768978588IN
0x9c09C076...f91C3b727
0 ETH0.000001540.02019
Sweep4236080802026-01-21 6:56:2612 days ago1768978586IN
0x9c09C076...f91C3b727
0 ETH0.000001520.02
Sweep4236080702026-01-21 6:56:2312 days ago1768978583IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020012
Sweep4236080612026-01-21 6:56:2112 days ago1768978581IN
0x9c09C076...f91C3b727
0 ETH0.000001520.020006
View all transactions

Latest 1 internal transaction

Parent Transaction Hash Block From To
4215557752026-01-15 8:23:4818 days ago1768465428  Contract Creation0 ETH

Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Sweeper

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

import {IUserDepositFactory} from "./interfaces/IUserDepositFactory.sol";
import {IUserDeposit} from "./interfaces/IUserDeposit.sol";

contract Sweeper {
    // ******************** //
    //       Constants      //
    // //////////////////// //

    /// @notice The address of the factory
    IUserDepositFactory public immutable FACTORY;

    /// @notice Constructor to initialize the factory and user
    /// @param factory_ The address of the factory
    constructor(address factory_) {
        FACTORY = IUserDepositFactory(factory_);
    }

    // ******************** //
    //       Modifiers      //
    // //////////////////// //

    /// @notice Modifier to ensure the caller is an EOA
    /// @dev Combines tx.origin check with code length check to handle EIP-7702 delegated EOAs
    modifier onlyEOA() {
        require(msg.sender == tx.origin, "no contract calls");
        require(msg.sender.code.length == 0, "no contract code");
        _;
    }

    // ******************** //
    //       Functions      //
    // //////////////////// //

    /// @notice Sweeps the contract of any ERC20 or native tokens to the bank
    /// @param token_ The address of the token
    /// @dev only callable by the owner
    function sweep(bytes32 jupnetId_, address token_) external onlyEOA {
        IUserDeposit(FACTORY.deploy(jupnetId_)).sweep(token_);
    }

    /// @notice Sweeps the contract of any ERC20 or native tokens to the bank
    /// @param jupnetId_ The jupnetId of the user deposit
    /// @dev only callable by the owner
    function sweepNative(bytes32 jupnetId_) external onlyEOA {
        IUserDeposit(FACTORY.deploy(jupnetId_)).sweepNative();
    }
}

//SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

interface IUserDeposit {
    /// @notice Sweeps the contract of any ERC20 or native tokens to the bank
    /// @param token_ The address of the token
    function sweep(address token_) external;

    /// @notice Sweeps the contract native tokens by converting to WNative and transferring to the bank
    function sweepNative() external;
}

//SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

interface IUserDepositFactory {
    function directory() external view returns (address);

    function deploy(bytes32 jupnetId_) external payable returns (address);

    function computeDepositAddress(bytes32 jupnetId_) external view returns (address);
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "evmVersion": "paris",
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"factory_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"FACTORY","outputs":[{"internalType":"contract IUserDepositFactory","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"jupnetId_","type":"bytes32"},{"internalType":"address","name":"token_","type":"address"}],"name":"sweep","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"jupnetId_","type":"bytes32"}],"name":"sweepNative","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a060405234801561001057600080fd5b506040516104de3803806104de83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161044661009860003960008181604b0152818161015101526102c101526104466000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80632dd31000146100465780634aef407014610089578063d77b26581461009e575b600080fd5b61006d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b61009c6100973660046103a3565b6100b1565b005b61009c6100ac3660046103d3565b610226565b3332146100f95760405162461bcd60e51b81526020600482015260116024820152706e6f20636f6e74726163742063616c6c7360781b60448201526064015b60405180910390fd5b333b1561013b5760405162461bcd60e51b815260206004820152601060248201526f6e6f20636f6e747261637420636f646560801b60448201526064016100f0565b604051630570b74760e31b8152600481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632b85ba38906024016020604051808303816000875af11580156101a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c691906103ec565b60405162b40d3160e11b81526001600160a01b03838116600483015291909116906301681a6290602401600060405180830381600087803b15801561020a57600080fd5b505af115801561021e573d6000803e3d6000fd5b505050505050565b3332146102695760405162461bcd60e51b81526020600482015260116024820152706e6f20636f6e74726163742063616c6c7360781b60448201526064016100f0565b333b156102ab5760405162461bcd60e51b815260206004820152601060248201526f6e6f20636f6e747261637420636f646560801b60448201526064016100f0565b604051630570b74760e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632b85ba38906024016020604051808303816000875af1158015610312573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033691906103ec565b6001600160a01b031663ab803a766040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561037057600080fd5b505af1158015610384573d6000803e3d6000fd5b5050505050565b6001600160a01b03811681146103a057600080fd5b50565b600080604083850312156103b657600080fd5b8235915060208301356103c88161038b565b809150509250929050565b6000602082840312156103e557600080fd5b5035919050565b6000602082840312156103fe57600080fd5b81516104098161038b565b939250505056fea26469706673582212205b2951e8801a5584764cc90a2e5e2166a493d877222d2c6d0c294494774151f564736f6c6343000818003300000000000000000000000038dc5be15cedcee7f1320e0a5321936972465d41

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100415760003560e01c80632dd31000146100465780634aef407014610089578063d77b26581461009e575b600080fd5b61006d7f00000000000000000000000038dc5be15cedcee7f1320e0a5321936972465d4181565b6040516001600160a01b03909116815260200160405180910390f35b61009c6100973660046103a3565b6100b1565b005b61009c6100ac3660046103d3565b610226565b3332146100f95760405162461bcd60e51b81526020600482015260116024820152706e6f20636f6e74726163742063616c6c7360781b60448201526064015b60405180910390fd5b333b1561013b5760405162461bcd60e51b815260206004820152601060248201526f6e6f20636f6e747261637420636f646560801b60448201526064016100f0565b604051630570b74760e31b8152600481018390527f00000000000000000000000038dc5be15cedcee7f1320e0a5321936972465d416001600160a01b031690632b85ba38906024016020604051808303816000875af11580156101a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c691906103ec565b60405162b40d3160e11b81526001600160a01b03838116600483015291909116906301681a6290602401600060405180830381600087803b15801561020a57600080fd5b505af115801561021e573d6000803e3d6000fd5b505050505050565b3332146102695760405162461bcd60e51b81526020600482015260116024820152706e6f20636f6e74726163742063616c6c7360781b60448201526064016100f0565b333b156102ab5760405162461bcd60e51b815260206004820152601060248201526f6e6f20636f6e747261637420636f646560801b60448201526064016100f0565b604051630570b74760e31b8152600481018290527f00000000000000000000000038dc5be15cedcee7f1320e0a5321936972465d416001600160a01b031690632b85ba38906024016020604051808303816000875af1158015610312573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033691906103ec565b6001600160a01b031663ab803a766040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561037057600080fd5b505af1158015610384573d6000803e3d6000fd5b5050505050565b6001600160a01b03811681146103a057600080fd5b50565b600080604083850312156103b657600080fd5b8235915060208301356103c88161038b565b809150509250929050565b6000602082840312156103e557600080fd5b5035919050565b6000602082840312156103fe57600080fd5b81516104098161038b565b939250505056fea26469706673582212205b2951e8801a5584764cc90a2e5e2166a493d877222d2c6d0c294494774151f564736f6c63430008180033

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

00000000000000000000000038dc5be15cedcee7f1320e0a5321936972465d41

-----Decoded View---------------
Arg [0] : factory_ (address): 0x38dc5be15CeDCee7F1320e0A5321936972465D41

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000038dc5be15cedcee7f1320e0a5321936972465d41


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
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.