ETH Price: $2,961.42 (-0.81%)

Contract

0x14B9e50a6e47Aa7f8BF35f905652224176708dAa

Overview

ETH Balance

0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Turn Off Lightbu...178841162025-12-01 22:08:4753 days ago1764626927IN
0x14B9e50a...176708dAa
0 ETH0.000001350.00000026
Turn On Lightbul...174564682025-11-26 23:21:1958 days ago1764199279IN
0x14B9e50a...176708dAa
0 ETH0.000001370.00018436
Turn On Lightbul...173709482025-11-25 23:35:5959 days ago1764113759IN
0x14B9e50a...176708dAa
0 ETH0.000001480.001
Turn On Lightbul...170223532025-11-21 22:46:0463 days ago1763765164IN
0x14B9e50a...176708dAa
0 ETH0.000001350.00002028
Turn Off Lightbu...169229502025-11-20 19:09:2164 days ago1763665761IN
0x14B9e50a...176708dAa
0 ETH0.000001350.00002536
Turn Off Lightbu...167603572025-11-18 21:59:2866 days ago1763503168IN
0x14B9e50a...176708dAa
0 ETH0.000001430.00063916
Turn On Lightbul...166687892025-11-17 20:33:2067 days ago1763411600IN
0x14B9e50a...176708dAa
0 ETH0.000001350.00001501
Turn Off Lightbu...164907012025-11-15 19:05:1269 days ago1763233512IN
0x14B9e50a...176708dAa
0 ETH0.000001480.001
Turn On Lightbul...164099702025-11-14 20:39:4170 days ago1763152781IN
0x14B9e50a...176708dAa
0 ETH0.000001360.00009212
Turn Off Lightbu...163268162025-11-13 21:33:4771 days ago1763069627IN
0x14B9e50a...176708dAa
0 ETH0.000005220.02807026
Turn On Lightbul...162303732025-11-12 18:46:2472 days ago1762973184IN
0x14B9e50a...176708dAa
0 ETH0.000001480.00097026
Turn On Lightbul...161507122025-11-11 20:38:4373 days ago1762893523IN
0x14B9e50a...176708dAa
0 ETH0.00000150.00099996
Turn Off Lightbu...159772462025-11-09 20:27:3775 days ago1762720057IN
0x14B9e50a...176708dAa
0 ETH0.000001480.001
Turn On Lightbul...155563852025-11-04 23:33:1680 days ago1762299196IN
0x14B9e50a...176708dAa
0 ETH0.00000150.001
Turn Off Lightbu...154501682025-11-03 18:02:5982 days ago1762192979IN
0x14B9e50a...176708dAa
0 ETH0.000001490.001
Turn On Lightbul...153726502025-11-02 20:31:0182 days ago1762115461IN
0x14B9e50a...176708dAa
0 ETH0.00000150.00099996
Turn Off Lightbu...150942922025-10-30 15:11:4386 days ago1761837103IN
0x14B9e50a...176708dAa
0 ETH0.000001510.001
Turn On Lightbul...149345072025-10-28 18:48:3887 days ago1761677318IN
0x14B9e50a...176708dAa
0 ETH0.00000150.001
Turn Off Lightbu...147555352025-10-26 17:05:4690 days ago1761498346IN
0x14B9e50a...176708dAa
0 ETH0.000001480.001
Turn On Lightbul...145835112025-10-24 17:18:4292 days ago1761326322IN
0x14B9e50a...176708dAa
0 ETH0.00000150.001
Turn Off Lightbu...137141632025-10-14 15:49:34102 days ago1760456974IN
0x14B9e50a...176708dAa
0 ETH0.000001490.00099996
Turn On Lightbul...136394252025-10-13 19:03:56102 days ago1760382236IN
0x14B9e50a...176708dAa
0 ETH0.00000150.001
Turn Off Lightbu...135593792025-10-12 20:49:50103 days ago1760302190IN
0x14B9e50a...176708dAa
0 ETH0.000001490.001
Turn On Lightbul...134798652025-10-11 22:44:36104 days ago1760222676IN
0x14B9e50a...176708dAa
0 ETH0.00000150.00099996
Turn Off Lightbu...133056102025-10-09 22:20:21106 days ago1760048421IN
0x14B9e50a...176708dAa
0 ETH0.000001480.00099996
View all transactions

Advanced mode:
Parent Transaction Hash Block From To
View All Internal Transactions

Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
LightbulbOnchain

Compiler Version
v0.8.30+commit.73712a01

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

/**
 * @title LightbulbOnchain
 * @notice A smart contract for a collaborative lightbulb toggling application.
 * @dev This version includes an optional, owner-configurable fee for toggling,
 * which is paid in the native currency of the chain (e.g., ETH, PLUME, HYPE).
 */
contract LightbulbOnchain {
    // --- State Variables ---
    string public constant VERSION = "1.1.0";
    string public constant DESCRIPTION = "A simple Web3 lightbulb toggle app";
    
    address public owner;
    uint256 public toggleFee;

    struct LightbulbToggle {
        bool isOn;
        uint248 blockTimestamp;
    }

    struct UserStats {
        uint32 streakCount;
        uint32 lastToggleDay;
        uint8 achievementLevel;
    }

    // Storage mappings
    mapping(address => LightbulbToggle) public latestLightbulbToggle;
    mapping(address => uint256) public lightbulbToggleCount;
    mapping(address => UserStats) public userStats;
    uint256 public totalLightbulbToggles;
    uint256 public activeLightbulbs;

    // Leaderboard tracking
    address[10] public topTogglers;
    uint256[10] public topToggleCounts;

    // Constants
    uint256 private constant DAY = 86400;
    uint256[] private ACHIEVEMENT_THRESHOLDS = [10, 50, 100];

    // --- Events ---
    event LightbulbToggled(
        address indexed user,
        bool isOn,
        uint256 blockTimestamp,
        uint256 chainId,
        uint256 toggleCount,
        uint32 streakCount,
        uint8 achievementLevel
    );

    // --- Modifiers ---
    modifier onlyOwner() {
        require(msg.sender == owner, "Not the owner");
        _;
    }

    // --- Constructor ---
    constructor() {
        owner = msg.sender;
        toggleFee = 0; // The service is free by default
    }
    
    // --- Owner Functions ---

    /**
     * @notice Allows the owner to set a new fee for toggling. This fee is always
     * in the native currency of the chain where the contract is deployed.
     * @param _newFee The new fee in wei.
     */
    function setToggleFee(uint256 _newFee) external onlyOwner {
        toggleFee = _newFee;
    }

    /**
     * @notice Allows the owner to withdraw the entire native currency balance of the contract.
     */
    function withdraw() external onlyOwner {
        (bool success, ) = owner.call{value: address(this).balance}("");
        require(success, "Withdrawal failed");
    }

    // --- Core Functions ---
    
    function turnOnLightbulb() external payable {
        _toggleLightbulb(true);
    }

    function turnOffLightbulb() external payable {
        _toggleLightbulb(false);
    }

    function _toggleLightbulb(bool isOn) private {
        require(msg.value >= toggleFee, "Insufficient fee sent");

        address user = msg.sender;
        bool wasOn = lightbulbToggleCount[user] > 0 ? latestLightbulbToggle[user].isOn : false;

        LightbulbToggle memory toggle = LightbulbToggle({
            isOn: isOn,
            blockTimestamp: uint248(block.timestamp)
        });
        latestLightbulbToggle[user] = toggle;

        lightbulbToggleCount[user]++;
        totalLightbulbToggles++;
        if (wasOn && !isOn) {
            activeLightbulbs--;
        } else if (!wasOn && isOn) {
            activeLightbulbs++;
        }

        UserStats storage stats = userStats[user];
        uint32 currentDay = uint32(block.timestamp / DAY);
        if (currentDay > stats.lastToggleDay && currentDay == stats.lastToggleDay + 1) {
            stats.streakCount++;
        } else if (currentDay > stats.lastToggleDay + 1) {
            stats.streakCount = 1;
        } else if (stats.lastToggleDay == 0) {
            stats.streakCount = 1;
        }
        stats.lastToggleDay = currentDay;

        uint256 toggleCount = lightbulbToggleCount[user];
        if (toggleCount >= ACHIEVEMENT_THRESHOLDS[2] && stats.achievementLevel < 3) {
            stats.achievementLevel = 3;
        } else if (toggleCount >= ACHIEVEMENT_THRESHOLDS[1] && stats.achievementLevel < 2) {
            stats.achievementLevel = 2;
        } else if (toggleCount >= ACHIEVEMENT_THRESHOLDS[0] && stats.achievementLevel < 1) {
            stats.achievementLevel = 1;
        }

        _updateLeaderboard(user, toggleCount);

        emit LightbulbToggled(
            user,
            isOn,
            block.timestamp,
            block.chainid,
            toggleCount,
            stats.streakCount,
            stats.achievementLevel
        );
    }

    // --- Leaderboard Logic ---
    function _updateLeaderboard(address user, uint256 toggleCount) private {
        uint256 minCount = topToggleCounts[9];
        if (toggleCount <= minCount && !isInLeaderboard(user)) {
            return;
        }
        uint256 insertIndex = 9;
        for (uint256 i = 0; i < 10; i++) {
            if (topToggleCounts[i] < toggleCount || (topToggleCounts[i] == toggleCount && topTogglers[i] == user)) {
                insertIndex = i;
                break;
            }
        }
        for (uint256 i = 9; i > insertIndex; i--) {
            topTogglers[i] = topTogglers[i - 1];
            topToggleCounts[i] = topToggleCounts[i - 1];
        }
        topTogglers[insertIndex] = user;
        topToggleCounts[insertIndex] = toggleCount;
        for (uint256 i = insertIndex + 1; i < 10; i++) {
            if (topTogglers[i] == user) {
                for (uint256 j = i; j < 9; j++) {
                    topTogglers[j] = topTogglers[j + 1];
                    topToggleCounts[j] = topToggleCounts[j + 1];
                }
                topTogglers[9] = address(0);
                topToggleCounts[9] = 0;
            }
        }
    }

    function isInLeaderboard(address user) private view returns (bool) {
        for (uint256 i = 0; i < 10; i++) {
            if (topTogglers[i] == user) {
                return true;
            }
        }
        return false;
    }

    // --- View Functions ---
    function getLightbulbToggleCount(address user) external view returns (uint256) {
        return lightbulbToggleCount[user];
    }

    function getLatestLightbulbToggle(address user) external view returns (bool isOn, uint256 blockTimestamp) {
        LightbulbToggle memory toggle = latestLightbulbToggle[user];
        if (lightbulbToggleCount[user] == 0) {
            return (false, 0);
        }
        return (toggle.isOn, toggle.blockTimestamp);
    }

    function getUserLightbulbStats(address user) external view returns (uint256 toggleCount, uint32 streakCount, uint8 achievementLevel) {
        return (
            lightbulbToggleCount[user],
            userStats[user].streakCount,
            userStats[user].achievementLevel
        );
    }

    function getTopLightbulbTogglers() external view returns (address[10] memory togglers, uint256[10] memory counts) {
        return (topTogglers, topToggleCounts);
    }

    function getLightbulbGlobalStats() external view returns (uint256 totalToggles, uint256 activeCount) {
        return (totalLightbulbToggles, activeLightbulbs);
    }
}

Settings
{
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs"
  },
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"bool","name":"isOn","type":"bool"},{"indexed":false,"internalType":"uint256","name":"blockTimestamp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"chainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"toggleCount","type":"uint256"},{"indexed":false,"internalType":"uint32","name":"streakCount","type":"uint32"},{"indexed":false,"internalType":"uint8","name":"achievementLevel","type":"uint8"}],"name":"LightbulbToggled","type":"event"},{"inputs":[],"name":"DESCRIPTION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"activeLightbulbs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getLatestLightbulbToggle","outputs":[{"internalType":"bool","name":"isOn","type":"bool"},{"internalType":"uint256","name":"blockTimestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLightbulbGlobalStats","outputs":[{"internalType":"uint256","name":"totalToggles","type":"uint256"},{"internalType":"uint256","name":"activeCount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getLightbulbToggleCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTopLightbulbTogglers","outputs":[{"internalType":"address[10]","name":"togglers","type":"address[10]"},{"internalType":"uint256[10]","name":"counts","type":"uint256[10]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserLightbulbStats","outputs":[{"internalType":"uint256","name":"toggleCount","type":"uint256"},{"internalType":"uint32","name":"streakCount","type":"uint32"},{"internalType":"uint8","name":"achievementLevel","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"latestLightbulbToggle","outputs":[{"internalType":"bool","name":"isOn","type":"bool"},{"internalType":"uint248","name":"blockTimestamp","type":"uint248"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"lightbulbToggleCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"setToggleFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"toggleFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"topToggleCounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"topTogglers","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalLightbulbToggles","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"turnOffLightbulb","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"turnOnLightbulb","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"userStats","outputs":[{"internalType":"uint32","name":"streakCount","type":"uint32"},{"internalType":"uint32","name":"lastToggleDay","type":"uint32"},{"internalType":"uint8","name":"achievementLevel","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526040518060600160405280600a60ff168152602001603260ff168152602001606460ff16815250601b90600361003b929190610093565b50348015610047575f5ffd5b50335f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f6001819055506100fe565b828054828255905f5260205f209081019282156100d2579160200282015b828111156100d1578251829060ff169055916020019190600101906100b1565b5b5090506100df91906100e3565b5090565b5b808211156100fa575f815f9055506001016100e4565b5090565b611ffd8061010b5f395ff3fe60806040526004361061011e575f3560e01c80637ac3f5211161009f578063ad2557a511610063578063ad2557a5146103b4578063cfa8ff0e146103f0578063f1ae88561461042e578063f80883cc14610458578063ffa1ad74146104825761011e565b80637ac3f521146102975780638a65d874146102d35780638da5cb5b1461031157806393255dcd1461033b57806399a88fa0146103785761011e565b80633ccfd60b116100e65780633ccfd60b146101e857806343b3d61b146101fe5780635d09d21e1461023b5780635e209363146102635780636ae7cc821461028d5761011e565b806306639f841461012257806306bf9a441461012c5780630a7116f4146101565780630cab37e0146101925780632f82553e146101bd575b5f5ffd5b61012a6104ac565b005b348015610137575f5ffd5b506101406104b7565b60405161014d9190611753565b60405180910390f35b348015610161575f5ffd5b5061017c6004803603810190610177919061179a565b6104bd565b6040516101899190611753565b60405180910390f35b34801561019d575f5ffd5b506101a66104d6565b6040516101b492919061193f565b60405180910390f35b3480156101c8575f5ffd5b506101d16105a5565b6040516101df929190611968565b60405180910390f35b3480156101f3575f5ffd5b506101fc6105b5565b005b348015610209575f5ffd5b50610224600480360381019061021f91906119b9565b61070e565b604051610232929190611a37565b60405180910390f35b348015610246575f5ffd5b50610261600480360381019061025c919061179a565b610764565b005b34801561026e575f5ffd5b506102776107fc565b6040516102849190611753565b60405180910390f35b610295610802565b005b3480156102a2575f5ffd5b506102bd60048036038101906102b8919061179a565b61080e565b6040516102ca9190611a6d565b60405180910390f35b3480156102de575f5ffd5b506102f960048036038101906102f491906119b9565b610842565b60405161030893929190611abf565b60405180910390f35b34801561031c575f5ffd5b50610325610892565b6040516103329190611a6d565b60405180910390f35b348015610346575f5ffd5b50610361600480360381019061035c91906119b9565b6108b6565b60405161036f929190611af4565b60405180910390f35b348015610383575f5ffd5b5061039e600480360381019061039991906119b9565b610a1a565b6040516103ab9190611753565b60405180910390f35b3480156103bf575f5ffd5b506103da60048036038101906103d591906119b9565b610a60565b6040516103e79190611753565b60405180910390f35b3480156103fb575f5ffd5b50610416600480360381019061041191906119b9565b610a75565b60405161042593929190611b1b565b60405180910390f35b348015610439575f5ffd5b50610442610b5f565b60405161044f9190611bc0565b60405180910390f35b348015610463575f5ffd5b5061046c610b7b565b6040516104799190611753565b60405180910390f35b34801561048d575f5ffd5b50610496610b81565b6040516104a39190611bc0565b60405180910390f35b6104b55f610bba565b565b60065481565b601181600a81106104cc575f80fd5b015f915090505481565b6104de6116f5565b6104e6611718565b6007601181600a806020026040519081016040528092919082600a8015610557576020028201915b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161050e575b5050505050915080600a806020026040519081016040528092919082600a8015610596576020028201915b815481526020019060010190808311610582575b50505050509050915091509091565b5f5f600554600654915091509091565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610643576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063a90611c2a565b60405180910390fd5b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff164760405161068890611c75565b5f6040518083038185875af1925050503d805f81146106c2576040519150601f19603f3d011682016040523d82523d5f602084013e6106c7565b606091505b505090508061070b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070290611cd3565b60405180910390fd5b50565b6002602052805f5260405f205f91509050805f015f9054906101000a900460ff1690805f0160019054906101000a90047effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905082565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e990611c2a565b60405180910390fd5b8060018190555050565b60015481565b61080c6001610bba565b565b600781600a811061081d575f80fd5b015f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6004602052805f5260405f205f91509050805f015f9054906101000a900463ffffffff1690805f0160049054906101000a900463ffffffff1690805f0160089054906101000a900460ff16905083565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f5f5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206040518060400160405290815f82015f9054906101000a900460ff161515151581526020015f820160019054906101000a90047effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff168152505090505f60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054036109e2575f5f9250925050610a15565b805f01518160200151807effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905092509250505b915091565b5f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6003602052805f5260405f205f915090505481565b5f5f5f60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f015f9054906101000a900463ffffffff1660045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f0160089054906101000a900460ff169250925092509193909250565b604051806060016040528060228152602001611fa66022913981565b60055481565b6040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b600154341015610bff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf690611d3b565b60405180910390fd5b5f3390505f5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411610c4e575f610c9b565b60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f015f9054906101000a900460ff165b90505f60405180604001604052808515158152602001427effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525090508060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f820151815f015f6101000a81548160ff0219169083151502179055506020820151815f0160016101000a8154817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555090505060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190610ddf90611d86565b919050555060055f815480929190610df690611d86565b9190505550818015610e06575083155b15610e275760065f815480929190610e1d90611dcd565b9190505550610e50565b81158015610e325750835b15610e4f5760065f815480929190610e4990611d86565b91905055505b5b5f60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2090505f6201518042610ea09190611e21565b9050815f0160049054906101000a900463ffffffff1663ffffffff168163ffffffff16118015610efa57506001825f0160049054906101000a900463ffffffff16610eeb9190611e51565b63ffffffff168163ffffffff16145b15610f4557815f015f81819054906101000a900463ffffffff1680929190610f2190611e88565b91906101000a81548163ffffffff021916908363ffffffff16021790555050610fe4565b6001825f0160049054906101000a900463ffffffff16610f659190611e51565b63ffffffff168163ffffffff161115610f9f576001825f015f6101000a81548163ffffffff021916908363ffffffff160217905550610fe3565b5f825f0160049054906101000a900463ffffffff1663ffffffff1603610fe2576001825f015f6101000a81548163ffffffff021916908363ffffffff1602179055505b5b5b80825f0160046101000a81548163ffffffff021916908363ffffffff1602179055505f60035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050601b60028154811061105c5761105b611eb3565b5b905f5260205f200154811015801561108757506003835f0160089054906101000a900460ff1660ff16105b156110ae576003835f0160086101000a81548160ff021916908360ff160217905550611179565b601b6001815481106110c3576110c2611eb3565b5b905f5260205f20015481101580156110ee57506002835f0160089054906101000a900460ff1660ff16105b15611115576002835f0160086101000a81548160ff021916908360ff160217905550611178565b601b5f8154811061112957611128611eb3565b5b905f5260205f200154811015801561115457506001835f0160089054906101000a900460ff1660ff16105b15611177576001835f0160086101000a81548160ff021916908360ff1602179055505b5b5b6111838682611206565b8573ffffffffffffffffffffffffffffffffffffffff167fac96b2df6535e2c9b68cb47c19cfe5b09fc9ba556bfabe18913cc4c09ec9837e88424685885f015f9054906101000a900463ffffffff16895f0160089054906101000a900460ff166040516111f596959493929190611ee0565b60405180910390a250505050505050565b5f60116009600a811061121c5761121b611eb3565b5b0154905080821115801561123657506112348361165e565b155b15611241575061165a565b5f600990505f5f90505b600a8110156113105783601182600a811061126957611268611eb3565b5b015410806112f6575083601182600a811061128757611286611eb3565b5b01541480156112f557508473ffffffffffffffffffffffffffffffffffffffff16600782600a81106112bc576112bb611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b5b1561130357809150611310565b808060010191505061124b565b505f600990505b8181111561140057600760018261132e9190611f3f565b600a811061133f5761133e611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600782600a811061137457611373611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060116001826113c19190611f3f565b600a81106113d2576113d1611eb3565b5b0154601182600a81106113e8576113e7611eb3565b5b018190555080806113f890611dcd565b915050611317565b5083600782600a811061141657611415611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082601182600a811061146957611468611eb3565b5b01819055505f60018261147c9190611f72565b90505b600a811015611656578473ffffffffffffffffffffffffffffffffffffffff16600782600a81106114b3576114b2611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611649575f8190505b60098110156115d857600760018261150c9190611f72565b600a811061151d5761151c611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600782600a811061155257611551611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160018261159f9190611f72565b600a81106115b0576115af611eb3565b5b0154601182600a81106115c6576115c5611eb3565b5b018190555080806001019150506114f4565b505f60076009600a81106115ef576115ee611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f60116009600a811061164357611642611eb3565b5b01819055505b808060010191505061147f565b5050505b5050565b5f5f5f90505b600a8110156116eb578273ffffffffffffffffffffffffffffffffffffffff16600782600a811061169857611697611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036116de5760019150506116f0565b8080600101915050611664565b505f90505b919050565b604051806101400160405280600a90602082028036833780820191505090505090565b604051806101400160405280600a90602082028036833780820191505090505090565b5f819050919050565b61174d8161173b565b82525050565b5f6020820190506117665f830184611744565b92915050565b5f5ffd5b6117798161173b565b8114611783575f5ffd5b50565b5f8135905061179481611770565b92915050565b5f602082840312156117af576117ae61176c565b5b5f6117bc84828501611786565b91505092915050565b5f600a9050919050565b5f81905092915050565b5f819050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61180b826117e2565b9050919050565b61181b81611801565b82525050565b5f61182c8383611812565b60208301905092915050565b5f602082019050919050565b61184d816117c5565b61185781846117cf565b9250611862826117d9565b805f5b838110156118925781516118798782611821565b965061188483611838565b925050600181019050611865565b505050505050565b5f600a9050919050565b5f81905092915050565b5f819050919050565b6118c08161173b565b82525050565b5f6118d183836118b7565b60208301905092915050565b5f602082019050919050565b6118f28161189a565b6118fc81846118a4565b9250611907826118ae565b805f5b8381101561193757815161191e87826118c6565b9650611929836118dd565b92505060018101905061190a565b505050505050565b5f610280820190506119535f830185611844565b6119616101408301846118e9565b9392505050565b5f60408201905061197b5f830185611744565b6119886020830184611744565b9392505050565b61199881611801565b81146119a2575f5ffd5b50565b5f813590506119b38161198f565b92915050565b5f602082840312156119ce576119cd61176c565b5b5f6119db848285016119a5565b91505092915050565b5f8115159050919050565b6119f8816119e4565b82525050565b5f7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b611a31816119fe565b82525050565b5f604082019050611a4a5f8301856119ef565b611a576020830184611a28565b9392505050565b611a6781611801565b82525050565b5f602082019050611a805f830184611a5e565b92915050565b5f63ffffffff82169050919050565b611a9e81611a86565b82525050565b5f60ff82169050919050565b611ab981611aa4565b82525050565b5f606082019050611ad25f830186611a95565b611adf6020830185611a95565b611aec6040830184611ab0565b949350505050565b5f604082019050611b075f8301856119ef565b611b146020830184611744565b9392505050565b5f606082019050611b2e5f830186611744565b611b3b6020830185611a95565b611b486040830184611ab0565b949350505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611b9282611b50565b611b9c8185611b5a565b9350611bac818560208601611b6a565b611bb581611b78565b840191505092915050565b5f6020820190508181035f830152611bd88184611b88565b905092915050565b7f4e6f7420746865206f776e6572000000000000000000000000000000000000005f82015250565b5f611c14600d83611b5a565b9150611c1f82611be0565b602082019050919050565b5f6020820190508181035f830152611c4181611c08565b9050919050565b5f81905092915050565b50565b5f611c605f83611c48565b9150611c6b82611c52565b5f82019050919050565b5f611c7f82611c55565b9150819050919050565b7f5769746864726177616c206661696c65640000000000000000000000000000005f82015250565b5f611cbd601183611b5a565b9150611cc882611c89565b602082019050919050565b5f6020820190508181035f830152611cea81611cb1565b9050919050565b7f496e73756666696369656e74206665652073656e7400000000000000000000005f82015250565b5f611d25601583611b5a565b9150611d3082611cf1565b602082019050919050565b5f6020820190508181035f830152611d5281611d19565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611d908261173b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611dc257611dc1611d59565b5b600182019050919050565b5f611dd78261173b565b91505f8203611de957611de8611d59565b5b600182039050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611e2b8261173b565b9150611e368361173b565b925082611e4657611e45611df4565b5b828204905092915050565b5f611e5b82611a86565b9150611e6683611a86565b9250828201905063ffffffff811115611e8257611e81611d59565b5b92915050565b5f611e9282611a86565b915063ffffffff8203611ea857611ea7611d59565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60c082019050611ef35f8301896119ef565b611f006020830188611744565b611f0d6040830187611744565b611f1a6060830186611744565b611f276080830185611a95565b611f3460a0830184611ab0565b979650505050505050565b5f611f498261173b565b9150611f548361173b565b9250828203905081811115611f6c57611f6b611d59565b5b92915050565b5f611f7c8261173b565b9150611f878361173b565b9250828201905080821115611f9f57611f9e611d59565b5b9291505056fe412073696d706c652057656233206c6967687462756c6220746f67676c6520617070a2646970667358221220681eed248a456a3c2897962c558a1c7569b6dc6918e8151e40365a1e424d2e2d64736f6c634300081e0033

Deployed Bytecode

0x60806040526004361061011e575f3560e01c80637ac3f5211161009f578063ad2557a511610063578063ad2557a5146103b4578063cfa8ff0e146103f0578063f1ae88561461042e578063f80883cc14610458578063ffa1ad74146104825761011e565b80637ac3f521146102975780638a65d874146102d35780638da5cb5b1461031157806393255dcd1461033b57806399a88fa0146103785761011e565b80633ccfd60b116100e65780633ccfd60b146101e857806343b3d61b146101fe5780635d09d21e1461023b5780635e209363146102635780636ae7cc821461028d5761011e565b806306639f841461012257806306bf9a441461012c5780630a7116f4146101565780630cab37e0146101925780632f82553e146101bd575b5f5ffd5b61012a6104ac565b005b348015610137575f5ffd5b506101406104b7565b60405161014d9190611753565b60405180910390f35b348015610161575f5ffd5b5061017c6004803603810190610177919061179a565b6104bd565b6040516101899190611753565b60405180910390f35b34801561019d575f5ffd5b506101a66104d6565b6040516101b492919061193f565b60405180910390f35b3480156101c8575f5ffd5b506101d16105a5565b6040516101df929190611968565b60405180910390f35b3480156101f3575f5ffd5b506101fc6105b5565b005b348015610209575f5ffd5b50610224600480360381019061021f91906119b9565b61070e565b604051610232929190611a37565b60405180910390f35b348015610246575f5ffd5b50610261600480360381019061025c919061179a565b610764565b005b34801561026e575f5ffd5b506102776107fc565b6040516102849190611753565b60405180910390f35b610295610802565b005b3480156102a2575f5ffd5b506102bd60048036038101906102b8919061179a565b61080e565b6040516102ca9190611a6d565b60405180910390f35b3480156102de575f5ffd5b506102f960048036038101906102f491906119b9565b610842565b60405161030893929190611abf565b60405180910390f35b34801561031c575f5ffd5b50610325610892565b6040516103329190611a6d565b60405180910390f35b348015610346575f5ffd5b50610361600480360381019061035c91906119b9565b6108b6565b60405161036f929190611af4565b60405180910390f35b348015610383575f5ffd5b5061039e600480360381019061039991906119b9565b610a1a565b6040516103ab9190611753565b60405180910390f35b3480156103bf575f5ffd5b506103da60048036038101906103d591906119b9565b610a60565b6040516103e79190611753565b60405180910390f35b3480156103fb575f5ffd5b50610416600480360381019061041191906119b9565b610a75565b60405161042593929190611b1b565b60405180910390f35b348015610439575f5ffd5b50610442610b5f565b60405161044f9190611bc0565b60405180910390f35b348015610463575f5ffd5b5061046c610b7b565b6040516104799190611753565b60405180910390f35b34801561048d575f5ffd5b50610496610b81565b6040516104a39190611bc0565b60405180910390f35b6104b55f610bba565b565b60065481565b601181600a81106104cc575f80fd5b015f915090505481565b6104de6116f5565b6104e6611718565b6007601181600a806020026040519081016040528092919082600a8015610557576020028201915b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161050e575b5050505050915080600a806020026040519081016040528092919082600a8015610596576020028201915b815481526020019060010190808311610582575b50505050509050915091509091565b5f5f600554600654915091509091565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610643576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063a90611c2a565b60405180910390fd5b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff164760405161068890611c75565b5f6040518083038185875af1925050503d805f81146106c2576040519150601f19603f3d011682016040523d82523d5f602084013e6106c7565b606091505b505090508061070b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070290611cd3565b60405180910390fd5b50565b6002602052805f5260405f205f91509050805f015f9054906101000a900460ff1690805f0160019054906101000a90047effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905082565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e990611c2a565b60405180910390fd5b8060018190555050565b60015481565b61080c6001610bba565b565b600781600a811061081d575f80fd5b015f915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6004602052805f5260405f205f91509050805f015f9054906101000a900463ffffffff1690805f0160049054906101000a900463ffffffff1690805f0160089054906101000a900460ff16905083565b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f5f5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f206040518060400160405290815f82015f9054906101000a900460ff161515151581526020015f820160019054906101000a90047effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff168152505090505f60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054036109e2575f5f9250925050610a15565b805f01518160200151807effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905092509250505b915091565b5f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6003602052805f5260405f205f915090505481565b5f5f5f60035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205460045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f015f9054906101000a900463ffffffff1660045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f0160089054906101000a900460ff169250925092509193909250565b604051806060016040528060228152602001611fa66022913981565b60055481565b6040518060400160405280600581526020017f312e312e3000000000000000000000000000000000000000000000000000000081525081565b600154341015610bff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf690611d3b565b60405180910390fd5b5f3390505f5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205411610c4e575f610c9b565b60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f015f9054906101000a900460ff165b90505f60405180604001604052808515158152602001427effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1681525090508060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f820151815f015f6101000a81548160ff0219169083151502179055506020820151815f0160016101000a8154817effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff02191690837effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16021790555090505060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190610ddf90611d86565b919050555060055f815480929190610df690611d86565b9190505550818015610e06575083155b15610e275760065f815480929190610e1d90611dcd565b9190505550610e50565b81158015610e325750835b15610e4f5760065f815480929190610e4990611d86565b91905055505b5b5f60045f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2090505f6201518042610ea09190611e21565b9050815f0160049054906101000a900463ffffffff1663ffffffff168163ffffffff16118015610efa57506001825f0160049054906101000a900463ffffffff16610eeb9190611e51565b63ffffffff168163ffffffff16145b15610f4557815f015f81819054906101000a900463ffffffff1680929190610f2190611e88565b91906101000a81548163ffffffff021916908363ffffffff16021790555050610fe4565b6001825f0160049054906101000a900463ffffffff16610f659190611e51565b63ffffffff168163ffffffff161115610f9f576001825f015f6101000a81548163ffffffff021916908363ffffffff160217905550610fe3565b5f825f0160049054906101000a900463ffffffff1663ffffffff1603610fe2576001825f015f6101000a81548163ffffffff021916908363ffffffff1602179055505b5b5b80825f0160046101000a81548163ffffffff021916908363ffffffff1602179055505f60035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050601b60028154811061105c5761105b611eb3565b5b905f5260205f200154811015801561108757506003835f0160089054906101000a900460ff1660ff16105b156110ae576003835f0160086101000a81548160ff021916908360ff160217905550611179565b601b6001815481106110c3576110c2611eb3565b5b905f5260205f20015481101580156110ee57506002835f0160089054906101000a900460ff1660ff16105b15611115576002835f0160086101000a81548160ff021916908360ff160217905550611178565b601b5f8154811061112957611128611eb3565b5b905f5260205f200154811015801561115457506001835f0160089054906101000a900460ff1660ff16105b15611177576001835f0160086101000a81548160ff021916908360ff1602179055505b5b5b6111838682611206565b8573ffffffffffffffffffffffffffffffffffffffff167fac96b2df6535e2c9b68cb47c19cfe5b09fc9ba556bfabe18913cc4c09ec9837e88424685885f015f9054906101000a900463ffffffff16895f0160089054906101000a900460ff166040516111f596959493929190611ee0565b60405180910390a250505050505050565b5f60116009600a811061121c5761121b611eb3565b5b0154905080821115801561123657506112348361165e565b155b15611241575061165a565b5f600990505f5f90505b600a8110156113105783601182600a811061126957611268611eb3565b5b015410806112f6575083601182600a811061128757611286611eb3565b5b01541480156112f557508473ffffffffffffffffffffffffffffffffffffffff16600782600a81106112bc576112bb611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b5b1561130357809150611310565b808060010191505061124b565b505f600990505b8181111561140057600760018261132e9190611f3f565b600a811061133f5761133e611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600782600a811061137457611373611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060116001826113c19190611f3f565b600a81106113d2576113d1611eb3565b5b0154601182600a81106113e8576113e7611eb3565b5b018190555080806113f890611dcd565b915050611317565b5083600782600a811061141657611415611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082601182600a811061146957611468611eb3565b5b01819055505f60018261147c9190611f72565b90505b600a811015611656578473ffffffffffffffffffffffffffffffffffffffff16600782600a81106114b3576114b2611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603611649575f8190505b60098110156115d857600760018261150c9190611f72565b600a811061151d5761151c611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600782600a811061155257611551611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601160018261159f9190611f72565b600a81106115b0576115af611eb3565b5b0154601182600a81106115c6576115c5611eb3565b5b018190555080806001019150506114f4565b505f60076009600a81106115ef576115ee611eb3565b5b015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f60116009600a811061164357611642611eb3565b5b01819055505b808060010191505061147f565b5050505b5050565b5f5f5f90505b600a8110156116eb578273ffffffffffffffffffffffffffffffffffffffff16600782600a811061169857611697611eb3565b5b015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036116de5760019150506116f0565b8080600101915050611664565b505f90505b919050565b604051806101400160405280600a90602082028036833780820191505090505090565b604051806101400160405280600a90602082028036833780820191505090505090565b5f819050919050565b61174d8161173b565b82525050565b5f6020820190506117665f830184611744565b92915050565b5f5ffd5b6117798161173b565b8114611783575f5ffd5b50565b5f8135905061179481611770565b92915050565b5f602082840312156117af576117ae61176c565b5b5f6117bc84828501611786565b91505092915050565b5f600a9050919050565b5f81905092915050565b5f819050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61180b826117e2565b9050919050565b61181b81611801565b82525050565b5f61182c8383611812565b60208301905092915050565b5f602082019050919050565b61184d816117c5565b61185781846117cf565b9250611862826117d9565b805f5b838110156118925781516118798782611821565b965061188483611838565b925050600181019050611865565b505050505050565b5f600a9050919050565b5f81905092915050565b5f819050919050565b6118c08161173b565b82525050565b5f6118d183836118b7565b60208301905092915050565b5f602082019050919050565b6118f28161189a565b6118fc81846118a4565b9250611907826118ae565b805f5b8381101561193757815161191e87826118c6565b9650611929836118dd565b92505060018101905061190a565b505050505050565b5f610280820190506119535f830185611844565b6119616101408301846118e9565b9392505050565b5f60408201905061197b5f830185611744565b6119886020830184611744565b9392505050565b61199881611801565b81146119a2575f5ffd5b50565b5f813590506119b38161198f565b92915050565b5f602082840312156119ce576119cd61176c565b5b5f6119db848285016119a5565b91505092915050565b5f8115159050919050565b6119f8816119e4565b82525050565b5f7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b611a31816119fe565b82525050565b5f604082019050611a4a5f8301856119ef565b611a576020830184611a28565b9392505050565b611a6781611801565b82525050565b5f602082019050611a805f830184611a5e565b92915050565b5f63ffffffff82169050919050565b611a9e81611a86565b82525050565b5f60ff82169050919050565b611ab981611aa4565b82525050565b5f606082019050611ad25f830186611a95565b611adf6020830185611a95565b611aec6040830184611ab0565b949350505050565b5f604082019050611b075f8301856119ef565b611b146020830184611744565b9392505050565b5f606082019050611b2e5f830186611744565b611b3b6020830185611a95565b611b486040830184611ab0565b949350505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611b9282611b50565b611b9c8185611b5a565b9350611bac818560208601611b6a565b611bb581611b78565b840191505092915050565b5f6020820190508181035f830152611bd88184611b88565b905092915050565b7f4e6f7420746865206f776e6572000000000000000000000000000000000000005f82015250565b5f611c14600d83611b5a565b9150611c1f82611be0565b602082019050919050565b5f6020820190508181035f830152611c4181611c08565b9050919050565b5f81905092915050565b50565b5f611c605f83611c48565b9150611c6b82611c52565b5f82019050919050565b5f611c7f82611c55565b9150819050919050565b7f5769746864726177616c206661696c65640000000000000000000000000000005f82015250565b5f611cbd601183611b5a565b9150611cc882611c89565b602082019050919050565b5f6020820190508181035f830152611cea81611cb1565b9050919050565b7f496e73756666696369656e74206665652073656e7400000000000000000000005f82015250565b5f611d25601583611b5a565b9150611d3082611cf1565b602082019050919050565b5f6020820190508181035f830152611d5281611d19565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611d908261173b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611dc257611dc1611d59565b5b600182019050919050565b5f611dd78261173b565b91505f8203611de957611de8611d59565b5b600182039050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611e2b8261173b565b9150611e368361173b565b925082611e4657611e45611df4565b5b828204905092915050565b5f611e5b82611a86565b9150611e6683611a86565b9250828201905063ffffffff811115611e8257611e81611d59565b5b92915050565b5f611e9282611a86565b915063ffffffff8203611ea857611ea7611d59565b5b600182019050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60c082019050611ef35f8301896119ef565b611f006020830188611744565b611f0d6040830187611744565b611f1a6060830186611744565b611f276080830185611a95565b611f3460a0830184611ab0565b979650505050505050565b5f611f498261173b565b9150611f548361173b565b9250828203905081811115611f6c57611f6b611d59565b5b92915050565b5f611f7c8261173b565b9150611f878361173b565b9250828201905080821115611f9f57611f9e611d59565b5b9291505056fe412073696d706c652057656233206c6967687462756c6220746f67676c6520617070a2646970667358221220681eed248a456a3c2897962c558a1c7569b6dc6918e8151e40365a1e424d2e2d64736f6c634300081e0033

Block Transaction Difficulty 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
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.