Sepolia Testnet

Contract

0x889a28163f08CdCF079C0692b23E4C586e811889

Overview

ETH Balance

0 ETH

Token Holdings

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Claim Token86836802025-07-03 13:52:243 days ago1751550744IN
0x889a2816...86e811889
0 ETH0.0018275613.29159355
Claim Agent86817752025-07-03 7:31:003 days ago1751527860IN
0x889a2816...86e811889
0 ETH0.0030649314.91619017
Claim Token86817732025-07-03 7:30:363 days ago1751527836IN
0x889a2816...86e811889
0 ETH0.0023559115.23899596
Claim Token86676272025-07-01 8:05:125 days ago1751357112IN
0x889a2816...86e811889
0 ETH0.0056904136.80782213
Claim Agent86251772025-06-25 10:07:2411 days ago1750846044IN
0x889a2816...86e811889
0 ETH0.000534662.6020463
Claim Agent86227592025-06-25 2:00:4811 days ago1750816848IN
0x889a2816...86e811889
0 ETH0.000005890.02868058
Claim Token86227562025-06-25 2:00:1211 days ago1750816812IN
0x889a2816...86e811889
0 ETH0.00000440.02848166
Claim Token86046202025-06-22 13:16:3614 days ago1750598196IN
0x889a2816...86e811889
0 ETH0.000000250.00162145
Claim Agent85823152025-06-19 10:45:2417 days ago1750329924IN
0x889a2816...86e811889
0 ETH0.000000240.00120003
Claim Token85823142025-06-19 10:45:1217 days ago1750329912IN
0x889a2816...86e811889
0 ETH0.000000180.00120003
Claim Agent85741422025-06-18 7:15:4818 days ago1750230948IN
0x889a2816...86e811889
0 ETH0.00000040.00198219
Claim Token85741372025-06-18 7:14:4818 days ago1750230888IN
0x889a2816...86e811889
0 ETH0.000000310.00200994
Claim Token85729872025-06-18 3:24:2418 days ago1750217064IN
0x889a2816...86e811889
0 ETH0.000000210.00138859
Claim Token85564992025-06-15 20:18:4820 days ago1750018728IN
0x889a2816...86e811889
0 ETH0.000003570.02314124
Claim Agent85461432025-06-14 9:45:2422 days ago1749894324IN
0x889a2816...86e811889
0 ETH0.000002140.01044416
Claim Token85461432025-06-14 9:45:2422 days ago1749894324IN
0x889a2816...86e811889
0 ETH0.000001430.01044416
Claim Token85383872025-06-13 7:50:4823 days ago1749801048IN
0x889a2816...86e811889
0 ETH0.000000150.00100002
Claim Token85185512025-06-10 13:37:4826 days ago1749562668IN
0x889a2816...86e811889
0 ETH0.000234931.51965048
Claim Token85137272025-06-09 21:31:4826 days ago1749504708IN
0x889a2816...86e811889
0 ETH0.000000220.00147387
Claim Agent85040512025-06-08 13:13:3628 days ago1749388416IN
0x889a2816...86e811889
0 ETH0.000308211.50000002
Claim Token84968192025-06-07 13:06:2429 days ago1749301584IN
0x889a2816...86e811889
0 ETH0.00023191.5000425
Claim Agent84816792025-06-05 10:30:1231 days ago1749119412IN
0x889a2816...86e811889
0 ETH0.000001570.00765862
Claim Token84816782025-06-05 10:30:0031 days ago1749119400IN
0x889a2816...86e811889
0 ETH0.000001160.0075371
Claim Agent84676652025-06-03 11:42:4833 days ago1748950968IN
0x889a2816...86e811889
0 ETH0.000000240.00120747
Claim Token84676622025-06-03 11:42:1233 days ago1748950932IN
0x889a2816...86e811889
0 ETH0.000000160.00120715
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer*85137272025-06-09 21:31:4826 days ago1749504708
0x889a2816...86e811889
0 ETH
Transfer*85137272025-06-09 21:31:4826 days ago1749504708
0x889a2816...86e811889
0 ETH
Transfer*85137272025-06-09 21:31:4826 days ago1749504708
0x889a2816...86e811889
0 ETH
Transfer*85040512025-06-08 13:13:3628 days ago1749388416
0x889a2816...86e811889
0 ETH
Transfer*84968192025-06-07 13:06:2429 days ago1749301584
0x889a2816...86e811889
0 ETH
Transfer*84968192025-06-07 13:06:2429 days ago1749301584
0x889a2816...86e811889
0 ETH
Transfer*84968192025-06-07 13:06:2429 days ago1749301584
0x889a2816...86e811889
0 ETH
Transfer*84816792025-06-05 10:30:1231 days ago1749119412
0x889a2816...86e811889
0 ETH
Transfer*84816782025-06-05 10:30:0031 days ago1749119400
0x889a2816...86e811889
0 ETH
Transfer*84816782025-06-05 10:30:0031 days ago1749119400
0x889a2816...86e811889
0 ETH
Transfer*84816782025-06-05 10:30:0031 days ago1749119400
0x889a2816...86e811889
0 ETH
Transfer*84676652025-06-03 11:42:4833 days ago1748950968
0x889a2816...86e811889
0 ETH
Transfer*84676622025-06-03 11:42:1233 days ago1748950932
0x889a2816...86e811889
0 ETH
Transfer*84676622025-06-03 11:42:1233 days ago1748950932
0x889a2816...86e811889
0 ETH
Transfer*84676622025-06-03 11:42:1233 days ago1748950932
0x889a2816...86e811889
0 ETH
Transfer*84498852025-06-01 0:21:3635 days ago1748737296
0x889a2816...86e811889
0 ETH
Transfer*84498582025-06-01 0:16:1235 days ago1748736972
0x889a2816...86e811889
0 ETH
Transfer*84498582025-06-01 0:16:1235 days ago1748736972
0x889a2816...86e811889
0 ETH
Transfer*84498582025-06-01 0:16:1235 days ago1748736972
0x889a2816...86e811889
0 ETH
Transfer*84458062025-05-31 10:44:4836 days ago1748688288
0x889a2816...86e811889
0 ETH
Transfer*84458062025-05-31 10:44:4836 days ago1748688288
0x889a2816...86e811889
0 ETH
Transfer*84458062025-05-31 10:44:4836 days ago1748688288
0x889a2816...86e811889
0 ETH
Transfer*84245812025-05-28 11:52:3639 days ago1748433156
0x889a2816...86e811889
0 ETH
Transfer*84245812025-05-28 11:52:3639 days ago1748433156
0x889a2816...86e811889
0 ETH
Transfer*84245812025-05-28 11:52:3639 days ago1748433156
0x889a2816...86e811889
0 ETH
View All Internal Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Faucet

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
london EvmVersion

Contract Source Code (Solidity Standard Json-Input format)

pragma solidity 0.8.17;

// SPDX-License-Identifier: AGPL-3.0

import "interface/IAgency.sol";

interface token {
    function mint(address to, uint amount) external returns (bool);
}

contract Faucet {
    address public owner;
    token public token0;
    token public token1;
    token public token2;
    IAgency public agency;
    uint constant amount0 = 10000e18; //DYSN
    uint constant amount1 = 25000e6; //USDC
    uint constant amount2 = 1e8; //WBTC

    mapping(address => bool) public tokenClaimed;
    mapping(address => bool) public agentClaimed;

    modifier onlyOwner() {
        require(msg.sender == owner, "FORBIDDEN");
        _;
    }

    constructor(address _owner) {
        owner = _owner;
    }

    function transferOwnership(address _owner) external onlyOwner {
        owner = _owner;
    }

    function set(address _token0, address _token1, address _token2, address _agency) external onlyOwner {
        token0 = token(_token0);
        token1 = token(_token1);
        token2 = token(_token2);
        agency = IAgency(_agency);
    }

    function claimToken() external {
        require(!tokenClaimed[msg.sender]);
        tokenClaimed[msg.sender] = true;
        token0.mint(msg.sender, amount0);
        token1.mint(msg.sender, amount1);
        token2.mint(msg.sender, amount2);
    }

    function claimAgent() external {
        require(!agentClaimed[msg.sender]);
        agentClaimed[msg.sender] = true;
        agency.adminAdd(msg.sender);
    }

}

pragma solidity >=0.8.0;

// SPDX-License-Identifier: MIT

interface IAgency {
    struct Agent {
        address owner;
        uint gen;
        uint birth;
        uint parentId;
        uint[] childrenId;
    }

    event TransferOwnership(address newOwner);
    event Register(uint indexed referrer, uint referee);
    event Sign(address indexed signer, bytes32 digest);

    function REGISTER_ONCE_TYPEHASH() external view returns (bytes32);
    function REGISTER_PARENT_TYPEHASH() external view returns (bytes32);
    function MAX_NUM_CHILDREN() external view returns (uint);
    function REGISTER_DELAY() external view returns (uint);
    function TRANSFER_CD() external view returns (uint);
    function agentNFT() external view returns (address);
    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function whois(address agent) external view returns (uint);
    function oneTimeCodes(address once) external view returns (bool);
    function presign(address agent, bytes32 digest) external view returns (bool);
    function isController(address agent) external view returns (bool);
    function owner() external view returns (address);

    function userInfo(address agent) external view returns (address ref, uint gen);
    function transfer(address from, address to, uint id) external returns (bool);
    function totalSupply() external view returns (uint);
    function getAgent(uint id) external view returns (address, uint, uint, uint, uint[] memory);
    function transferOwnership(address owner) external;
    function addController(address _controller) external;
    function removeController(address _controller) external;
    function rescueERC20(address tokenAddress, address to, uint256 amount) external;
    function adminAdd(address newUser) external returns (uint id);
    function register(bytes memory parentSig, bytes memory onceSig, uint deadline) payable external returns (uint id);
    function sign(bytes32 digest) external;
    function getHashTypedData(bytes32 structHash) external view returns (bytes32);
    function transferCooldown(uint id) external view returns (uint);
}

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

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"agency","outputs":[{"internalType":"contract IAgency","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"agentClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimAgent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token0","type":"address"},{"internalType":"address","name":"_token1","type":"address"},{"internalType":"address","name":"_token2","type":"address"},{"internalType":"address","name":"_agency","type":"address"}],"name":"set","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"token0","outputs":[{"internalType":"contract token","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token1","outputs":[{"internalType":"contract token","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token2","outputs":[{"internalType":"contract token","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tokenClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506040516106a43803806106a483398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b610611806100936000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80634451d89f116100715780634451d89f1461015a5780636ae36841146101645780638da5cb5b1461016c578063d21220a71461017f578063e238d8c214610192578063f2fde38b146101a557600080fd5b80630dfe1681146100ae578063101aa312146100de57806325be124e146101115780633b91ee261461012457806340bfe16b14610137575b600080fd5b6001546100c1906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100ec36600461052a565b60056020526000908152604090205460ff1681565b60405190151581526020016100d5565b6003546100c1906001600160a01b031681565b6004546100c1906001600160a01b031681565b61010161014536600461052a565b60066020526000908152604090205460ff1681565b6101626101b8565b005b610162610365565b6000546100c1906001600160a01b031681565b6002546100c1906001600160a01b031681565b6101626101a036600461054c565b61040b565b6101626101b336600461052a565b6104a6565b3360009081526005602052604090205460ff16156101d557600080fd5b3360008181526005602052604090819020805460ff191660019081179091555490516340c10f1960e01b8152600481019290925269021e19e0c9bab240000060248301526001600160a01b0316906340c10f19906044016020604051808303816000875af115801561024b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026f91906105a0565b506002546040516340c10f1960e01b81523360048201526405d21dba0060248201526001600160a01b03909116906340c10f19906044016020604051808303816000875af11580156102c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e991906105a0565b506003546040516340c10f1960e01b81523360048201526305f5e10060248201526001600160a01b03909116906340c10f19906044016020604051808303816000875af115801561033e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036291906105a0565b50565b3360009081526006602052604090205460ff161561038257600080fd5b3360008181526006602052604090819020805460ff1916600117905560048054915163f269c59560e01b8152908101929092526001600160a01b03169063f269c595906024016020604051808303816000875af11580156103e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036291906105c2565b6000546001600160a01b031633146104565760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b60448201526064015b60405180910390fd5b600180546001600160a01b039586166001600160a01b0319918216179091556002805494861694821694909417909355600380549285169284169290921790915560048054919093169116179055565b6000546001600160a01b031633146104ec5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b604482015260640161044d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b80356001600160a01b038116811461052557600080fd5b919050565b60006020828403121561053c57600080fd5b6105458261050e565b9392505050565b6000806000806080858703121561056257600080fd5b61056b8561050e565b93506105796020860161050e565b92506105876040860161050e565b91506105956060860161050e565b905092959194509250565b6000602082840312156105b257600080fd5b8151801515811461054557600080fd5b6000602082840312156105d457600080fd5b505191905056fea26469706673582212205f3f4c1829db5f702b931a86474c6307cd3f2bc4eb244b3645be803c5eb024fc64736f6c63430008110033000000000000000000000000d87764fcb9067bf36e2da3adad601c4ad86902e1

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80634451d89f116100715780634451d89f1461015a5780636ae36841146101645780638da5cb5b1461016c578063d21220a71461017f578063e238d8c214610192578063f2fde38b146101a557600080fd5b80630dfe1681146100ae578063101aa312146100de57806325be124e146101115780633b91ee261461012457806340bfe16b14610137575b600080fd5b6001546100c1906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100ec36600461052a565b60056020526000908152604090205460ff1681565b60405190151581526020016100d5565b6003546100c1906001600160a01b031681565b6004546100c1906001600160a01b031681565b61010161014536600461052a565b60066020526000908152604090205460ff1681565b6101626101b8565b005b610162610365565b6000546100c1906001600160a01b031681565b6002546100c1906001600160a01b031681565b6101626101a036600461054c565b61040b565b6101626101b336600461052a565b6104a6565b3360009081526005602052604090205460ff16156101d557600080fd5b3360008181526005602052604090819020805460ff191660019081179091555490516340c10f1960e01b8152600481019290925269021e19e0c9bab240000060248301526001600160a01b0316906340c10f19906044016020604051808303816000875af115801561024b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061026f91906105a0565b506002546040516340c10f1960e01b81523360048201526405d21dba0060248201526001600160a01b03909116906340c10f19906044016020604051808303816000875af11580156102c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e991906105a0565b506003546040516340c10f1960e01b81523360048201526305f5e10060248201526001600160a01b03909116906340c10f19906044016020604051808303816000875af115801561033e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036291906105a0565b50565b3360009081526006602052604090205460ff161561038257600080fd5b3360008181526006602052604090819020805460ff1916600117905560048054915163f269c59560e01b8152908101929092526001600160a01b03169063f269c595906024016020604051808303816000875af11580156103e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036291906105c2565b6000546001600160a01b031633146104565760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b60448201526064015b60405180910390fd5b600180546001600160a01b039586166001600160a01b0319918216179091556002805494861694821694909417909355600380549285169284169290921790915560048054919093169116179055565b6000546001600160a01b031633146104ec5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b604482015260640161044d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b80356001600160a01b038116811461052557600080fd5b919050565b60006020828403121561053c57600080fd5b6105458261050e565b9392505050565b6000806000806080858703121561056257600080fd5b61056b8561050e565b93506105796020860161050e565b92506105876040860161050e565b91506105956060860161050e565b905092959194509250565b6000602082840312156105b257600080fd5b8151801515811461054557600080fd5b6000602082840312156105d457600080fd5b505191905056fea26469706673582212205f3f4c1829db5f702b931a86474c6307cd3f2bc4eb244b3645be803c5eb024fc64736f6c63430008110033

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

000000000000000000000000d87764fcb9067bf36e2da3adad601c4ad86902e1

-----Decoded View---------------
Arg [0] : _owner (address): 0xd87764FCB9067BF36E2Da3ADad601C4aD86902e1

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000d87764fcb9067bf36e2da3adad601c4ad86902e1


Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.

OSZAR »