ETH Price: $2,090.16 (+0.20%)

Contract

0x5ED64bF0764202bE868b5DF2DeDA467Ae12c925F
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Claim V1Retroact...246550382026-03-14 10:10:5914 hrs ago1773483059IN
0x5ED64bF0...Ae12c925F
0 ETH0.000001950.03868896
Claim V1Retroact...246469012026-03-13 6:57:3541 hrs ago1773385055IN
0x5ED64bF0...Ae12c925F
0 ETH0.000047140.93517498
VIEW ADVANCED FILTER
Age:7D
Reset Filter

Advanced mode:
Parent Transaction Hash Method Block
From
To

There are no matching entries

Update your filters to view other transactions

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 0x6d66765f...D6B05EBae
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
YmtVesting

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

pragma solidity 0.8.4;

/*
 * SPDX-License-Identifier: GPL-3.0-or-later
 * Copyright (C) 2024 Yamato Protocol (DeFiGeek Community Japan)
 */

import "./Interfaces/IYMT.sol";

/**
 * @title YMT Vesting
 * @dev This contract manages the vesting of YMT tokens.
 */
contract YmtVesting {
    // Events
    event YmtAddressSet(address ymt);
    event AdminAddressSet(address admin);
    event ClaimAmountSet(address user, uint256 amount);

    // Constants
    uint256 private constant YEAR = 365 days;
    uint256 private constant VESTING_AMOUNT = 100_000_000 * 10 ** 18; // 100,000,000 YMT
    uint256 private constant LINEAR_DISTRIBUTION_DURATION = 5 * YEAR;
    uint256 private constant LINEAR_DISTRIBUTION_RATE =
        VESTING_AMOUNT / LINEAR_DISTRIBUTION_DURATION;

    // State variables
    address public ymtTokenAddress;
    address public contractAdmin;
    uint256 public totalLinearDistributionClaimed;
    bool public isClaimed;

    // Vesting mapping
    mapping(address => uint256) public vestingAmounts;
    mapping(address => uint256) public claimedAmounts;

    // Constructor
    constructor() {
        contractAdmin = msg.sender;
    }

    /**
     * @notice Sets a new admin for the contract.
     * @param newAdmin The address of the new admin.
     */
    function setAdmin(address newAdmin) external onlyAdmin {
        require(newAdmin != address(0), "Invalid admin address");
        contractAdmin = newAdmin;
        emit AdminAddressSet(newAdmin);
    }

    /**
     * @notice Sets the YMT token address.
     * @param ymtToken The address of the YMT token.
     */
    function setYmtToken(address ymtToken) external onlyAdmin {
        require(ymtToken != address(0), "Invalid YMT token address");
        ymtTokenAddress = ymtToken;
        emit YmtAddressSet(ymtToken);
    }

    /**
     * @notice Sets the claim amount for a user.
     * @param user The address of the user.
     * @param amount The amount of tokens to be claimed.
     */
    function setClaimAmount(address user, uint256 amount) external onlyAdmin {
        require(user != address(0), "Invalid user address");
        vestingAmounts[user] = amount;
        emit ClaimAmountSet(user, amount);
    }

    /**
     * @notice Sets claim amounts for multiple users.
     * @param users Array of user addresses.
     * @param amounts Array of claim amounts for each user.
     */
    function setMultipleClaimAmounts(
        address[] calldata users,
        uint256[] calldata amounts
    ) external onlyAdmin {
        require(
            users.length == amounts.length,
            "Users and amounts length mismatch"
        );

        for (uint256 i = 0; i < users.length; ++i) {
            require(users[i] != address(0), "Invalid user address");
            vestingAmounts[users[i]] = amounts[i];
            emit ClaimAmountSet(users[i], amounts[i]);
        }
    }

    /**
     * @notice Allows users to claim their V1 Retroactive Rewards based on a one-year linear vesting schedule.
     * @dev Calculates the claimable amount based on the time elapsed since the distribution start, then transfers the tokens to the user's address. Any unclaimed amount from the previous claims is considered.
     */
    function claimV1RetroactiveRewards() external returns (uint256) {
        require(vestingAmounts[msg.sender] > 0, "No tokens to claim");
        uint256 distributionStart = IYMT(ymtTokenAddress).startTime();
        uint256 timeElapsed = block.timestamp - distributionStart;
        uint256 claimableAmount;
        if (block.timestamp >= distributionStart + YEAR) {
            claimableAmount = vestingAmounts[msg.sender];
        } else {
            claimableAmount = (timeElapsed * vestingAmounts[msg.sender]) / YEAR;
        }
        uint256 availableToClaim = claimableAmount - claimedAmounts[msg.sender];
        require(availableToClaim > 0, "No tokens available to claim");
        claimedAmounts[msg.sender] += availableToClaim;
        IYMT(ymtTokenAddress).transfer(msg.sender, availableToClaim);
        return availableToClaim;
    }

    /**
     * @notice Allows the admin to claim tokens from five-year linear distribution.
     * @dev Transfers claimable tokens to the admin address.
     */
    function claimFiveYearVestingTokens() external onlyAdmin {
        require(
            totalLinearDistributionClaimed < VESTING_AMOUNT,
            "All tokens have already been claimed"
        );

        uint256 distributionStart = IYMT(ymtTokenAddress).startTime();
        uint256 timeElapsed = block.timestamp - distributionStart;
        uint256 claimableAmount;
        if (
            block.timestamp >= distributionStart + LINEAR_DISTRIBUTION_DURATION
        ) {
            claimableAmount = VESTING_AMOUNT;
        } else {
            claimableAmount = timeElapsed * LINEAR_DISTRIBUTION_RATE;
        }
        uint256 availableToClaim = claimableAmount -
            totalLinearDistributionClaimed;
        totalLinearDistributionClaimed += availableToClaim;
        IYMT(ymtTokenAddress).transfer(contractAdmin, availableToClaim);
    }

    /**
     * @notice Allows the admin to claim tokens from two-year vesting period.
     * @dev Transfers claimable tokens to the admin address.
     */
    function claimTwoYearVestingTokens() external onlyAdmin {
        uint256 distributionStart = IYMT(ymtTokenAddress).startTime();
        require(
            distributionStart + 2 * YEAR < block.timestamp,
            "Distribution period has ended"
        );
        require(!isClaimed, "All tokens have already been claimed");
        isClaimed = true;
        IYMT(ymtTokenAddress).transfer(contractAdmin, VESTING_AMOUNT);
    }

    // Modifier
    modifier onlyAdmin() {
        require(msg.sender == contractAdmin, "Caller is not the admin");
        _;
    }
}

pragma solidity 0.8.4;

/*
 * SPDX-License-Identifier: GPL-3.0-or-later
 * Copyright (C) 2024 Yamato Protocol (DeFiGeek Community Japan)
 */

//solhint-disable max-line-length
//solhint-disable no-inline-assembly

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IYMT {
    /**
     * @dev mint token for recipient. Assuming onlyGovernance
     */
    function mint(address to_, uint256 value_) external returns (bool);

    function decimals() external view returns (uint8);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function approve(address spender_, uint256 value_) external;

    function rate() external view returns (uint256);

    function futureEpochTimeWrite() external returns (uint256);

    function startTime() external view returns (uint256);
}

Settings
{
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "optimizer": {
    "enabled": true,
    "runs": 1000
  },
  "metadata": {
    "useLiteralContent": true
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"admin","type":"address"}],"name":"AdminAddressSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"ClaimAmountSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"ymt","type":"address"}],"name":"YmtAddressSet","type":"event"},{"inputs":[],"name":"claimFiveYearVestingTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTwoYearVestingTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimV1RetroactiveRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"claimedAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isClaimed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setClaimAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"setMultipleClaimAmounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"ymtToken","type":"address"}],"name":"setYmtToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalLinearDistributionClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"vestingAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ymtTokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

0x608060405234801561001057600080fd5b50600180546001600160a01b031916331790556110ea806100326000396000f3fe608060405234801561001057600080fd5b50600436106100df5760003560e01c80636346a8c51161008c578063779552451161006657806377955245146101b25780639a91722f146101dd578063a495372a146101e5578063e58b4fc5146101ee57600080fd5b80636346a8c514610177578063704b6c021461017f57806371417b321461019257600080fd5b8063255bd3ac116100bd578063255bd3ac1461013f57806357c9ca14146101475780635dd67c6d1461016457600080fd5b80630f75327f146100e45780630f8fac0314610117578063215975f61461012c575b600080fd5b6101046100f2366004610f2a565b60046020526000908152604090205481565b6040519081526020015b60405180910390f35b61012a610125366004610f2a565b610201565b005b61012a61013a366004610f74565b610312565b61012a6105a4565b6003546101549060ff1681565b604051901515815260200161010e565b61012a610172366004610f4b565b6107ec565b6101046108ee565b61012a61018d366004610f2a565b610b57565b6101046101a0366004610f2a565b60056020526000908152604090205481565b6001546101c5906001600160a01b031681565b6040516001600160a01b03909116815260200161010e565b61012a610c5c565b61010460025481565b6000546101c5906001600160a01b031681565b6001546001600160a01b0316331461025a5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b60448201526064015b60405180910390fd5b6001600160a01b0381166102b05760405162461bcd60e51b815260206004820152601960248201527f496e76616c696420594d5420746f6b656e2061646472657373000000000000006044820152606401610251565b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f0eaa5644bd7f7c5189a1a9190b4765531731e5d24681305759e38593671b8cc6906020015b60405180910390a150565b6001546001600160a01b031633146103665760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b8281146103db5760405162461bcd60e51b815260206004820152602160248201527f557365727320616e6420616d6f756e7473206c656e677468206d69736d61746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610251565b60005b8381101561059d57600085858381811061040857634e487b7160e01b600052603260045260246000fd5b905060200201602081019061041d9190610f2a565b6001600160a01b031614156104745760405162461bcd60e51b815260206004820152601460248201527f496e76616c6964207573657220616464726573730000000000000000000000006044820152606401610251565b82828281811061049457634e487b7160e01b600052603260045260246000fd5b90506020020135600460008787858181106104bf57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906104d49190610f2a565b6001600160a01b031681526020810191909152604001600020557f2ced60d22c7400b92fad779842ba16b670a05f0c11db1d3c5548102b01e3ded785858381811061052f57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906105449190610f2a565b84848481811061056457634e487b7160e01b600052603260045260246000fd5b604080516001600160a01b0390951685526020918202939093013590840152500160405180910390a161059681611083565b90506103de565b5050505050565b6001546001600160a01b031633146105f85760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b60008060009054906101000a90046001600160a01b03166001600160a01b03166378e979256040518163ffffffff1660e01b815260040160206040518083038186803b15801561064757600080fd5b505afa15801561065b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067f9190610ffd565b9050426106916301e13380600261104d565b61069b9083611015565b106106e85760405162461bcd60e51b815260206004820152601d60248201527f446973747269627574696f6e20706572696f642068617320656e6465640000006044820152606401610251565b60035460ff16156107475760405162461bcd60e51b8152602060048201526024808201527f416c6c20746f6b656e73206861766520616c7265616479206265656e20636c616044820152631a5b595960e21b6064820152608401610251565b6003805460ff19166001908117909155600054905460405163a9059cbb60e01b81526001600160a01b0391821660048201526a52b7d2dcc80cd2e4000000602482015291169063a9059cbb90604401602060405180830381600087803b1580156107b057600080fd5b505af11580156107c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e89190610fdd565b5050565b6001546001600160a01b031633146108405760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b6001600160a01b0382166108965760405162461bcd60e51b815260206004820152601460248201527f496e76616c6964207573657220616464726573730000000000000000000000006044820152606401610251565b6001600160a01b038216600081815260046020908152604091829020849055815192835282018390527f2ced60d22c7400b92fad779842ba16b670a05f0c11db1d3c5548102b01e3ded7910160405180910390a15050565b3360009081526004602052604081205461094a5760405162461bcd60e51b815260206004820152601260248201527f4e6f20746f6b656e7320746f20636c61696d00000000000000000000000000006044820152606401610251565b60008060009054906101000a90046001600160a01b03166001600160a01b03166378e979256040518163ffffffff1660e01b815260040160206040518083038186803b15801561099957600080fd5b505afa1580156109ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d19190610ffd565b905060006109df824261106c565b905060006109f16301e1338084611015565b4210610a0d575033600090815260046020526040902054610a3a565b336000908152600460205260409020546301e1338090610a2d908461104d565b610a37919061102d565b90505b33600090815260056020526040812054610a54908361106c565b905060008111610aa65760405162461bcd60e51b815260206004820152601c60248201527f4e6f20746f6b656e7320617661696c61626c6520746f20636c61696d000000006044820152606401610251565b3360009081526005602052604081208054839290610ac5908490611015565b909155505060005460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb90604401602060405180830381600087803b158015610b1657600080fd5b505af1158015610b2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4e9190610fdd565b50949350505050565b6001546001600160a01b03163314610bab5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b6001600160a01b038116610c015760405162461bcd60e51b815260206004820152601560248201527f496e76616c69642061646d696e206164647265737300000000000000000000006044820152606401610251565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fa54e30973125ab6651706f5e9b1b43cf9bdba85ff8204cba762dfe45c0b4b9d090602001610307565b6001546001600160a01b03163314610cb05760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b6a52b7d2dcc80cd2e400000060025410610d185760405162461bcd60e51b8152602060048201526024808201527f416c6c20746f6b656e73206861766520616c7265616479206265656e20636c616044820152631a5b595960e21b6064820152608401610251565b60008060009054906101000a90046001600160a01b03166001600160a01b03166378e979256040518163ffffffff1660e01b815260040160206040518083038186803b158015610d6757600080fd5b505afa158015610d7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9f9190610ffd565b90506000610dad824261106c565b90506000610dc06301e13380600561104d565b610dca9084611015565b4210610de257506a52b7d2dcc80cd2e4000000610e13565b610df16301e13380600561104d565b610e06906a52b7d2dcc80cd2e400000061102d565b610e10908361104d565b90505b600060025482610e23919061106c565b90508060026000828254610e379190611015565b909155505060005460015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810184905291169063a9059cbb90604401602060405180830381600087803b158015610e8c57600080fd5b505af1158015610ea0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059d9190610fdd565b80356001600160a01b0381168114610edb57600080fd5b919050565b60008083601f840112610ef1578182fd5b50813567ffffffffffffffff811115610f08578182fd5b6020830191508360208260051b8501011115610f2357600080fd5b9250929050565b600060208284031215610f3b578081fd5b610f4482610ec4565b9392505050565b60008060408385031215610f5d578081fd5b610f6683610ec4565b946020939093013593505050565b60008060008060408587031215610f89578182fd5b843567ffffffffffffffff80821115610fa0578384fd5b610fac88838901610ee0565b90965094506020870135915080821115610fc4578384fd5b50610fd187828801610ee0565b95989497509550505050565b600060208284031215610fee578081fd5b81518015158114610f44578182fd5b60006020828403121561100e578081fd5b5051919050565b600082198211156110285761102861109e565b500190565b60008261104857634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156110675761106761109e565b500290565b60008282101561107e5761107e61109e565b500390565b60006000198214156110975761109761109e565b5060010190565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220f618984a2b646d1b21648df97bd6e6ae9d1c94541a9f86588437824b103418b564736f6c63430008040033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100df5760003560e01c80636346a8c51161008c578063779552451161006657806377955245146101b25780639a91722f146101dd578063a495372a146101e5578063e58b4fc5146101ee57600080fd5b80636346a8c514610177578063704b6c021461017f57806371417b321461019257600080fd5b8063255bd3ac116100bd578063255bd3ac1461013f57806357c9ca14146101475780635dd67c6d1461016457600080fd5b80630f75327f146100e45780630f8fac0314610117578063215975f61461012c575b600080fd5b6101046100f2366004610f2a565b60046020526000908152604090205481565b6040519081526020015b60405180910390f35b61012a610125366004610f2a565b610201565b005b61012a61013a366004610f74565b610312565b61012a6105a4565b6003546101549060ff1681565b604051901515815260200161010e565b61012a610172366004610f4b565b6107ec565b6101046108ee565b61012a61018d366004610f2a565b610b57565b6101046101a0366004610f2a565b60056020526000908152604090205481565b6001546101c5906001600160a01b031681565b6040516001600160a01b03909116815260200161010e565b61012a610c5c565b61010460025481565b6000546101c5906001600160a01b031681565b6001546001600160a01b0316331461025a5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b60448201526064015b60405180910390fd5b6001600160a01b0381166102b05760405162461bcd60e51b815260206004820152601960248201527f496e76616c696420594d5420746f6b656e2061646472657373000000000000006044820152606401610251565b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f0eaa5644bd7f7c5189a1a9190b4765531731e5d24681305759e38593671b8cc6906020015b60405180910390a150565b6001546001600160a01b031633146103665760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b8281146103db5760405162461bcd60e51b815260206004820152602160248201527f557365727320616e6420616d6f756e7473206c656e677468206d69736d61746360448201527f68000000000000000000000000000000000000000000000000000000000000006064820152608401610251565b60005b8381101561059d57600085858381811061040857634e487b7160e01b600052603260045260246000fd5b905060200201602081019061041d9190610f2a565b6001600160a01b031614156104745760405162461bcd60e51b815260206004820152601460248201527f496e76616c6964207573657220616464726573730000000000000000000000006044820152606401610251565b82828281811061049457634e487b7160e01b600052603260045260246000fd5b90506020020135600460008787858181106104bf57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906104d49190610f2a565b6001600160a01b031681526020810191909152604001600020557f2ced60d22c7400b92fad779842ba16b670a05f0c11db1d3c5548102b01e3ded785858381811061052f57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906105449190610f2a565b84848481811061056457634e487b7160e01b600052603260045260246000fd5b604080516001600160a01b0390951685526020918202939093013590840152500160405180910390a161059681611083565b90506103de565b5050505050565b6001546001600160a01b031633146105f85760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b60008060009054906101000a90046001600160a01b03166001600160a01b03166378e979256040518163ffffffff1660e01b815260040160206040518083038186803b15801561064757600080fd5b505afa15801561065b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067f9190610ffd565b9050426106916301e13380600261104d565b61069b9083611015565b106106e85760405162461bcd60e51b815260206004820152601d60248201527f446973747269627574696f6e20706572696f642068617320656e6465640000006044820152606401610251565b60035460ff16156107475760405162461bcd60e51b8152602060048201526024808201527f416c6c20746f6b656e73206861766520616c7265616479206265656e20636c616044820152631a5b595960e21b6064820152608401610251565b6003805460ff19166001908117909155600054905460405163a9059cbb60e01b81526001600160a01b0391821660048201526a52b7d2dcc80cd2e4000000602482015291169063a9059cbb90604401602060405180830381600087803b1580156107b057600080fd5b505af11580156107c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e89190610fdd565b5050565b6001546001600160a01b031633146108405760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b6001600160a01b0382166108965760405162461bcd60e51b815260206004820152601460248201527f496e76616c6964207573657220616464726573730000000000000000000000006044820152606401610251565b6001600160a01b038216600081815260046020908152604091829020849055815192835282018390527f2ced60d22c7400b92fad779842ba16b670a05f0c11db1d3c5548102b01e3ded7910160405180910390a15050565b3360009081526004602052604081205461094a5760405162461bcd60e51b815260206004820152601260248201527f4e6f20746f6b656e7320746f20636c61696d00000000000000000000000000006044820152606401610251565b60008060009054906101000a90046001600160a01b03166001600160a01b03166378e979256040518163ffffffff1660e01b815260040160206040518083038186803b15801561099957600080fd5b505afa1580156109ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d19190610ffd565b905060006109df824261106c565b905060006109f16301e1338084611015565b4210610a0d575033600090815260046020526040902054610a3a565b336000908152600460205260409020546301e1338090610a2d908461104d565b610a37919061102d565b90505b33600090815260056020526040812054610a54908361106c565b905060008111610aa65760405162461bcd60e51b815260206004820152601c60248201527f4e6f20746f6b656e7320617661696c61626c6520746f20636c61696d000000006044820152606401610251565b3360009081526005602052604081208054839290610ac5908490611015565b909155505060005460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb90604401602060405180830381600087803b158015610b1657600080fd5b505af1158015610b2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4e9190610fdd565b50949350505050565b6001546001600160a01b03163314610bab5760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b6001600160a01b038116610c015760405162461bcd60e51b815260206004820152601560248201527f496e76616c69642061646d696e206164647265737300000000000000000000006044820152606401610251565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fa54e30973125ab6651706f5e9b1b43cf9bdba85ff8204cba762dfe45c0b4b9d090602001610307565b6001546001600160a01b03163314610cb05760405162461bcd60e51b815260206004820152601760248201527621b0b63632b91034b9903737ba103a34329030b236b4b760491b6044820152606401610251565b6a52b7d2dcc80cd2e400000060025410610d185760405162461bcd60e51b8152602060048201526024808201527f416c6c20746f6b656e73206861766520616c7265616479206265656e20636c616044820152631a5b595960e21b6064820152608401610251565b60008060009054906101000a90046001600160a01b03166001600160a01b03166378e979256040518163ffffffff1660e01b815260040160206040518083038186803b158015610d6757600080fd5b505afa158015610d7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9f9190610ffd565b90506000610dad824261106c565b90506000610dc06301e13380600561104d565b610dca9084611015565b4210610de257506a52b7d2dcc80cd2e4000000610e13565b610df16301e13380600561104d565b610e06906a52b7d2dcc80cd2e400000061102d565b610e10908361104d565b90505b600060025482610e23919061106c565b90508060026000828254610e379190611015565b909155505060005460015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810184905291169063a9059cbb90604401602060405180830381600087803b158015610e8c57600080fd5b505af1158015610ea0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059d9190610fdd565b80356001600160a01b0381168114610edb57600080fd5b919050565b60008083601f840112610ef1578182fd5b50813567ffffffffffffffff811115610f08578182fd5b6020830191508360208260051b8501011115610f2357600080fd5b9250929050565b600060208284031215610f3b578081fd5b610f4482610ec4565b9392505050565b60008060408385031215610f5d578081fd5b610f6683610ec4565b946020939093013593505050565b60008060008060408587031215610f89578182fd5b843567ffffffffffffffff80821115610fa0578384fd5b610fac88838901610ee0565b90965094506020870135915080821115610fc4578384fd5b50610fd187828801610ee0565b95989497509550505050565b600060208284031215610fee578081fd5b81518015158114610f44578182fd5b60006020828403121561100e578081fd5b5051919050565b600082198211156110285761102861109e565b500190565b60008261104857634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156110675761106761109e565b500290565b60008282101561107e5761107e61109e565b500390565b60006000198214156110975761109761109e565b5060010190565b634e487b7160e01b600052601160045260246000fdfea2646970667358221220f618984a2b646d1b21648df97bd6e6ae9d1c94541a9f86588437824b103418b564736f6c63430008040033

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.