FTM Price: $0.507787 (-1.21%)
 

Overview

FTM Balance

Fantom LogoFantom LogoFantom Logo0 FTM

FTM Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve1038955422025-02-01 19:19:4048 days ago1738437580IN
0x446af157...AF748b6d7
0 FTM0.000118692.56357801
Approve1032723312025-01-22 18:22:3158 days ago1737570151IN
0x446af157...AF748b6d7
0 FTM0.000097232
Approve1032159532025-01-21 22:36:0959 days ago1737498969IN
0x446af157...AF748b6d7
0 FTM0.000145843
Approve1005559802024-12-20 8:09:2791 days ago1734682167IN
0x446af157...AF748b6d7
0 FTM0.000169633.64118025
Approve1001401102024-12-15 22:24:4896 days ago1734301488IN
0x446af157...AF748b6d7
0 FTM0.000188014.03559021
Approve1001401092024-12-15 22:24:4796 days ago1734301487IN
0x446af157...AF748b6d7
0 FTM0.0001884.03549132
Approve1001400432024-12-15 22:23:4696 days ago1734301426IN
0x446af157...AF748b6d7
0 FTM0.00024065.06332425
Approve1001388402024-12-15 22:06:2796 days ago1734300387IN
0x446af157...AF748b6d7
0 FTM0.000197214.23327866
Approve1001351382024-12-15 21:11:1396 days ago1734297073IN
0x446af157...AF748b6d7
0 FTM0.000258445.58042809
Approve1001347232024-12-15 21:04:2396 days ago1734296663IN
0x446af157...AF748b6d7
0 FTM0.000262915.67707481
Approve1001345962024-12-15 21:02:3296 days ago1734296552IN
0x446af157...AF748b6d7
0 FTM0.000262915.67707481
Approve1001344882024-12-15 21:00:4996 days ago1734296449IN
0x446af157...AF748b6d7
0 FTM0.000165835.67707481
Approve1001343512024-12-15 20:58:4896 days ago1734296328IN
0x446af157...AF748b6d7
0 FTM0.000262915.67707481
Approve1001342262024-12-15 20:56:5796 days ago1734296217IN
0x446af157...AF748b6d7
0 FTM0.000271175.85532956
Approve1001341232024-12-15 20:55:2896 days ago1734296128IN
0x446af157...AF748b6d7
0 FTM0.000271175.85532956
Approve1001339652024-12-15 20:53:0196 days ago1734295981IN
0x446af157...AF748b6d7
0 FTM0.000271175.85532956
Approve1001331972024-12-15 20:40:3196 days ago1734295231IN
0x446af157...AF748b6d7
0 FTM0.000263265.68459818
Approve1001322242024-12-15 20:25:0196 days ago1734294301IN
0x446af157...AF748b6d7
0 FTM0.000156035.34155358
Approve1001320032024-12-15 20:21:3296 days ago1734294092IN
0x446af157...AF748b6d7
0 FTM0.000151645.34155358
Approve1001319892024-12-15 20:21:2196 days ago1734294081IN
0x446af157...AF748b6d7
0 FTM0.000247315.34155358
Approve1001319022024-12-15 20:19:5096 days ago1734293990IN
0x446af157...AF748b6d7
0 FTM0.000151715.34155358
Approve1001318912024-12-15 20:19:4296 days ago1734293982IN
0x446af157...AF748b6d7
0 FTM0.000247375.34155358
Approve1001317742024-12-15 20:17:4696 days ago1734293866IN
0x446af157...AF748b6d7
0 FTM0.000154875.30180507
Approve1001314172024-12-15 20:11:4396 days ago1734293503IN
0x446af157...AF748b6d7
0 FTM0.000154875.30180507
Approve1001313912024-12-15 20:11:2196 days ago1734293481IN
0x446af157...AF748b6d7
0 FTM0.000245535.30180507
View all transactions

Latest 1 internal transaction

Parent Transaction Hash Block From To
1000487692024-12-14 22:13:3597 days ago1734214415  Contract Creation0 FTM
Loading...
Loading

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

Contract Name:
SimpleToken

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
File 1 of 5 : SimpleToken.sol
// SPDX-License-Identifier: MIT

/**
 * SimpleToken is a simple token contract without cheating
 * This contract contains the minimum functions required for the token to operate.
 * Read Contract: _decimals, decimals, _name, name, _symbol, symbol, allowance, balanceOf, getOwner, totalSupply, owner.
 * Write Contract: transfer, transferFrom, approve, decreaseAllowance, increaseAllowance.
 * Write Contract, only for owner: renounceOwnership, transferOwnership.
 * Token created using DAppCrypto https://dappcrypto.github.io/
 */

 /**
 * Important! Always check liquidity lock before investing
 * Important! Always check if the token address is available in DAppCrypto https://dappcrypto.github.io/
 */

pragma solidity >=0.8.0;

import "./IERC20.sol";
import "./SafeMath.sol";
import "./Ownable.sol";

contract SimpleToken is Ownable, IERC20 {
    using SafeMath for uint256;
    bool private initializeToken = false;

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;
    uint8 public _decimals;
    string public _symbol;
    string public _name;

    constructor() {}

    // Token initialization is only available once
    function initToken(string memory t_name, string memory t_symbol, uint8 t_decimals, uint256 t_totalSupply, address addressOwner) public onlyOwner returns (bool) {
        require(initializeToken == false, "The token is already initialized");
        initializeToken = true;

        _name = t_name;
        _symbol = t_symbol;
        _decimals = t_decimals;
        _totalSupply = t_totalSupply;
        _balances[addressOwner] = _totalSupply;

        transferOwnership(addressOwner);

        emit Transfer(address(0), addressOwner, _totalSupply);

        return true;
    }

    function owner() external view returns (address) {
        return getOwner();
    }

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

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

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

    function totalSupply() external view returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) external view returns (uint256) {
        return _balances[account];
    }

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

    function allowance(address addressOwner, address spender) external view returns (uint256) {
        return _allowances[addressOwner][spender];
    }

    function approve(address spender, uint256 amount) external returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount, "Transfer amount exceeds allowance"));
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue, "Decreased allowance below zero"));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal {
        require(sender != address(0), "Transfer from the zero address");
        require(recipient != address(0), "Transfer to the zero address");
        require(amount <= _balances[sender], "Transfer amount exceeds balance");

        _balances[sender] = _balances[sender].sub(amount);
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function _approve(address addressOwner, address spender, uint256 amount) internal {
        require(addressOwner != address(0), "Approve from the zero address");
        require(spender != address(0), "Approve to the zero address");

        _allowances[addressOwner][spender] = amount;
        emit Approval(addressOwner, spender, amount);
    }
}

File 2 of 5 : Ownable.sol
// SPDX-License-Identifier: MIT

/**
 * contract Ownable
 */

pragma solidity >=0.8.0;

import "./Context.sol";

contract Ownable is Context {
    address private _owner;

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

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function getOwner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "onlyOwner");
        _;
    }

    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

File 3 of 5 : SafeMath.sol
// SPDX-License-Identifier: MIT

/**
 * Library for mathematical operations
 */

pragma solidity >=0.8.0;

// @dev Wrappers over Solidity's arithmetic operations with added overflow * checks.
library SafeMath {
    // Counterpart to Solidity's `+` operator.
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    // Counterpart to Solidity's `-` operator.
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    // Counterpart to Solidity's `-` operator.
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    // Counterpart to Solidity's `*` operator.
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    // Counterpart to Solidity's `/` operator.
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    // Counterpart to Solidity's `/` operator.
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

    // Counterpart to Solidity's `%` operator.
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    // Counterpart to Solidity's `%` operator.
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

File 4 of 5 : IERC20.sol
// SPDX-License-Identifier: MIT

/**
 * interface IERC20
 */

pragma solidity >=0.8.0;

interface IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
    function totalSupply() external view returns (uint256);
    function owner() external view returns (address);
    function balanceOf(address account) external view returns (uint256);
    function allowance(address owner, address spender) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

File 5 of 5 : Context.sol
// SPDX-License-Identifier: MIT

/**
 * abstract contract Context
 */

pragma solidity >=0.8.0;

abstract 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;
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "remappings": []
}

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":[],"name":"_decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addressOwner","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":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","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":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":[{"internalType":"string","name":"t_name","type":"string"},{"internalType":"string","name":"t_symbol","type":"string"},{"internalType":"uint8","name":"t_decimals","type":"uint8"},{"internalType":"uint256","name":"t_totalSupply","type":"uint256"},{"internalType":"address","name":"addressOwner","type":"address"}],"name":"initToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"view","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"}]

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c8063893d20e8116100ad578063b09f126611610071578063b09f12661461025c578063d28d885214610264578063dd62ed3e1461026c578063e764bea0146102a5578063f2fde38b146102b857600080fd5b8063893d20e8146101f85780638da5cb5b1461021d57806395d89b411461022e578063a457c2d714610236578063a9059cbb1461024957600080fd5b8063313ce567116100f4578063313ce5671461018c57806332424aa3146101a557806339509351146101b257806370a08231146101c5578063715018a6146101ee57600080fd5b806306fdde0314610126578063095ea7b31461014457806318160ddd1461016757806323b872dd14610179575b600080fd5b61012e6102cb565b60405161013b9190610b9a565b60405180910390f35b610157610152366004610c04565b61035d565b604051901515815260200161013b565b6003545b60405190815260200161013b565b610157610187366004610c2e565b610374565b60045460ff165b60405160ff909116815260200161013b565b6004546101939060ff1681565b6101576101c0366004610c04565b6103dd565b61016b6101d3366004610c6a565b6001600160a01b031660009081526001602052604090205490565b6101f6610413565b005b6000546001600160a01b03165b6040516001600160a01b03909116815260200161013b565b6000546001600160a01b0316610205565b61012e610490565b610157610244366004610c04565b61049f565b610157610257366004610c04565b61050c565b61012e610519565b61012e6105a7565b61016b61027a366004610c85565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6101576102b3366004610d5b565b6105b4565b6101f66102c6366004610c6a565b6106fa565b6060600680546102da90610df2565b80601f016020809104026020016040519081016040528092919081815260200182805461030690610df2565b80156103535780601f1061032857610100808354040283529160200191610353565b820191906000526020600020905b81548152906001019060200180831161033657829003601f168201915b5050505050905090565b600061036a338484610730565b5060015b92915050565b600061038184848461083e565b6103d384336103ce85604051806060016040528060218152602001610f9b602191396001600160a01b038a16600090815260026020908152604080832033845290915290205491906109f8565b610730565b5060019392505050565b3360008181526002602090815260408083206001600160a01b0387168452909152812054909161036a9185906103ce9086610a32565b6000546001600160a01b031633146104465760405162461bcd60e51b815260040161043d90610e2c565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6060600580546102da90610df2565b604080518082018252601e81527f44656372656173656420616c6c6f77616e63652062656c6f77207a65726f0000602080830191909152336000818152600283528481206001600160a01b038816825290925292812054909261036a92909186916103ce919087906109f8565b600061036a33848461083e565b6005805461052690610df2565b80601f016020809104026020016040519081016040528092919081815260200182805461055290610df2565b801561059f5780601f106105745761010080835404028352916020019161059f565b820191906000526020600020905b81548152906001019060200180831161058257829003601f168201915b505050505081565b6006805461052690610df2565b600080546001600160a01b031633146105df5760405162461bcd60e51b815260040161043d90610e2c565b600054600160a01b900460ff16156106395760405162461bcd60e51b815260206004820181905260248201527f54686520746f6b656e20697320616c726561647920696e697469616c697a6564604482015260640161043d565b6000805460ff60a01b1916600160a01b17905560066106588782610e9e565b5060056106658682610e9e565b506004805460ff191660ff861617905560038390556001600160a01b038216600090815260016020526040902083905561069e826106fa565b816001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040516106e691815260200190565b60405180910390a350600195945050505050565b6000546001600160a01b031633146107245760405162461bcd60e51b815260040161043d90610e2c565b61072d81610a98565b50565b6001600160a01b0383166107865760405162461bcd60e51b815260206004820152601d60248201527f417070726f76652066726f6d20746865207a65726f2061646472657373000000604482015260640161043d565b6001600160a01b0382166107dc5760405162461bcd60e51b815260206004820152601b60248201527f417070726f766520746f20746865207a65726f20616464726573730000000000604482015260640161043d565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166108945760405162461bcd60e51b815260206004820152601e60248201527f5472616e736665722066726f6d20746865207a65726f20616464726573730000604482015260640161043d565b6001600160a01b0382166108ea5760405162461bcd60e51b815260206004820152601c60248201527f5472616e7366657220746f20746865207a65726f206164647265737300000000604482015260640161043d565b6001600160a01b0383166000908152600160205260409020548111156109525760405162461bcd60e51b815260206004820152601f60248201527f5472616e7366657220616d6f756e7420657863656564732062616c616e636500604482015260640161043d565b6001600160a01b0383166000908152600160205260409020546109759082610b58565b6001600160a01b0380851660009081526001602052604080822093909355908416815220546109a49082610a32565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906108319085815260200190565b60008184841115610a1c5760405162461bcd60e51b815260040161043d9190610b9a565b506000610a298486610f74565b95945050505050565b600080610a3f8385610f87565b905083811015610a915760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161043d565b9392505050565b6001600160a01b038116610afd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161043d565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000610a9183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506109f8565b600060208083528351808285015260005b81811015610bc757858101830151858201604001528201610bab565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610bff57600080fd5b919050565b60008060408385031215610c1757600080fd5b610c2083610be8565b946020939093013593505050565b600080600060608486031215610c4357600080fd5b610c4c84610be8565b9250610c5a60208501610be8565b9150604084013590509250925092565b600060208284031215610c7c57600080fd5b610a9182610be8565b60008060408385031215610c9857600080fd5b610ca183610be8565b9150610caf60208401610be8565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112610cdf57600080fd5b813567ffffffffffffffff80821115610cfa57610cfa610cb8565b604051601f8301601f19908116603f01168101908282118183101715610d2257610d22610cb8565b81604052838152866020858801011115610d3b57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a08688031215610d7357600080fd5b853567ffffffffffffffff80821115610d8b57600080fd5b610d9789838a01610cce565b96506020880135915080821115610dad57600080fd5b50610dba88828901610cce565b945050604086013560ff81168114610dd157600080fd5b925060608601359150610de660808701610be8565b90509295509295909350565b600181811c90821680610e0657607f821691505b602082108103610e2657634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526009908201526837b7363ca7bbb732b960b91b604082015260600190565b601f821115610e9957600081815260208120601f850160051c81016020861015610e765750805b601f850160051c820191505b81811015610e9557828155600101610e82565b5050505b505050565b815167ffffffffffffffff811115610eb857610eb8610cb8565b610ecc81610ec68454610df2565b84610e4f565b602080601f831160018114610f015760008415610ee95750858301515b600019600386901b1c1916600185901b178555610e95565b600085815260208120601f198616915b82811015610f3057888601518255948401946001909101908401610f11565b5085821015610f4e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b8181038181111561036e5761036e610f5e565b8082018082111561036e5761036e610f5e56fe5472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212208d216150fefb11301d2fa11e83ed48026dcd5a79b9ff821d8b1bc8a676ac9b3f64736f6c63430008120033

Deployed Bytecode Sourcemap

827:3765:4:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2159:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2797:152;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:5;;1162:22;1144:41;;1132:2;1117:18;2797:152:4;1004:187:5;2252:93:4;2325:12;;2252:93;;;1342:25:5;;;1330:2;1315:18;2252:93:4;1196:177:5;2957:295:4;;;;;;:::i;:::-;;:::i;1969:85::-;2037:9;;;;1969:85;;;1883:4:5;1871:17;;;1853:36;;1841:2;1826:18;1969:85:4;1711:184:5;1115:22:4;;;;;;;;;3260:206;;;;;;:::i;:::-;;:::i;2353:112::-;;;;;;:::i;:::-;-1:-1:-1;;;;;2439:18:4;2412:7;2439:18;;;:9;:18;;;;;;;2353:112;637:140:2;;;:::i;:::-;;443:82;484:7;511:6;-1:-1:-1;;;;;511:6:2;443:82;;;-1:-1:-1;;;;;2255:32:5;;;2237:51;;2225:2;2210:18;443:82:2;2091:203:5;1876:85:4;1916:7;511:6:2;-1:-1:-1;;;;;511:6:2;1876:85:4;;2062:89;;;:::i;3474:250::-;;;;;;:::i;:::-;;:::i;2473:158::-;;;;;;:::i;:::-;;:::i;1144:21::-;;;:::i;1172:19::-;;;:::i;2639:150::-;;;;;;:::i;:::-;-1:-1:-1;;;;;2747:25:4;;;2720:7;2747:25;;;:11;:25;;;;;;;;:34;;;;;;;;;;;;;2639:150;1276:592;;;;;;:::i;:::-;;:::i;785:109:2:-;;;;;;:::i;:::-;;:::i;2159:85:4:-;2198:13;2231:5;2224:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2159:85;:::o;2797:152::-;2865:4;2882:37;2891:10;2903:7;2912:6;2882:8;:37::i;:::-;-1:-1:-1;2937:4:4;2797:152;;;;;:::o;2957:295::-;3048:4;3065:36;3075:6;3083:9;3094:6;3065:9;:36::i;:::-;3112:110;3121:6;3129:10;3141:80;3177:6;3141:80;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3141:19:4;;;;;;:11;:19;;;;;;;;3161:10;3141:31;;;;;;;;;:80;:35;:80::i;:::-;3112:8;:110::i;:::-;-1:-1:-1;3240:4:4;2957:295;;;;;:::o;3260:206::-;3366:10;3340:4;3387:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3387:32:4;;;;;;;;;;3340:4;;3357:79;;3378:7;;3387:48;;3424:10;3387:36;:48::i;637:140:2:-;573:6;;-1:-1:-1;;;;;573:6:2;410:10:0;573:22:2;565:44;;;;-1:-1:-1;;;565:44:2;;;;;;;:::i;:::-;;;;;;;;;736:1:::1;720:6:::0;;699:40:::1;::::0;-1:-1:-1;;;;;720:6:2;;::::1;::::0;699:40:::1;::::0;736:1;;699:40:::1;767:1;750:19:::0;;-1:-1:-1;;;;;;750:19:2::1;::::0;;637:140::o;2062:89:4:-;2103:13;2136:7;2129:14;;;;;:::i;3474:250::-;3606:87;;;;;;;;;;;;;;;;;;;;3585:10;3559:4;3606:23;;;:11;:23;;;;;-1:-1:-1;;;;;3606:32:4;;;;;;;;;;;3559:4;;3576:118;;3585:10;;3597:7;;3606:87;;:32;3643:15;;3606:36;:87::i;2473:158::-;2544:4;2561:40;2571:10;2583:9;2594:6;2561:9;:40::i;1144:21::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1172:19::-;;;;;;;:::i;1276:592::-;1430:4;573:6:2;;-1:-1:-1;;;;;573:6:2;410:10:0;573:22:2;565:44;;;;-1:-1:-1;;;565:44:2;;;;;;;:::i;:::-;1455:15:4::1;::::0;-1:-1:-1;;;1455:15:4;::::1;;;:24;1447:69;;;::::0;-1:-1:-1;;;1447:69:4;;5193:2:5;1447:69:4::1;::::0;::::1;5175:21:5::0;;;5212:18;;;5205:30;5271:34;5251:18;;;5244:62;5323:18;;1447:69:4::1;4991:356:5::0;1447:69:4::1;1527:15;:22:::0;;-1:-1:-1;;;;1527:22:4::1;-1:-1:-1::0;;;1527:22:4::1;::::0;;1562:5:::1;:14;1570:6:::0;1562:5;:14:::1;:::i;:::-;-1:-1:-1::0;1587:7:4::1;:18;1597:8:::0;1587:7;:18:::1;:::i;:::-;-1:-1:-1::0;1616:9:4::1;:22:::0;;-1:-1:-1;;1616:22:4::1;;::::0;::::1;;::::0;;1649:12:::1;:28:::0;;;-1:-1:-1;;;;;1688:23:4;::::1;-1:-1:-1::0;1688:23:4;;;-1:-1:-1;1688:23:4::1;::::0;;;;:38;;;1739:31:::1;1688:23:::0;1739:17:::1;:31::i;:::-;1809:12;-1:-1:-1::0;;;;;1788:48:4::1;1805:1;-1:-1:-1::0;;;;;1788:48:4::1;;1823:12;;1788:48;;;;1342:25:5::0;;1330:2;1315:18;;1196:177;1788:48:4::1;;;;;;;;-1:-1:-1::0;1856:4:4::1;1276:592:::0;;;;;;;:::o;785:109:2:-;573:6;;-1:-1:-1;;;;;573:6:2;410:10:0;573:22:2;565:44;;;;-1:-1:-1;;;565:44:2;;;;;;;:::i;:::-;858:28:::1;877:8;858:18;:28::i;:::-;785:109:::0;:::o;4237:352:4:-;-1:-1:-1;;;;;4338:26:4;;4330:68;;;;-1:-1:-1;;;4330:68:4;;7758:2:5;4330:68:4;;;7740:21:5;7797:2;7777:18;;;7770:30;7836:31;7816:18;;;7809:59;7885:18;;4330:68:4;7556:353:5;4330:68:4;-1:-1:-1;;;;;4417:21:4;;4409:61;;;;-1:-1:-1;;;4409:61:4;;8116:2:5;4409:61:4;;;8098:21:5;8155:2;8135:18;;;8128:30;8194:29;8174:18;;;8167:57;8241:18;;4409:61:4;7914:351:5;4409:61:4;-1:-1:-1;;;;;4483:25:4;;;;;;;:11;:25;;;;;;;;:34;;;;;;;;;;;;;:43;;;4542:39;;1342:25:5;;;4542:39:4;;1315:18:5;4542:39:4;;;;;;;;4237:352;;;:::o;3732:497::-;-1:-1:-1;;;;;3830:20:4;;3822:63;;;;-1:-1:-1;;;3822:63:4;;8472:2:5;3822:63:4;;;8454:21:5;8511:2;8491:18;;;8484:30;8550:32;8530:18;;;8523:60;8600:18;;3822:63:4;8270:354:5;3822:63:4;-1:-1:-1;;;;;3904:23:4;;3896:64;;;;-1:-1:-1;;;3896:64:4;;8831:2:5;3896:64:4;;;8813:21:5;8870:2;8850:18;;;8843:30;8909;8889:18;;;8882:58;8957:18;;3896:64:4;8629:352:5;3896:64:4;-1:-1:-1;;;;;3989:17:4;;;;;;:9;:17;;;;;;3979:27;;;3971:71;;;;-1:-1:-1;;;3971:71:4;;9188:2:5;3971:71:4;;;9170:21:5;9227:2;9207:18;;;9200:30;9266:33;9246:18;;;9239:61;9317:18;;3971:71:4;8986:355:5;3971:71:4;-1:-1:-1;;;;;4075:17:4;;;;;;:9;:17;;;;;;:29;;4097:6;4075:21;:29::i;:::-;-1:-1:-1;;;;;4055:17:4;;;;;;;:9;:17;;;;;;:49;;;;4138:20;;;;;;;:32;;4163:6;4138:24;:32::i;:::-;-1:-1:-1;;;;;4115:20:4;;;;;;;:9;:20;;;;;;;:55;;;;4186:35;;;;;;;;;;4214:6;1342:25:5;;1330:2;1315:18;;1196:177;700:190:3;786:7;822:12;814:6;;;;806:29;;;;-1:-1:-1;;;806:29:3;;;;;;;;:::i;:::-;-1:-1:-1;846:9:3;858:5;862:1;858;:5;:::i;:::-;846:17;700:190;-1:-1:-1;;;;;700:190:3:o;273:179::-;331:7;;363:5;367:1;363;:5;:::i;:::-;351:17;;392:1;387;:6;;379:46;;;;-1:-1:-1;;;379:46:3;;9943:2:5;379:46:3;;;9925:21:5;9982:2;9962:18;;;9955:30;10021:29;10001:18;;;9994:57;10068:18;;379:46:3;9741:351:5;379:46:3;443:1;273:179;-1:-1:-1;;;273:179:3:o;902:229:2:-;-1:-1:-1;;;;;976:22:2;;968:73;;;;-1:-1:-1;;;968:73:2;;10299:2:5;968:73:2;;;10281:21:5;10338:2;10318:18;;;10311:30;10377:34;10357:18;;;10350:62;-1:-1:-1;;;10428:18:5;;;10421:36;10474:19;;968:73:2;10097:402:5;968:73:2;1078:6;;;1057:38;;-1:-1:-1;;;;;1057:38:2;;;;1078:6;;;1057:38;;;1106:6;:17;;-1:-1:-1;;;;;;1106:17:2;-1:-1:-1;;;;;1106:17:2;;;;;;;;;;902:229::o;508:136:3:-;566:7;593:43;597:1;600;593:43;;;;;;;;;;;;;;;;;:3;:43::i;14:548:5:-;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:5;;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:5: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;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;2564:127::-;2625:10;2620:3;2616:20;2613:1;2606:31;2656:4;2653:1;2646:15;2680:4;2677:1;2670:15;2696:719;2739:5;2792:3;2785:4;2777:6;2773:17;2769:27;2759:55;;2810:1;2807;2800:12;2759:55;2846:6;2833:20;2872:18;2909:2;2905;2902:10;2899:36;;;2915:18;;:::i;:::-;2990:2;2984:9;2958:2;3044:13;;-1:-1:-1;;3040:22:5;;;3064:2;3036:31;3032:40;3020:53;;;3088:18;;;3108:22;;;3085:46;3082:72;;;3134:18;;:::i;:::-;3174:10;3170:2;3163:22;3209:2;3201:6;3194:18;3255:3;3248:4;3243:2;3235:6;3231:15;3227:26;3224:35;3221:55;;;3272:1;3269;3262:12;3221:55;3336:2;3329:4;3321:6;3317:17;3310:4;3302:6;3298:17;3285:54;3383:1;3376:4;3371:2;3363:6;3359:15;3355:26;3348:37;3403:6;3394:15;;;;;;2696:719;;;;:::o;3420:844::-;3533:6;3541;3549;3557;3565;3618:3;3606:9;3597:7;3593:23;3589:33;3586:53;;;3635:1;3632;3625:12;3586:53;3675:9;3662:23;3704:18;3745:2;3737:6;3734:14;3731:34;;;3761:1;3758;3751:12;3731:34;3784:50;3826:7;3817:6;3806:9;3802:22;3784:50;:::i;:::-;3774:60;;3887:2;3876:9;3872:18;3859:32;3843:48;;3916:2;3906:8;3903:16;3900:36;;;3932:1;3929;3922:12;3900:36;;3955:52;3999:7;3988:8;3977:9;3973:24;3955:52;:::i;:::-;3945:62;;;4057:2;4046:9;4042:18;4029:32;4101:4;4094:5;4090:16;4083:5;4080:27;4070:55;;4121:1;4118;4111:12;4070:55;4144:5;-1:-1:-1;4196:2:5;4181:18;;4168:32;;-1:-1:-1;4219:39:5;4253:3;4238:19;;4219:39;:::i;:::-;4209:49;;3420:844;;;;;;;;:::o;4269:380::-;4348:1;4344:12;;;;4391;;;4412:61;;4466:4;4458:6;4454:17;4444:27;;4412:61;4519:2;4511:6;4508:14;4488:18;4485:38;4482:161;;4565:10;4560:3;4556:20;4553:1;4546:31;4600:4;4597:1;4590:15;4628:4;4625:1;4618:15;4482:161;;4269:380;;;:::o;4654:332::-;4856:2;4838:21;;;4895:1;4875:18;;;4868:29;-1:-1:-1;;;4928:2:5;4913:18;;4906:39;4977:2;4962:18;;4654:332::o;5478:545::-;5580:2;5575:3;5572:11;5569:448;;;5616:1;5641:5;5637:2;5630:17;5686:4;5682:2;5672:19;5756:2;5744:10;5740:19;5737:1;5733:27;5727:4;5723:38;5792:4;5780:10;5777:20;5774:47;;;-1:-1:-1;5815:4:5;5774:47;5870:2;5865:3;5861:12;5858:1;5854:20;5848:4;5844:31;5834:41;;5925:82;5943:2;5936:5;5933:13;5925:82;;;5988:17;;;5969:1;5958:13;5925:82;;;5929:3;;;5569:448;5478:545;;;:::o;6199:1352::-;6325:3;6319:10;6352:18;6344:6;6341:30;6338:56;;;6374:18;;:::i;:::-;6403:97;6493:6;6453:38;6485:4;6479:11;6453:38;:::i;:::-;6447:4;6403:97;:::i;:::-;6555:4;;6619:2;6608:14;;6636:1;6631:663;;;;7338:1;7355:6;7352:89;;;-1:-1:-1;7407:19:5;;;7401:26;7352:89;-1:-1:-1;;6156:1:5;6152:11;;;6148:24;6144:29;6134:40;6180:1;6176:11;;;6131:57;7454:81;;6601:944;;6631:663;5425:1;5418:14;;;5462:4;5449:18;;-1:-1:-1;;6667:20:5;;;6785:236;6799:7;6796:1;6793:14;6785:236;;;6888:19;;;6882:26;6867:42;;6980:27;;;;6948:1;6936:14;;;;6815:19;;6785:236;;;6789:3;7049:6;7040:7;7037:19;7034:201;;;7110:19;;;7104:26;-1:-1:-1;;7193:1:5;7189:14;;;7205:3;7185:24;7181:37;7177:42;7162:58;7147:74;;7034:201;-1:-1:-1;;;;;7281:1:5;7265:14;;;7261:22;7248:36;;-1:-1:-1;6199:1352:5:o;9346:127::-;9407:10;9402:3;9398:20;9395:1;9388:31;9438:4;9435:1;9428:15;9462:4;9459:1;9452:15;9478:128;9545:9;;;9566:11;;;9563:37;;;9580:18;;:::i;9611:125::-;9676:9;;;9697:10;;;9694:36;;;9710:18;;:::i

Swarm Source

ipfs://8d216150fefb11301d2fa11e83ed48026dcd5a79b9ff821d8b1bc8a676ac9b3f

Block Transaction Gas Used Reward
view all blocks produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.