ETH Price: $2,156.14 (+0.40%)

Contract

0x879ccEF70B4ebE4fe57282533e95E4D0B10102CD
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sell Gem233446332025-09-12 4:36:47190 days ago1757651807IN
0x879ccEF7...0B10102CD
0 ETH0.000024050.13864604
Sell Gem232866462025-09-04 2:05:23198 days ago1756951523IN
0x879ccEF7...0B10102CD
0 ETH0.000124410.72904445
Sell Gem232816282025-09-03 9:16:11199 days ago1756890971IN
0x879ccEF7...0B10102CD
0 ETH0.000132880.7787441
Buy Gem232736532025-09-02 6:32:47200 days ago1756794767IN
0x879ccEF7...0B10102CD
0 ETH0.000027830.14303983
Sell Gem232671822025-09-01 8:46:59201 days ago1756716419IN
0x879ccEF7...0B10102CD
0 ETH0.000518563.03868129
Sell Gem232668022025-09-01 7:30:35201 days ago1756711835IN
0x879ccEF7...0B10102CD
0 ETH0.000292791.22480764
Buy Gem232307342025-08-27 6:41:35206 days ago1756276895IN
0x879ccEF7...0B10102CD
0 ETH0.00004290.22048618
Sell Gem232307342025-08-27 6:41:35206 days ago1756276895IN
0x879ccEF7...0B10102CD
0 ETH0.000051640.22048618
Deny232307032025-08-27 6:35:11206 days ago1756276511IN
0x879ccEF7...0B10102CD
0 ETH0.000005060.21806672
Rely232307032025-08-27 6:35:11206 days ago1756276511IN
0x879ccEF7...0B10102CD
0 ETH0.00001030.21806672

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Exit233446332025-09-12 4:36:47190 days ago1757651807
0x879ccEF7...0B10102CD
0 ETH
Move233446332025-09-12 4:36:47190 days ago1757651807
0x879ccEF7...0B10102CD
0 ETH
Frob233446332025-09-12 4:36:47190 days ago1757651807
0x879ccEF7...0B10102CD
0 ETH
Join233446332025-09-12 4:36:47190 days ago1757651807
0x879ccEF7...0B10102CD
0 ETH
File233445762025-09-12 4:25:11190 days ago1757651111
0x879ccEF7...0B10102CD
0 ETH
File233444412025-09-12 3:58:11190 days ago1757649491
0x879ccEF7...0B10102CD
0 ETH
Exit232866462025-09-04 2:05:23198 days ago1756951523
0x879ccEF7...0B10102CD
0 ETH
Move232866462025-09-04 2:05:23198 days ago1756951523
0x879ccEF7...0B10102CD
0 ETH
Frob232866462025-09-04 2:05:23198 days ago1756951523
0x879ccEF7...0B10102CD
0 ETH
Join232866462025-09-04 2:05:23198 days ago1756951523
0x879ccEF7...0B10102CD
0 ETH
Exit232816282025-09-03 9:16:11199 days ago1756890971
0x879ccEF7...0B10102CD
0 ETH
Move232816282025-09-03 9:16:11199 days ago1756890971
0x879ccEF7...0B10102CD
0 ETH
Frob232816282025-09-03 9:16:11199 days ago1756890971
0x879ccEF7...0B10102CD
0 ETH
Join232816282025-09-03 9:16:11199 days ago1756890971
0x879ccEF7...0B10102CD
0 ETH
Move232736532025-09-02 6:32:47200 days ago1756794767
0x879ccEF7...0B10102CD
0 ETH
Exit232736532025-09-02 6:32:47200 days ago1756794767
0x879ccEF7...0B10102CD
0 ETH
Frob232736532025-09-02 6:32:47200 days ago1756794767
0x879ccEF7...0B10102CD
0 ETH
Join232736532025-09-02 6:32:47200 days ago1756794767
0x879ccEF7...0B10102CD
0 ETH
Transfer From232736532025-09-02 6:32:47200 days ago1756794767
0x879ccEF7...0B10102CD
0 ETH
Exit232671822025-09-01 8:46:59201 days ago1756716419
0x879ccEF7...0B10102CD
0 ETH
Move232671822025-09-01 8:46:59201 days ago1756716419
0x879ccEF7...0B10102CD
0 ETH
Frob232671822025-09-01 8:46:59201 days ago1756716419
0x879ccEF7...0B10102CD
0 ETH
Join232671822025-09-01 8:46:59201 days ago1756716419
0x879ccEF7...0B10102CD
0 ETH
Exit232668022025-09-01 7:30:35201 days ago1756711835
0x879ccEF7...0B10102CD
0 ETH
Move232668022025-09-01 7:30:35201 days ago1756711835
0x879ccEF7...0B10102CD
0 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain 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

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

Contract Name:
UsddPsm

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 200 runs

Other Settings:
istanbul EvmVersion

Contract Source Code (Solidity Standard Json-Input format)

// SPDX-License-Identifier: AGPL-3.0-or-later
pragma solidity ^0.6.12;

import {UsddJoinAbstract} from "dss-interfaces/dss/UsddJoinAbstract.sol";
import {UsddAbstract} from "dss-interfaces/dss/UsddAbstract.sol";
import {VatAbstract} from "dss-interfaces/dss/VatAbstract.sol";

interface AuthGemJoinAbstract {
    function dec() external view returns (uint256);

    function vat() external view returns (address);

    function ilk() external view returns (bytes32);

    function join(address, uint256, address) external;

    function exit(address, uint256) external;
}

// USDD Peg Stability Module for USDT
contract UsddPsm {

    // --- Auth ---
    mapping(address => uint256) public wards;

    function rely(address usr) external auth {wards[usr] = 1;
        emit Rely(usr);}

    function deny(address usr) external auth {wards[usr] = 0;
        emit Deny(usr);}
    modifier auth {require(wards[msg.sender] == 1, "UsddPsm/not-authorized");
        _;}

    VatAbstract immutable public vat;
    AuthGemJoinAbstract immutable public gemJoin;   // Stablecoin Join adapter
    UsddAbstract immutable public usdd;             // USDD token
    UsddJoinAbstract immutable public usddJoin;     // USDD Join adapter
    bytes32 immutable public ilk;                   // Collateral type
    address immutable public vow;                   // System treasury

    uint256 immutable internal to18ConversionFactor;

    // --- State Variables ---
    uint256 public tin;         // Fee in [wad]
    uint256 public tout;        // Fee out [wad]
    uint256 public sellEnabled; // Stablecoin -> USDD enabled
    uint256 public buyEnabled;  // USDD -> Stablecoin enabled

    // --- Events ---
    event Rely(address indexed usr);
    event Deny(address indexed usr);
    event File(bytes32 indexed what, uint256 data);
    event SellGem(address indexed owner, uint256 value, uint256 fee);
    event BuyGem(address indexed owner, uint256 value, uint256 fee);

    // --- Init ---
    constructor(
        address gemJoin_,    // Stablecoin Join adapter
        address usddJoin_,   // USDD Join adapter
        address vow_         // System treasury
    ) public {
        wards[msg.sender] = 1;
        emit Rely(msg.sender);

        AuthGemJoinAbstract gemJoin__ = gemJoin = AuthGemJoinAbstract(gemJoin_);
        UsddJoinAbstract usddJoin__ = usddJoin = UsddJoinAbstract(usddJoin_);
        VatAbstract vat__ = vat = VatAbstract(address(gemJoin__.vat()));
        UsddAbstract usdd__ = usdd = UsddAbstract(address(usddJoin__.usdd()));

        ilk = gemJoin__.ilk();
        vow = vow_;

        // Handle decimals conversion
        to18ConversionFactor = 10 ** (18 - gemJoin__.dec());

        // Set initial state
        sellEnabled = 1;  // Enable by default
        buyEnabled = 1;   // Enable by default

        // Approve max amount for USDD transfers
        usdd__.approve(usddJoin_, uint256(-1));
        vat__.hope(usddJoin_);
    }

    // --- Math ---
    uint256 constant WAD = 10 ** 18;
    uint256 constant RAY = 10 ** 27;

    function add(uint256 x, uint256 y) internal pure returns (uint256 z) {
        require((z = x + y) >= x, "UsddPsm/add-overflow");
    }

    function sub(uint256 x, uint256 y) internal pure returns (uint256 z) {
        require((z = x - y) <= x, "UsddPsm/sub-underflow");
    }

    function mul(uint256 x, uint256 y) internal pure returns (uint256 z) {
        require(y == 0 || (z = x * y) / y == x, "UsddPsm/mul-overflow");
    }

    // --- Administration ---
    function file(bytes32 what, uint256 data) external auth {
        if (what == "tin") tin = data;
        else if (what == "tout") tout = data;
        else if (what == "sellEnabled") {
            sellEnabled = data;
        }
        else if (what == "buyEnabled") {
            buyEnabled = data;
        }
        else revert("UsddPsm/file-unrecognized-param");

        emit File(what, data);
    }

    // --- Upgrade Path ---
    function hope(address usr) external auth {
        vat.hope(usr);
    }

    function nope(address usr) external auth {
        vat.nope(usr);
    }

    // --- Primary Functions ---

    // Sell USDT for USDD
    function sellGem(address usr, uint256 gemAmt) external {
        require(sellEnabled == 1, "UsddPsm/sell-not-enabled");

        uint256 gemAmt18 = mul(gemAmt, to18ConversionFactor);
        uint256 fee = mul(gemAmt18, tin) / WAD;
        uint256 usddAmt = sub(gemAmt18, fee);

        // Transfer USDT in and mint USDD
        gemJoin.join(address(this), gemAmt, msg.sender);
        vat.frob(ilk, address(this), address(this), address(this), int256(gemAmt18), int256(gemAmt18));

        // Send fee to system treasury
        vat.move(address(this), vow, mul(fee, RAY));

        // Send USDD to user
        usddJoin.exit(usr, usddAmt);

        emit SellGem(usr, gemAmt, fee);
    }

    // Buy USDT with USDD
    function buyGem(address usr, uint256 gemAmt) external {
        require(buyEnabled == 1, "UsddPsm/buy-not-enabled");

        uint256 gemAmt18 = mul(gemAmt, to18ConversionFactor);
        uint256 fee = mul(gemAmt18, tout) / WAD;
        uint256 usddAmt = add(gemAmt18, fee);

        // Transfer USDD in
        require(usdd.transferFrom(msg.sender, address(this), usddAmt), "UsddPsm/failed-transfer");
        usddJoin.join(address(this), usddAmt);

        // Burn USDD and release USDT
        vat.frob(ilk, address(this), address(this), address(this), - int256(gemAmt18), - int256(gemAmt18));
        gemJoin.exit(usr, gemAmt);

        // Send fee to system treasury
        vat.move(address(this), vow, mul(fee, RAY));

        emit BuyGem(usr, gemAmt, fee);
    }
}

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

interface UsddJoinAbstract {
    function wards(address) external view returns (uint256);
    function rely(address usr) external;
    function deny(address usr) external;
    function vat() external view returns (address);
    function usdd() external view returns (address);
    function live() external view returns (uint256);
    function cage() external;
    function join(address, uint256) external;
    function exit(address, uint256) external;
}

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

interface UsddAbstract {
    function wards(address) external view returns (uint256);
    function rely(address) external;
    function deny(address) external;
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function version() external view returns (string memory);
    function decimals() external view returns (uint8);
    function totalSupply() external view returns (uint256);
    function balanceOf(address) external view returns (uint256);
    function allowance(address, address) external view returns (uint256);
    function nonces(address) external view returns (uint256);
    function DOMAIN_SEPARATOR() external view returns (bytes32);
    function PERMIT_TYPEHASH() external view returns (bytes32);
    function transfer(address, uint256) external returns (bool);
    function transferFrom(address, address, uint256) external returns (bool);
    function mint(address, uint256) external;
    function burn(address, uint256) external;
    function approve(address, uint256) external returns (bool);
    function push(address, uint256) external;
    function pull(address, uint256) external;
    function move(address, address, uint256) external;
    function permit(address, address, uint256, uint256, bool, uint8, bytes32, bytes32) external;
}

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

interface VatAbstract {
    function wards(address) external view returns (uint256);
    function rely(address) external;
    function deny(address) external;
    function can(address, address) external view returns (uint256);
    function hope(address) external;
    function nope(address) external;
    function ilks(bytes32) external view returns (uint256, uint256, uint256, uint256, uint256);
    function urns(bytes32, address) external view returns (uint256, uint256);
    function gem(bytes32, address) external view returns (uint256);
    function dai(address) external view returns (uint256);
    function sin(address) external view returns (uint256);
    function debt() external view returns (uint256);
    function vice() external view returns (uint256);
    function Line() external view returns (uint256);
    function live() external view returns (uint256);
    function init(bytes32) external;
    function file(bytes32, uint256) external;
    function file(bytes32, bytes32, uint256) external;
    function cage() external;
    function slip(bytes32, address, int256) external;
    function flux(bytes32, address, address, uint256) external;
    function move(address, address, uint256) external;
    function frob(bytes32, address, address, address, int256, int256) external;
    function fork(bytes32, address, address, int256, int256) external;
    function grab(bytes32, address, address, address, int256, int256) external;
    function heal(uint256) external;
    function suck(address, address, uint256) external;
    function fold(bytes32, address, int256) external;
}

Settings
{
  "remappings": [
    "ds-test/=lib/ds-auth/lib/ds-test/src/",
    "ds-thing/=lib/ds-value/lib/ds-thing/src/",
    "ds-value/=lib/ds-value/src/",
    "forge-std/=lib/forge-std/src/",
    "psm/=lib/psm/src/",
    "ds-token/=lib/ds-token/src/",
    "ds-auth/=lib/ds-auth/src/",
    "erc4626-tests/=lib/erc4626-tests/",
    "ds-math/=lib/ds-token/lib/ds-math/src/",
    "ds-note/=lib/ds-value/lib/ds-thing/lib/ds-note/src/",
    "dss-interfaces/=lib/psm/lib/dss-interfaces/src/",
    "usddv2/=lib/psm/lib/usddv2/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "istanbul"
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"gemJoin_","type":"address"},{"internalType":"address","name":"usddJoin_","type":"address"},{"internalType":"address","name":"vow_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"BuyGem","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Deny","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"what","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"data","type":"uint256"}],"name":"File","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Rely","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"SellGem","type":"event"},{"inputs":[],"name":"buyEnabled","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"},{"internalType":"uint256","name":"gemAmt","type":"uint256"}],"name":"buyGem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"deny","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"what","type":"bytes32"},{"internalType":"uint256","name":"data","type":"uint256"}],"name":"file","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"gemJoin","outputs":[{"internalType":"contract AuthGemJoinAbstract","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"hope","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ilk","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"nope","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"rely","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellEnabled","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"},{"internalType":"uint256","name":"gemAmt","type":"uint256"}],"name":"sellGem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"tin","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tout","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"usdd","outputs":[{"internalType":"contract UsddAbstract","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"usddJoin","outputs":[{"internalType":"contract UsddJoinAbstract","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"vat","outputs":[{"internalType":"contract VatAbstract","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"vow","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

0x6101606040523480156200001257600080fd5b506040516200162f3803806200162f833981810160405260608110156200003857600080fd5b508051602080830151604093840151336000818152938490528584206001905594519394919390927fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a6091a26000836001600160a01b031660a0816001600160a01b031660601b81525090506000836001600160a01b031660e0816001600160a01b031660601b81525090506000826001600160a01b03166336569e776040518163ffffffff1660e01b815260040160206040518083038186803b158015620000ff57600080fd5b505afa15801562000114573d6000803e3d6000fd5b505050506040513d60208110156200012b57600080fd5b50516001600160601b0319606082901b16608052604080516306185e0160e11b815290516001600160a01b039283169350600092851691630c30bc02916004808301926020929190829003018186803b1580156200018857600080fd5b505afa1580156200019d573d6000803e3d6000fd5b505050506040513d6020811015620001b457600080fd5b50516001600160601b0319606082901b1660c052604080516362e7140f60e11b815290516001600160a01b0392831693509186169163c5ce281e91600480820192602092909190829003018186803b1580156200021057600080fd5b505afa15801562000225573d6000803e3d6000fd5b505050506040513d60208110156200023c57600080fd5b5051610100526001600160601b0319606086901b1661012052604080516359de7d4160e11b815290516001600160a01b0386169163b3bcfa82916004808301926020929190829003018186803b1580156200029657600080fd5b505afa158015620002ab573d6000803e3d6000fd5b505050506040513d6020811015620002c257600080fd5b5051601203600a0a610140526001600381905560049081556040805163095ea7b360e01b81526001600160a01b0389811693820193909352600019602482015290519183169163095ea7b3916044808201926020929091908290030181600087803b1580156200033157600080fd5b505af115801562000346573d6000803e3d6000fd5b505050506040513d60208110156200035d57600080fd5b5050604080516328ec8bf160e21b81526001600160a01b03888116600483015291519184169163a3b22fc49160248082019260009290919082900301818387803b158015620003ab57600080fd5b505af1158015620003c0573d6000803e3d6000fd5b505050505050505050505060805160601c60a05160601c60c05160601c60e05160601c610100516101205160601c610140516111b16200047e600039806105c55280610a645250806104a252806109155280610c3a5250806107a25280610b555280610f555250806107355280610cdf5280610f795250806102fa52806106485250806102d652806108565280610ae752508061047252806107f752806108e55280610ba75280610c0a5280610eb95280610ffa52506111b16000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806395991276116100a2578063c5ce281e11610071578063c5ce281e1461028e578063c78d6d2114610296578063dc4d20fa1461029e578063f582d293146102c4578063fae036d5146102cc57610116565b806395991276146101f05780639c52a7f11461021c578063a3b22fc414610242578063bf353dbb1461026857610116565b8063568d4b6f116100e9578063568d4b6f1461017457806358197a9d1461018e578063626cb3c51461019657806365fae35e1461019e5780638d7ef9bb146101c457610116565b806301664f661461011b5780630c30bc021461013f57806329ae81141461014757806336569e771461016c575b600080fd5b6101236102d4565b604080516001600160a01b039092168252519081900360200190f35b6101236102f8565b61016a6004803603604081101561015d57600080fd5b508035906020013561031c565b005b610123610470565b61017c610494565b60408051918252519081900360200190f35b61017c61049a565b6101236104a0565b61016a600480360360208110156101b457600080fd5b50356001600160a01b03166104c4565b61016a600480360360408110156101da57600080fd5b506001600160a01b038135169060200135610566565b61016a6004803603604081101561020657600080fd5b506001600160a01b038135169060200135610a05565b61016a6004803603602081101561023257600080fd5b50356001600160a01b0316610db9565b61016a6004803603602081101561025857600080fd5b50356001600160a01b0316610e5a565b61017c6004803603602081101561027e57600080fd5b50356001600160a01b0316610f41565b61017c610f53565b610123610f77565b61016a600480360360208110156102b457600080fd5b50356001600160a01b0316610f9b565b61017c611067565b61017c61106d565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b33600090815260208190526040902054600114610379576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b81623a34b760e91b1415610391576001819055610436565b81631d1bdd5d60e21b14156103aa576002819055610436565b816a1cd95b1b115b98589b195960aa1b14156103ca576003819055610436565b8169189d5e515b98589b195960b21b14156103e9576004819055610436565b6040805162461bcd60e51b815260206004820152601f60248201527f5573646450736d2f66696c652d756e7265636f676e697a65642d706172616d00604482015290519081900360640190fd5b60408051828152905183917fe986e40cc8c151830d4f61050f4fb2e4add8567caad2d5f5496f9158e91fe4c7919081900360200190a25050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60015481565b60035481565b7f000000000000000000000000000000000000000000000000000000000000000081565b33600090815260208190526040902054600114610521576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b6001600160a01b03811660008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a250565b6004546001146105bd576040805162461bcd60e51b815260206004820152601760248201527f5573646450736d2f6275792d6e6f742d656e61626c6564000000000000000000604482015290519081900360640190fd5b60006105e9827f0000000000000000000000000000000000000000000000000000000000000000611073565b90506000670de0b6b3a764000061060283600254611073565b8161060957fe5b049050600061061883836110dc565b604080516323b872dd60e01b81523360048201523060248201526044810183905290519192506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916323b872dd916064808201926020929091908290030181600087803b15801561069157600080fd5b505af11580156106a5573d6000803e3d6000fd5b505050506040513d60208110156106bb57600080fd5b505161070e576040805162461bcd60e51b815260206004820152601760248201527f5573646450736d2f6661696c65642d7472616e73666572000000000000000000604482015290519081900360640190fd5b60408051633b4da69f60e01b81523060048201526024810183905290516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691633b4da69f91604480830192600092919082900301818387803b15801561077c57600080fd5b505af1158015610790573d6000803e3d6000fd5b505060408051637608870360e01b81527f00000000000000000000000000000000000000000000000000000000000000006004820152306024820181905260448201819052606482015260008781036084830181905260a483015291516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001694506376088703935060c4808301939282900301818387803b15801561083c57600080fd5b505af1158015610850573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ef693bed86866040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156108cb57600080fd5b505af11580156108df573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663bb35783b307f000000000000000000000000000000000000000000000000000000000000000061094a866b033b2e3c9fd0803ce8000000611073565b6040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156109a057600080fd5b505af11580156109b4573d6000803e3d6000fd5b5050604080518781526020810186905281516001600160a01b038a1694507f085d06ecf4c34b237767a31c0888e121d89546a77f186f1987c6b8715e1a8caa93509081900390910190a25050505050565b600354600114610a5c576040805162461bcd60e51b815260206004820152601860248201527f5573646450736d2f73656c6c2d6e6f742d656e61626c65640000000000000000604482015290519081900360640190fd5b6000610a88827f0000000000000000000000000000000000000000000000000000000000000000611073565b90506000670de0b6b3a7640000610aa183600154611073565b81610aa857fe5b0490506000610ab7838361112b565b6040805163d14b1e4b60e01b81523060048201526024810187905233604482015290519192506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169163d14b1e4b9160648082019260009290919082900301818387803b158015610b2f57600080fd5b505af1158015610b43573d6000803e3d6000fd5b505060408051637608870360e01b81527f0000000000000000000000000000000000000000000000000000000000000000600482015230602482018190526044820181905260648201526084810187905260a4810187905290516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001693506376088703925060c480830192600092919082900301818387803b158015610bf057600080fd5b505af1158015610c04573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663bb35783b307f0000000000000000000000000000000000000000000000000000000000000000610c6f866b033b2e3c9fd0803ce8000000611073565b6040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050600060405180830381600087803b158015610cc557600080fd5b505af1158015610cd9573d6000803e3d6000fd5b505050507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ef693bed86836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610d5457600080fd5b505af1158015610d68573d6000803e3d6000fd5b5050604080518781526020810186905281516001600160a01b038a1694507fef75f5a47cc9a929968796ceb84f19e7541617b4577f2c228ea95200e157208193509081900390910190a25050505050565b33600090815260208190526040902054600114610e16576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b6001600160a01b038116600081815260208190526040808220829055517f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b9190a250565b33600090815260208190526040902054600114610eb7576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a3b22fc4826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b158015610f2657600080fd5b505af1158015610f3a573d6000803e3d6000fd5b5050505050565b60006020819052908152604090205481565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b33600090815260208190526040902054600114610ff8576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663dc4d20fa826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b158015610f2657600080fd5b60045481565b60025481565b600081158061108e5750508082028282828161108b57fe5b04145b6110d6576040805162461bcd60e51b81526020600482015260146024820152735573646450736d2f6d756c2d6f766572666c6f7760601b604482015290519081900360640190fd5b92915050565b808201828110156110d6576040805162461bcd60e51b81526020600482015260146024820152735573646450736d2f6164642d6f766572666c6f7760601b604482015290519081900360640190fd5b808203828111156110d6576040805162461bcd60e51b81526020600482015260156024820152745573646450736d2f7375622d756e646572666c6f7760581b604482015290519081900360640190fdfea2646970667358221220f62ae3146c8dab573c5e96800fb709ffb61d3554aacfedd1bfb7a8e3238a698f64736f6c634300060c00330000000000000000000000008aa5c3ffb718ef612748783c9f850f261ad0bcc9000000000000000000000000506d1c1a826f94f74e78529dbbed01cc55893db80000000000000000000000007e3f8ddd5d7e948beaf4aa62bf00f46c1e6fafaf

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101165760003560e01c806395991276116100a2578063c5ce281e11610071578063c5ce281e1461028e578063c78d6d2114610296578063dc4d20fa1461029e578063f582d293146102c4578063fae036d5146102cc57610116565b806395991276146101f05780639c52a7f11461021c578063a3b22fc414610242578063bf353dbb1461026857610116565b8063568d4b6f116100e9578063568d4b6f1461017457806358197a9d1461018e578063626cb3c51461019657806365fae35e1461019e5780638d7ef9bb146101c457610116565b806301664f661461011b5780630c30bc021461013f57806329ae81141461014757806336569e771461016c575b600080fd5b6101236102d4565b604080516001600160a01b039092168252519081900360200190f35b6101236102f8565b61016a6004803603604081101561015d57600080fd5b508035906020013561031c565b005b610123610470565b61017c610494565b60408051918252519081900360200190f35b61017c61049a565b6101236104a0565b61016a600480360360208110156101b457600080fd5b50356001600160a01b03166104c4565b61016a600480360360408110156101da57600080fd5b506001600160a01b038135169060200135610566565b61016a6004803603604081101561020657600080fd5b506001600160a01b038135169060200135610a05565b61016a6004803603602081101561023257600080fd5b50356001600160a01b0316610db9565b61016a6004803603602081101561025857600080fd5b50356001600160a01b0316610e5a565b61017c6004803603602081101561027e57600080fd5b50356001600160a01b0316610f41565b61017c610f53565b610123610f77565b61016a600480360360208110156102b457600080fd5b50356001600160a01b0316610f9b565b61017c611067565b61017c61106d565b7f0000000000000000000000008aa5c3ffb718ef612748783c9f850f261ad0bcc981565b7f0000000000000000000000008cf988ae191a6000e7c65079a46b087c7d98446381565b33600090815260208190526040902054600114610379576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b81623a34b760e91b1415610391576001819055610436565b81631d1bdd5d60e21b14156103aa576002819055610436565b816a1cd95b1b115b98589b195960aa1b14156103ca576003819055610436565b8169189d5e515b98589b195960b21b14156103e9576004819055610436565b6040805162461bcd60e51b815260206004820152601f60248201527f5573646450736d2f66696c652d756e7265636f676e697a65642d706172616d00604482015290519081900360640190fd5b60408051828152905183917fe986e40cc8c151830d4f61050f4fb2e4add8567caad2d5f5496f9158e91fe4c7919081900360200190a25050565b7f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd45381565b60015481565b60035481565b7f0000000000000000000000007e3f8ddd5d7e948beaf4aa62bf00f46c1e6fafaf81565b33600090815260208190526040902054600114610521576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b6001600160a01b03811660008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a250565b6004546001146105bd576040805162461bcd60e51b815260206004820152601760248201527f5573646450736d2f6275792d6e6f742d656e61626c6564000000000000000000604482015290519081900360640190fd5b60006105e9827f000000000000000000000000000000000000000000000000000000e8d4a51000611073565b90506000670de0b6b3a764000061060283600254611073565b8161060957fe5b049050600061061883836110dc565b604080516323b872dd60e01b81523360048201523060248201526044810183905290519192506001600160a01b037f0000000000000000000000008cf988ae191a6000e7c65079a46b087c7d98446316916323b872dd916064808201926020929091908290030181600087803b15801561069157600080fd5b505af11580156106a5573d6000803e3d6000fd5b505050506040513d60208110156106bb57600080fd5b505161070e576040805162461bcd60e51b815260206004820152601760248201527f5573646450736d2f6661696c65642d7472616e73666572000000000000000000604482015290519081900360640190fd5b60408051633b4da69f60e01b81523060048201526024810183905290516001600160a01b037f000000000000000000000000506d1c1a826f94f74e78529dbbed01cc55893db81691633b4da69f91604480830192600092919082900301818387803b15801561077c57600080fd5b505af1158015610790573d6000803e3d6000fd5b505060408051637608870360e01b81527f50534d2d555344432d41000000000000000000000000000000000000000000006004820152306024820181905260448201819052606482015260008781036084830181905260a483015291516001600160a01b037f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd4531694506376088703935060c4808301939282900301818387803b15801561083c57600080fd5b505af1158015610850573d6000803e3d6000fd5b505050507f0000000000000000000000008aa5c3ffb718ef612748783c9f850f261ad0bcc96001600160a01b031663ef693bed86866040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156108cb57600080fd5b505af11580156108df573d6000803e3d6000fd5b505050507f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd4536001600160a01b031663bb35783b307f0000000000000000000000007e3f8ddd5d7e948beaf4aa62bf00f46c1e6fafaf61094a866b033b2e3c9fd0803ce8000000611073565b6040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050600060405180830381600087803b1580156109a057600080fd5b505af11580156109b4573d6000803e3d6000fd5b5050604080518781526020810186905281516001600160a01b038a1694507f085d06ecf4c34b237767a31c0888e121d89546a77f186f1987c6b8715e1a8caa93509081900390910190a25050505050565b600354600114610a5c576040805162461bcd60e51b815260206004820152601860248201527f5573646450736d2f73656c6c2d6e6f742d656e61626c65640000000000000000604482015290519081900360640190fd5b6000610a88827f000000000000000000000000000000000000000000000000000000e8d4a51000611073565b90506000670de0b6b3a7640000610aa183600154611073565b81610aa857fe5b0490506000610ab7838361112b565b6040805163d14b1e4b60e01b81523060048201526024810187905233604482015290519192506001600160a01b037f0000000000000000000000008aa5c3ffb718ef612748783c9f850f261ad0bcc9169163d14b1e4b9160648082019260009290919082900301818387803b158015610b2f57600080fd5b505af1158015610b43573d6000803e3d6000fd5b505060408051637608870360e01b81527f50534d2d555344432d4100000000000000000000000000000000000000000000600482015230602482018190526044820181905260648201526084810187905260a4810187905290516001600160a01b037f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd4531693506376088703925060c480830192600092919082900301818387803b158015610bf057600080fd5b505af1158015610c04573d6000803e3d6000fd5b505050507f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd4536001600160a01b031663bb35783b307f0000000000000000000000007e3f8ddd5d7e948beaf4aa62bf00f46c1e6fafaf610c6f866b033b2e3c9fd0803ce8000000611073565b6040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050600060405180830381600087803b158015610cc557600080fd5b505af1158015610cd9573d6000803e3d6000fd5b505050507f000000000000000000000000506d1c1a826f94f74e78529dbbed01cc55893db86001600160a01b031663ef693bed86836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015610d5457600080fd5b505af1158015610d68573d6000803e3d6000fd5b5050604080518781526020810186905281516001600160a01b038a1694507fef75f5a47cc9a929968796ceb84f19e7541617b4577f2c228ea95200e157208193509081900390910190a25050505050565b33600090815260208190526040902054600114610e16576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b6001600160a01b038116600081815260208190526040808220829055517f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b9190a250565b33600090815260208190526040902054600114610eb7576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b7f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd4536001600160a01b031663a3b22fc4826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b158015610f2657600080fd5b505af1158015610f3a573d6000803e3d6000fd5b5050505050565b60006020819052908152604090205481565b7f50534d2d555344432d410000000000000000000000000000000000000000000081565b7f000000000000000000000000506d1c1a826f94f74e78529dbbed01cc55893db881565b33600090815260208190526040902054600114610ff8576040805162461bcd60e51b8152602060048201526016602482015275155cd919141cdb4bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b7f00000000000000000000000062ee80cb1e96b113b5aea31f1c6fcb9ae64fd4536001600160a01b031663dc4d20fa826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b158015610f2657600080fd5b60045481565b60025481565b600081158061108e5750508082028282828161108b57fe5b04145b6110d6576040805162461bcd60e51b81526020600482015260146024820152735573646450736d2f6d756c2d6f766572666c6f7760601b604482015290519081900360640190fd5b92915050565b808201828110156110d6576040805162461bcd60e51b81526020600482015260146024820152735573646450736d2f6164642d6f766572666c6f7760601b604482015290519081900360640190fd5b808203828111156110d6576040805162461bcd60e51b81526020600482015260156024820152745573646450736d2f7375622d756e646572666c6f7760581b604482015290519081900360640190fdfea2646970667358221220f62ae3146c8dab573c5e96800fb709ffb61d3554aacfedd1bfb7a8e3238a698f64736f6c634300060c0033

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.