ETH Price: $1,977.02 (+0.75%)
 

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
Transfer245108212026-02-22 7:09:1136 mins ago1771744151IN
0x98509e66...020fc8D1F
0 ETH0.000001040.03485652
Transfer245107522026-02-22 6:55:2349 mins ago1771743323IN
0x98509e66...020fc8D1F
0 ETH0.000053441.03068445
Transfer245104202026-02-22 5:48:591 hr ago1771739339IN
0x98509e66...020fc8D1F
0 ETH0.0000010.03343877
Transfer245103512026-02-22 5:35:112 hrs ago1771738511IN
0x98509e66...020fc8D1F
0 ETH0.000053361.02904977
Transfer245078102026-02-21 21:04:3510 hrs ago1771707875IN
0x98509e66...020fc8D1F
0 ETH0.000000980.03301941
Transfer245077282026-02-21 20:48:1110 hrs ago1771706891IN
0x98509e66...020fc8D1F
0 ETH0.000053551.03241205
Transfer245072472026-02-21 19:10:5912 hrs ago1771701059IN
0x98509e66...020fc8D1F
0 ETH0.000001380.04621844
Transfer245071782026-02-21 18:56:5912 hrs ago1771700219IN
0x98509e66...020fc8D1F
0 ETH0.000053921.03995174
Transfer245064572026-02-21 16:32:2315 hrs ago1771691543IN
0x98509e66...020fc8D1F
0 ETH0.000001560.05224411
Transfer245063862026-02-21 16:18:1115 hrs ago1771690691IN
0x98509e66...020fc8D1F
0 ETH0.000053971.04083585
Transfer245057062026-02-21 14:01:4717 hrs ago1771682507IN
0x98509e66...020fc8D1F
0 ETH0.000001520.05093985
Transfer245056372026-02-21 13:47:5917 hrs ago1771681679IN
0x98509e66...020fc8D1F
0 ETH0.000053951.0403715
Transfer245054502026-02-21 13:10:3518 hrs ago1771679435IN
0x98509e66...020fc8D1F
0 ETH0.000001570.05270983
Transfer245053812026-02-21 12:56:4718 hrs ago1771678607IN
0x98509e66...020fc8D1F
0 ETH0.000054311.04740995
Transfer245053462026-02-21 12:49:4718 hrs ago1771678187IN
0x98509e66...020fc8D1F
0 ETH0.000001470.04931138
Transfer245052762026-02-21 12:35:4719 hrs ago1771677347IN
0x98509e66...020fc8D1F
0 ETH0.000054331.04752565
Transfer245017062026-02-21 0:39:1131 hrs ago1771634351IN
0x98509e66...020fc8D1F
0 ETH0.000001440.04835663
Transfer245016372026-02-21 0:25:2331 hrs ago1771633523IN
0x98509e66...020fc8D1F
0 ETH0.000054331.04721002
Approve244989372026-02-20 15:23:4740 hrs ago1771601027IN
0x98509e66...020fc8D1F
0 ETH0.000015130.32598856
Transfer244989052026-02-20 15:17:2340 hrs ago1771600643IN
0x98509e66...020fc8D1F
0 ETH0.00006681.28850634
Transfer244984292026-02-20 13:41:4742 hrs ago1771594907IN
0x98509e66...020fc8D1F
0 ETH0.000005320.17765535
Transfer244982762026-02-20 13:10:5942 hrs ago1771593059IN
0x98509e66...020fc8D1F
0 ETH0.000002950.06279545
Transfer244978702026-02-20 11:49:3543 hrs ago1771588175IN
0x98509e66...020fc8D1F
0 ETH0.000002910.0561675
Transfer244960302026-02-20 5:39:472 days ago1771565987IN
0x98509e66...020fc8D1F
0 ETH0.00000140.04697765
Transfer244959212026-02-20 5:17:592 days ago1771564679IN
0x98509e66...020fc8D1F
0 ETH0.000053911.03933283
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
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

Contract Source Code Verified (Exact Match)

Contract Name:
MUMUBITToken

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-06-17
*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.20;

// ----------------------------------------------------------------------------
// Safe maths
// ----------------------------------------------------------------------------
library MySafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        require(c >= a);
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256 c) {
        require(b <= a);
        c = a - b;
    }
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
    require(b <= a, errorMessage);
    uint256 c = a - b;

    return c;
  }
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
        if (a == 0) {
            revert();
        }
        c = a * b;
        require(c / a == b);
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256 c) {
        require(b > 0);
        c = a / b;
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
    // Solidity only automatically asserts when dividing by 0
    require(b > 0, errorMessage);
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold

    return c;
  }
}

interface IERC20 {
    
    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);

    
    function totalSupply() external view returns (uint256);

   
    function balanceOf(address account) external view returns (uint256);

   
    function transfer(address to, uint256 value) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint256);

    function approve(address spender, uint256 value) external returns (bool);

    
    function transferFrom(address from, address to, uint256 value) external returns (bool);
}
contract Context {
  // Empty internal constructor, to prevent people from mistakenly deploying
  // an instance of this contract, which should be used via inheritance.
  constructor ()  { }

  function _msgSender() internal view returns (address payable) {
    return payable(msg.sender);
  }

  function _msgData() internal view returns (bytes memory) {
    this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
    return msg.data;
  }
}
// ----------------------------------------------------------------------------
// Owned contract
// ----------------------------------------------------------------------------
contract Ownable is Context {
  address private _owner;

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

  /**
   * @dev Initializes the contract setting the deployer as the initial owner.
   */
  constructor ()  {
    address msgSender = _msgSender();
    _owner = msgSender;
    emit OwnershipTransferred(address(0), msgSender);
  }

  /**
   * @dev Returns the address of the current owner.
   */
  function owner() public view returns (address) {
    return _owner;
  }

  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(_owner == _msgSender(), "Ownable: caller is not the owner");
    _;
  }

  /**
   * @dev Leaves the contract without owner. It will not be possible to call
   * `onlyOwner` functions anymore. Can only be called by the current owner.
   *
   * NOTE: Renouncing ownership will leave the contract without an owner,
   * thereby removing any functionality that is only available to the owner.
   */
  function renounceOwnership() public onlyOwner {
    emit OwnershipTransferred(_owner, address(0));
    _owner = address(0);
  }

  /**
   * @dev Transfers ownership of the contract to a new account (`newOwner`).
   * Can only be called by the current owner.
   */
  function transferOwnership(address newOwner) public onlyOwner {
    _transferOwnership(newOwner);
  }

  /**
   * @dev Transfers ownership of the contract to a new account (`newOwner`).
   */
  function _transferOwnership(address newOwner) internal {
    require(newOwner != address(0), "Ownable: new owner is the zero address");
    emit OwnershipTransferred(_owner, newOwner);
    _owner = newOwner;
  }
}

// ----------------------------------------------------------------------------
// MUMUBITToken
// ----------------------------------------------------------------------------
contract MUMUBITToken is Context, IERC20, Ownable {
    using MySafeMath for uint256;
   
    string constant _name = "MUMUBIT TOKEN"; 
    string constant _symbol = "MCTP";
    uint256 constant  _decimals = 18;
    uint256 internal  totalSupply_ = 10 * 10**8 * 10**18;

    mapping(address => uint256) internal balances_;
    mapping(address => mapping(address => uint256)) internal allowed_;
    
    // ------------------------------------------------------------------------
    // Constructor
    // ------------------------------------------------------------------------
    constructor() {
        balances_[msg.sender] = totalSupply_;
        emit Transfer(address(0), msg.sender, totalSupply_);    
    }

    function name() external   pure returns (string memory) {
      return _name;
    }

    function symbol() external  pure returns (string memory) {
        return _symbol;
    }

    function decimals() external  pure returns (uint8) {
        return uint8(_decimals);
    }


    // ------------------------------------------------------------------------
    // Total supply
    // ------------------------------------------------------------------------
    function totalSupply() external override view returns (uint256) {
        return totalSupply_;
    }

    // ------------------------------------------------------------------------
    // Get the token balance for account `tokenOwner`
    // ------------------------------------------------------------------------
    function balanceOf(address _tokenOwner) external override view returns (uint256) {
        return balances_[_tokenOwner];
    }

    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------

     function transfer(address recipient, uint256 amount) external override returns (bool) {
         _transfer(msg.sender, recipient, amount);
         return true;
  }

    // ------------------------------------------------------------------------
    // Token owner can approve for `spender` to transferFrom(...) `tokens`
    // from the token owner's account
    //
    // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
    // recommends that there are no checks for the approval double-spend attack
    // as this should be implemented in user interfaces 
    // ------------------------------------------------------------------------
    function approve(address _spender, uint256 _tokens) external override returns(bool){
        // require(_spender != msg.sender);
        allowed_[msg.sender][_spender] = _tokens;
        emit Approval(msg.sender, _spender, _tokens);
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) internal {
        require(owner != address(0), "MCTP: approve from the zero address");
        require(spender != address(0), "MCTP: approve to the zero address");

        allowed_[owner][spender] = amount;
        emit Approval(owner, spender, amount);
  }
    // ------------------------------------------------------------------------
    // Transfer `tokens` from the `from` account to the `to` account
    // 
    // The calling account must already have sufficient tokens approve(...)-d
    // for spending from the `from` account and
    // - From account must have sufficient balance to transfer
    // - Spender must have sufficient allowance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "MCTP: transfer from the zero address");
        require(recipient != address(0), "MCTP: transfer to the zero address");

        balances_[sender] = balances_[sender].sub(amount, "MCTP: transfer amount exceeds balance");
        balances_[recipient] = balances_[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }
    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, allowed_[sender][msg.sender].sub(amount, "MCTP: transfer amount exceeds allowance"));
        return true;
  }
    function increaseAllowance(address spender, uint256 addedValue) external returns (bool) {
        _approve(msg.sender, spender, allowed_[msg.sender][spender].add(addedValue));
        return true;
  }

    function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) {
        _approve(msg.sender, spender, allowed_[msg.sender][spender].sub(subtractedValue, "MCTP: decreased allowance below zero"));
        return true;
    }
    // ------------------------------------------------------------------------
    // Returns the amount of tokens approved by the owner that can be
    // transferred to the spender's account
    // ------------------------------------------------------------------------
    function allowance(address _tokenOwner, address _spender) external override view returns (uint256) {
        return allowed_[_tokenOwner][_spender];
    }

}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_tokenOwner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526b033b2e3c9fd0803ce800000060015534801561001f575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600154335f81815260026020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610a8e806100b75f395ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c8063715018a611610088578063a457c2d711610063578063a457c2d7146101fa578063a9059cbb1461020d578063dd62ed3e14610220578063f2fde38b14610258575f80fd5b8063715018a6146101b65780638da5cb5b146101c057806395d89b41146101da575f80fd5b806323b872dd116100c357806323b872dd14610159578063313ce5671461016c578063395093511461017b57806370a082311461018e575f80fd5b806306fdde03146100e9578063095ea7b31461012457806318160ddd14610147575b5f80fd5b60408051808201909152600d81526c26aaa6aaa124aa102a27a5a2a760991b60208201525b60405161011b9190610896565b60405180910390f35b6101376101323660046108fc565b61026b565b604051901515815260200161011b565b6001545b60405190815260200161011b565b610137610167366004610924565b6102d7565b6040516012815260200161011b565b6101376101893660046108fc565b61033e565b61014b61019c36600461095d565b6001600160a01b03165f9081526002602052604090205490565b6101be61037c565b005b5f546040516001600160a01b03909116815260200161011b565b60408051808201909152600481526304d4354560e41b602082015261010e565b6101376102083660046108fc565b610422565b61013761021b3660046108fc565b61046f565b61014b61022e36600461097d565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b6101be61026636600461095d565b61047b565b335f8181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102c59086815260200190565b60405180910390a35060015b92915050565b5f6102e38484846104e0565b610334843361032f85604051806060016040528060278152602001610a32602791396001600160a01b038a165f908152600360209081526040808320338452909152902054919061066d565b6106a5565b5060019392505050565b335f8181526003602090815260408083206001600160a01b0387168452909152812054909161037391859061032f90866107bf565b50600192915050565b5f546001600160a01b031633146103da5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f610373338461032f856040518060600160405280602481526020016109e960249139335f9081526003602090815260408083206001600160a01b038d168452909152902054919061066d565b5f6103733384846104e0565b5f546001600160a01b031633146104d45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d1565b6104dd816107d8565b50565b6001600160a01b0383166105425760405162461bcd60e51b8152602060048201526024808201527f4d4354503a207472616e736665722066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d1565b6001600160a01b0382166105a35760405162461bcd60e51b815260206004820152602260248201527f4d4354503a207472616e7366657220746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d1565b6105df81604051806060016040528060258152602001610a0d602591396001600160a01b0386165f90815260026020526040902054919061066d565b6001600160a01b038085165f90815260026020526040808220939093559084168152205461060d90826107bf565b6001600160a01b038084165f8181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906106609085815260200190565b60405180910390a3505050565b5f81848411156106905760405162461bcd60e51b81526004016103d19190610896565b505f61069c84866109c2565b95945050505050565b6001600160a01b0383166107075760405162461bcd60e51b815260206004820152602360248201527f4d4354503a20617070726f76652066726f6d20746865207a65726f206164647260448201526265737360e81b60648201526084016103d1565b6001600160a01b0382166107675760405162461bcd60e51b815260206004820152602160248201527f4d4354503a20617070726f766520746f20746865207a65726f206164647265736044820152607360f81b60648201526084016103d1565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259101610660565b5f6107ca82846109d5565b9050828110156102d1575f80fd5b6001600160a01b03811661083d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d1565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f6020808352835180828501525f5b818110156108c1578581018301518582016040015282016108a5565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108f7575f80fd5b919050565b5f806040838503121561090d575f80fd5b610916836108e1565b946020939093013593505050565b5f805f60608486031215610936575f80fd5b61093f846108e1565b925061094d602085016108e1565b9150604084013590509250925092565b5f6020828403121561096d575f80fd5b610976826108e1565b9392505050565b5f806040838503121561098e575f80fd5b610997836108e1565b91506109a5602084016108e1565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156102d1576102d16109ae565b808201808211156102d1576102d16109ae56fe4d4354503a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f4d4354503a207472616e7366657220616d6f756e7420657863656564732062616c616e63654d4354503a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207f2885470323f104c3994fec665c199b33366477ce6b8d4f434ac5287e3e68f164736f6c63430008140033

Deployed Bytecode

0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c8063715018a611610088578063a457c2d711610063578063a457c2d7146101fa578063a9059cbb1461020d578063dd62ed3e14610220578063f2fde38b14610258575f80fd5b8063715018a6146101b65780638da5cb5b146101c057806395d89b41146101da575f80fd5b806323b872dd116100c357806323b872dd14610159578063313ce5671461016c578063395093511461017b57806370a082311461018e575f80fd5b806306fdde03146100e9578063095ea7b31461012457806318160ddd14610147575b5f80fd5b60408051808201909152600d81526c26aaa6aaa124aa102a27a5a2a760991b60208201525b60405161011b9190610896565b60405180910390f35b6101376101323660046108fc565b61026b565b604051901515815260200161011b565b6001545b60405190815260200161011b565b610137610167366004610924565b6102d7565b6040516012815260200161011b565b6101376101893660046108fc565b61033e565b61014b61019c36600461095d565b6001600160a01b03165f9081526002602052604090205490565b6101be61037c565b005b5f546040516001600160a01b03909116815260200161011b565b60408051808201909152600481526304d4354560e41b602082015261010e565b6101376102083660046108fc565b610422565b61013761021b3660046108fc565b61046f565b61014b61022e36600461097d565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b6101be61026636600461095d565b61047b565b335f8181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906102c59086815260200190565b60405180910390a35060015b92915050565b5f6102e38484846104e0565b610334843361032f85604051806060016040528060278152602001610a32602791396001600160a01b038a165f908152600360209081526040808320338452909152902054919061066d565b6106a5565b5060019392505050565b335f8181526003602090815260408083206001600160a01b0387168452909152812054909161037391859061032f90866107bf565b50600192915050565b5f546001600160a01b031633146103da5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f610373338461032f856040518060600160405280602481526020016109e960249139335f9081526003602090815260408083206001600160a01b038d168452909152902054919061066d565b5f6103733384846104e0565b5f546001600160a01b031633146104d45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103d1565b6104dd816107d8565b50565b6001600160a01b0383166105425760405162461bcd60e51b8152602060048201526024808201527f4d4354503a207472616e736665722066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d1565b6001600160a01b0382166105a35760405162461bcd60e51b815260206004820152602260248201527f4d4354503a207472616e7366657220746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d1565b6105df81604051806060016040528060258152602001610a0d602591396001600160a01b0386165f90815260026020526040902054919061066d565b6001600160a01b038085165f90815260026020526040808220939093559084168152205461060d90826107bf565b6001600160a01b038084165f8181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906106609085815260200190565b60405180910390a3505050565b5f81848411156106905760405162461bcd60e51b81526004016103d19190610896565b505f61069c84866109c2565b95945050505050565b6001600160a01b0383166107075760405162461bcd60e51b815260206004820152602360248201527f4d4354503a20617070726f76652066726f6d20746865207a65726f206164647260448201526265737360e81b60648201526084016103d1565b6001600160a01b0382166107675760405162461bcd60e51b815260206004820152602160248201527f4d4354503a20617070726f766520746f20746865207a65726f206164647265736044820152607360f81b60648201526084016103d1565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259101610660565b5f6107ca82846109d5565b9050828110156102d1575f80fd5b6001600160a01b03811661083d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103d1565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f6020808352835180828501525f5b818110156108c1578581018301518582016040015282016108a5565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108f7575f80fd5b919050565b5f806040838503121561090d575f80fd5b610916836108e1565b946020939093013593505050565b5f805f60608486031215610936575f80fd5b61093f846108e1565b925061094d602085016108e1565b9150604084013590509250925092565b5f6020828403121561096d575f80fd5b610976826108e1565b9392505050565b5f806040838503121561098e575f80fd5b610997836108e1565b91506109a5602084016108e1565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156102d1576102d16109ae565b808201808211156102d1576102d16109ae56fe4d4354503a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f4d4354503a207472616e7366657220616d6f756e7420657863656564732062616c616e63654d4354503a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207f2885470323f104c3994fec665c199b33366477ce6b8d4f434ac5287e3e68f164736f6c63430008140033

Deployed Bytecode Sourcemap

4698:5555:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5437:85;5509:5;;;;;;;;;;;;-1:-1:-1;;;5509:5:0;;;;5437:85;;;;;;;:::i;:::-;;;;;;;;7404:264;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;7404:264:0;1004:187:1;5914:102:0;5996:12;;5914:102;;;1342:25:1;;;1330:2;1315:18;5914:102:0;1196:177:1;9021:315:0;;;;;;:::i;:::-;;:::i;5628:93::-;;;4911:2;1853:36:1;;1841:2;1826:18;5628:93:0;1711:184:1;9342:203:0;;;;;;:::i;:::-;;:::i;6241:129::-;;;;;;:::i;:::-;-1:-1:-1;;;;;6340:22:0;6313:7;6340:22;;;:9;:22;;;;;;;6241:129;3821:130;;;:::i;:::-;;3219:73;3257:7;3280:6;3219:73;;-1:-1:-1;;;;;3280:6:0;;;2237:51:1;;2225:2;2210:18;3219:73:0;2091:203:1;5530:90:0;5605:7;;;;;;;;;;;;-1:-1:-1;;;5605:7:0;;;;5530:90;;9553:255;;;;;;:::i;:::-;;:::i;6722:167::-;;;;;;:::i;:::-;;:::i;10092:156::-;;;;;;:::i;:::-;-1:-1:-1;;;;;10209:21:0;;;10182:7;10209:21;;;:8;:21;;;;;;;;:31;;;;;;;;;;;;;10092:156;4096:103;;;;;;:::i;:::-;;:::i;7404:264::-;7552:10;7482:4;7543:20;;;:8;:20;;;;;;;;-1:-1:-1;;;;;7543:30:0;;;;;;;;;;:40;;;7599:39;7482:4;;7543:30;;7599:39;;;;7576:7;1342:25:1;;1330:2;1315:18;;1196:177;7599:39:0;;;;;;;;-1:-1:-1;7656:4:0;7404:264;;;;;:::o;9021:315::-;9121:4;9148:36;9158:6;9166:9;9177:6;9148:9;:36::i;:::-;9195:113;9204:6;9212:10;9224:83;9257:6;9224:83;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9224:16:0;;;;;;:8;:16;;;;;;;;9241:10;9224:28;;;;;;;;;:83;:32;:83::i;:::-;9195:8;:113::i;:::-;-1:-1:-1;9326:4:0;9021:315;;;;;:::o;9342:203::-;9450:10;9424:4;9471:20;;;:8;:20;;;;;;;;-1:-1:-1;;;;;9471:29:0;;;;;;;;;;9424:4;;9441:76;;9462:7;;9471:45;;9505:10;9471:33;:45::i;9441:76::-;-1:-1:-1;9535:4:0;9342:203;;;;:::o;3821:130::-;3413:6;;-1:-1:-1;;;;;3413:6:0;2336:10;3413:22;3405:67;;;;-1:-1:-1;;;3405:67:0;;2766:2:1;3405:67:0;;;2748:21:1;;;2785:18;;;2778:30;2844:34;2824:18;;;2817:62;2896:18;;3405:67:0;;;;;;;;;3916:1:::1;3900:6:::0;;3879:40:::1;::::0;-1:-1:-1;;;;;3900:6:0;;::::1;::::0;3879:40:::1;::::0;3916:1;;3879:40:::1;3943:1;3926:19:::0;;-1:-1:-1;;;;;;3926:19:0::1;::::0;;3821:130::o;9553:255::-;9640:4;9657:121;9666:10;9678:7;9687:90;9721:15;9687:90;;;;;;;;;;;;;;;;;9696:10;9687:20;;;;:8;:20;;;;;;;;-1:-1:-1;;;;;9687:29:0;;;;;;;;;;;:90;:33;:90::i;6722:167::-;6802:4;6820:40;6830:10;6842:9;6853:6;6820:9;:40::i;4096:103::-;3413:6;;-1:-1:-1;;;;;3413:6:0;2336:10;3413:22;3405:67;;;;-1:-1:-1;;;3405:67:0;;2766:2:1;3405:67:0;;;2748:21:1;;;2785:18;;;2778:30;2844:34;2824:18;;;2817:62;2896:18;;3405:67:0;2564:356:1;3405:67:0;4165:28:::1;4184:8;4165:18;:28::i;:::-;4096:103:::0;:::o;8547:468::-;-1:-1:-1;;;;;8645:20:0;;8637:69;;;;-1:-1:-1;;;8637:69:0;;3127:2:1;8637:69:0;;;3109:21:1;3166:2;3146:18;;;3139:30;3205:34;3185:18;;;3178:62;-1:-1:-1;;;3256:18:1;;;3249:34;3300:19;;8637:69:0;2925:400:1;8637:69:0;-1:-1:-1;;;;;8725:23:0;;8717:70;;;;-1:-1:-1;;;8717:70:0;;3532:2:1;8717:70:0;;;3514:21:1;3571:2;3551:18;;;3544:30;3610:34;3590:18;;;3583:62;-1:-1:-1;;;3661:18:1;;;3654:32;3703:19;;8717:70:0;3330:398:1;8717:70:0;8820;8842:6;8820:70;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8820:17:0;;;;;;:9;:17;;;;;;;:70;:21;:70::i;:::-;-1:-1:-1;;;;;8800:17:0;;;;;;;:9;:17;;;;;;:90;;;;8924:20;;;;;;;:32;;8949:6;8924:24;:32::i;:::-;-1:-1:-1;;;;;8901:20:0;;;;;;;:9;:20;;;;;;;:55;;;;8972:35;;;;;;;;;;9000:6;1342:25:1;;1330:2;1315:18;;1196:177;8972:35:0;;;;;;;;8547:468;;;:::o;523:178::-;609:7;641:12;633:6;;;;625:29;;;;-1:-1:-1;;;625:29:0;;;;;;;;:::i;:::-;-1:-1:-1;661:9:0;673:5;677:1;673;:5;:::i;:::-;661:17;523:178;-1:-1:-1;;;;;523:178:0:o;7676:331::-;-1:-1:-1;;;;;7770:19:0;;7762:67;;;;-1:-1:-1;;;7762:67:0;;4200:2:1;7762:67:0;;;4182:21:1;4239:2;4219:18;;;4212:30;4278:34;4258:18;;;4251:62;-1:-1:-1;;;4329:18:1;;;4322:33;4372:19;;7762:67:0;3998:399:1;7762:67:0;-1:-1:-1;;;;;7848:21:0;;7840:67;;;;-1:-1:-1;;;7840:67:0;;4604:2:1;7840:67:0;;;4586:21:1;4643:2;4623:18;;;4616:30;4682:34;4662:18;;;4655:62;-1:-1:-1;;;4733:18:1;;;4726:31;4774:19;;7840:67:0;4402:397:1;7840:67:0;-1:-1:-1;;;;;7920:15:0;;;;;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;;:33;;;7969:32;;1342:25:1;;;7969:32:0;;1315:18:1;7969:32:0;1196:177:1;265:123:0;323:9;349:5;353:1;349;:5;:::i;:::-;345:9;;378:1;373;:6;;365:15;;;;;4297:215;-1:-1:-1;;;;;4367:22:0;;4359:73;;;;-1:-1:-1;;;4359:73:0;;5136:2:1;4359:73:0;;;5118:21:1;5175:2;5155:18;;;5148:30;5214:34;5194:18;;;5187:62;-1:-1:-1;;;5265:18:1;;;5258:36;5311:19;;4359:73:0;4934:402:1;4359:73:0;4465:6;;;4444:38;;-1:-1:-1;;;;;4444:38:0;;;;4465:6;;;4444:38;;;4489:6;:17;;-1:-1:-1;;;;;;4489:17:0;-1:-1:-1;;;;;4489:17:0;;;;;;;;;;4297:215::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;:::-;2041:39;1900:186;-1:-1:-1;;;1900:186:1:o;2299:260::-;2367:6;2375;2428:2;2416:9;2407:7;2403:23;2399:32;2396:52;;;2444:1;2441;2434:12;2396:52;2467:29;2486:9;2467:29;:::i;:::-;2457:39;;2515:38;2549:2;2538:9;2534:18;2515:38;:::i;:::-;2505:48;;2299:260;;;;;:::o;3733:127::-;3794:10;3789:3;3785:20;3782:1;3775:31;3825:4;3822:1;3815:15;3849:4;3846:1;3839:15;3865:128;3932:9;;;3953:11;;;3950:37;;;3967:18;;:::i;4804:125::-;4869:9;;;4890:10;;;4887:36;;;4903:18;;:::i

Swarm Source

ipfs://7f2885470323f104c3994fec665c199b33366477ce6b8d4f434ac5287e3e68f1

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.