ETH Price: $3,059.27 (+1.82%)
Gas: 5 Gwei

Contract

0x46b4ED31A469fFd8969d32DebDCC54448309Bd09
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
0x3136382e176493902023-07-08 13:38:35367 days ago1688823515IN
0x46b4ED31...48309Bd09
0 ETH0.0024298723.87990646
0x7b227022176491182023-07-08 12:43:47367 days ago1688820227IN
0x46b4ED31...48309Bd09
0 ETH0.0037078521.78798316
0x7b227022176486452023-07-08 11:07:47367 days ago1688814467IN
0x46b4ED31...48309Bd09
0 ETH0.0028437116.71012591
0x7b227022176485312023-07-08 10:44:47367 days ago1688813087IN
0x46b4ED31...48309Bd09
0 ETH0.0023243413.65954939
0x7b227022176485172023-07-08 10:41:59367 days ago1688812919IN
0x46b4ED31...48309Bd09
0 ETH0.0028654216.83927124
0x2270223a176484682023-07-08 10:31:59367 days ago1688812319IN
0x46b4ED31...48309Bd09
0 ETH0.0023292715.7922191
0x7b227022176483492023-07-08 10:07:35367 days ago1688810855IN
0x46b4ED31...48309Bd09
0 ETH0.0029725417.46714318
0x2270223a176483462023-07-08 10:06:59367 days ago1688810819IN
0x46b4ED31...48309Bd09
0 ETH0.0030490720.67803071
0x2270223a176483142023-07-08 10:00:35367 days ago1688810435IN
0x46b4ED31...48309Bd09
0 ETH0.0039900923.45155403
0x7b227022176483072023-07-08 9:59:11367 days ago1688810351IN
0x46b4ED31...48309Bd09
0 ETH0.0026450815.54293002
0x2270223a176482972023-07-08 9:57:11367 days ago1688810231IN
0x46b4ED31...48309Bd09
0 ETH0.0035791521.03627217
0x7b227022176479022023-07-08 8:36:59367 days ago1688805419IN
0x46b4ED31...48309Bd09
0 ETH0.0046449527.29197029
0x7b227022176479022023-07-08 8:36:59367 days ago1688805419IN
0x46b4ED31...48309Bd09
0 ETH0.0046449527.29197029
0x7b227022176479022023-07-08 8:36:59367 days ago1688805419IN
0x46b4ED31...48309Bd09
0 ETH0.0046449527.29197029
0x7b227022176479022023-07-08 8:36:59367 days ago1688805419IN
0x46b4ED31...48309Bd09
0 ETH0.0046449527.29197029
0x7b227022176479022023-07-08 8:36:59367 days ago1688805419IN
0x46b4ED31...48309Bd09
0 ETH0.0046449527.29197029
0x7b227022176479002023-07-08 8:36:35367 days ago1688805395IN
0x46b4ED31...48309Bd09
0 ETH0.0046006627.03678974
0x7b227022176478962023-07-08 8:35:47367 days ago1688805347IN
0x46b4ED31...48309Bd09
0 ETH0.0047163527.71148784
0x7b227022176478322023-07-08 8:22:47367 days ago1688804567IN
0x46b4ED31...48309Bd09
0 ETH0.0038451222.59243948
0x7b227022176478132023-07-08 8:18:59367 days ago1688804339IN
0x46b4ED31...48309Bd09
0 ETH0.003378919.8531301
0x7b227022176478122023-07-08 8:18:47367 days ago1688804327IN
0x46b4ED31...48309Bd09
0 ETH0.003283119.29026693
0x7b227022176478112023-07-08 8:18:35367 days ago1688804315IN
0x46b4ED31...48309Bd09
0 ETH0.0034086920.02817173
0x7b227022176478112023-07-08 8:18:35367 days ago1688804315IN
0x46b4ED31...48309Bd09
0 ETH0.0035274920.72817173
0x7b227022176478102023-07-08 8:18:23367 days ago1688804303IN
0x46b4ED31...48309Bd09
0 ETH0.0032972519.37336671
0x7b227022176478082023-07-08 8:17:59367 days ago1688804279IN
0x46b4ED31...48309Bd09
0 ETH0.0030846918.12447022
View all transactions

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

Contract Source Code Verified (Exact Match)

Contract Name:
UniscriptionFactoryV1

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : Uniscription.sol
// SPDX-License-Identifier: GPL-2.0-or-later
pragma solidity >=0.4.22 <0.9.0;
contract UniscriptionFactoryV1{
    // Struct to store owner and content
    struct Uniscription {
         address owner;
         bytes content;
    }
    // Array to store all Uniscriptions
    Uniscription[] private uniscriptions;

    // Mapping to store content hash to index
    mapping(bytes32 => uint) private contentHashToIndex;

    // Variable to store the fee for creating an Uniscription
    uint public fee;

    // Variable to store the admin's address
    address public admin;

    // Variable to store the dataLimit for Gas Saving
    uint public dataLimit = 280;

    // Mapping to store approved addresses for each Uniscription
   mapping(uint => mapping(address => mapping(address => bool))) private uniscriptionApprovals;

    // Event to log new Uniscription
    event NewUniscription(uint indexed id, address indexed owner, bytes content);

    // Event to log Uniscription transfer
    event UniscriptionTransfer(uint indexed id, address indexed from, address to);
 
   // Event to log Uniscription approval
   event Approval(address indexed owner, address indexed spender, uint indexed id);

  modifier onlyOwner() {
        require(msg.sender == admin, "Only admin can call this function");
        _;
    }
    // Set initial admin at contract creation
    constructor() public{
        admin = msg.sender;
        createUniscription(msg.sender,"Hello World");
    }

    // Allow admin to set the fee
    function setFee(uint _fee) public  onlyOwner{
        
        fee = _fee;
    }

    // Allow admin to set the dataLimit
    function setOnChainDataLimit(uint _limit) public onlyOwner{
        dataLimit = _limit;
    }

    // Allow admin to withdraw contract's Ether
    function withdraw() public onlyOwner{
        payable(admin).transfer(address(this).balance);
    }

    // Allow admin to transfer admin role
    function transferAdmin(address _newAdmin) public onlyOwner{
        admin = _newAdmin;
    }

    // Allow users to create a new Uniscription
    function createUniscription(address receiver, bytes memory _content) public payable {
        require(msg.sender == tx.origin, "only EOA");
        bytes32 contentHash = keccak256(abi.encodePacked(_content));
        uint existingIndex = contentHashToIndex[contentHash];
        require(existingIndex == 0, "This content already exists.");
        require(msg.value >= fee, "You must send the creat fee.");
        if(_content.length > dataLimit){
            _content="";
        }
        uint id = uniscriptions.length + 1;
        uniscriptions.push(Uniscription(receiver, _content));
        contentHashToIndex[contentHash] = id;
        emit NewUniscription(id, msg.sender, _content);
    }

  
    fallback() external payable {
        createUniscription(msg.sender,msg.data);
    }

    // Allow users to transfer their Uniscription
function transferUniscription(uint _id, address _to) public {
        require(msg.sender == uniscriptions[_id-1].owner, "Only the owner can transfer this Uniscription.");
        // Transfer the Uniscription
        uniscriptions[_id-1].owner = _to;
        emit UniscriptionTransfer(_id, msg.sender, _to);
    }

function approve(uint _id, address _spender) public {
    require(msg.sender == uniscriptions[_id-1].owner, "Only the owner can approve this Uniscription.");
    uniscriptionApprovals[_id][msg.sender][_spender] = true;
    emit Approval(msg.sender, _spender, _id);
}

function safeTransferFrom(address _from, address _to, uint _id) public {
    require(uniscriptionApprovals[_id][_from][_to], "Transfer not approved for this Uniscription.");
    require(_from == uniscriptions[_id-1].owner, "Only the owner can transfer this Uniscription.");
    // Transfer the Uniscription
    uniscriptions[_id-1].owner = _to;
    uniscriptionApprovals[_id][_from][_to]=false;
    emit UniscriptionTransfer(_id, _from, _to);
}

 function isApproved(uint _id, address _owner, address _spender) public view returns (bool) {
    return uniscriptionApprovals[_id][_owner][_spender];
}
    // Allow users to get the count of Uniscriptions
    function getUniscriptionsCount() public view returns (uint) {
        return uniscriptions.length;
    }

    // Allow users to get specific Uniscription content
    function getUniscription(uint _id) public view returns (address, bytes memory) {
        return (uniscriptions[_id-1].owner, uniscriptions[_id-1].content);
    }

    function getUniscriptionByContent(bytes memory _content) public view returns (uint,address) {
        bytes32 contentHash = keccak256(abi.encodePacked(_content));
        uint id= contentHashToIndex[contentHash];
        return (id,uniscriptions[id-1].owner);
    }



}

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

Contract Security Audit

Contract ABI

[{"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":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"bytes","name":"content","type":"bytes"}],"name":"NewUniscription","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"}],"name":"UniscriptionTransfer","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"address","name":"_spender","type":"address"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"bytes","name":"_content","type":"bytes"}],"name":"createUniscription","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"dataLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"}],"name":"getUniscription","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_content","type":"bytes"}],"name":"getUniscriptionByContent","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getUniscriptionsCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"isApproved","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_id","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_limit","type":"uint256"}],"name":"setOnChainDataLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newAdmin","type":"address"}],"name":"transferAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"address","name":"_to","type":"address"}],"name":"transferUniscription","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405261011860045534801562000016575f80fd5b503360035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200009e336040518060400160405280600b81526020017f48656c6c6f20576f726c64000000000000000000000000000000000000000000815250620000a460201b60201c565b62000942565b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161462000115576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200010c9062000393565b60405180910390fd5b5f8160405160200162000129919062000427565b6040516020818303038152906040528051906020012090505f60015f8381526020019081526020015f205490505f81146200019b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000192906200048d565b60405180910390fd5b600254341015620001e3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001da90620004fb565b60405180910390fd5b60045483511115620002015760405180602001604052805f81525092505b5f60015f8054905062000215919062000551565b90505f60405180604001604052808773ffffffffffffffffffffffffffffffffffffffff16815260200186815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001019081620002c49190620007dc565b5050508060015f8581526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff16817f0182254e41025ecf31397f4a7559ab4bc9f7f18017621ed5331097c355d99bbc8660405162000326919062000920565b60405180910390a35050505050565b5f82825260208201905092915050565b7f6f6e6c7920454f410000000000000000000000000000000000000000000000005f82015250565b5f6200037b60088362000335565b9150620003888262000345565b602082019050919050565b5f6020820190508181035f830152620003ac816200036d565b9050919050565b5f81519050919050565b5f81905092915050565b5f5b83811015620003e6578082015181840152602081019050620003c9565b5f8484015250505050565b5f620003fd82620003b3565b620004098185620003bd565b93506200041b818560208601620003c7565b80840191505092915050565b5f620004348284620003f1565b915081905092915050565b7f5468697320636f6e74656e7420616c7265616479206578697374732e000000005f82015250565b5f62000475601c8362000335565b915062000482826200043f565b602082019050919050565b5f6020820190508181035f830152620004a68162000467565b9050919050565b7f596f75206d7573742073656e6420746865206372656174206665652e000000005f82015250565b5f620004e3601c8362000335565b9150620004f082620004ad565b602082019050919050565b5f6020820190508181035f8301526200051481620004d5565b9050919050565b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6200055d826200051b565b91506200056a836200051b565b925082820190508082111562000585576200058462000524565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620005fd57607f821691505b602082108103620006135762000612620005b8565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620006777fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200063a565b6200068386836200063a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f620006c4620006be620006b8846200051b565b6200069b565b6200051b565b9050919050565b5f819050919050565b620006df83620006a4565b620006f7620006ee82620006cb565b84845462000646565b825550505050565b5f90565b6200070d620006ff565b6200071a818484620006d4565b505050565b5b818110156200074157620007355f8262000703565b60018101905062000720565b5050565b601f82111562000790576200075a8162000619565b62000765846200062b565b8101602085101562000775578190505b6200078d62000784856200062b565b8301826200071f565b50505b505050565b5f82821c905092915050565b5f620007b25f198460080262000795565b1980831691505092915050565b5f620007cc8383620007a1565b9150826002028217905092915050565b620007e782620003b3565b67ffffffffffffffff8111156200080357620008026200058b565b5b6200080f8254620005e5565b6200081c82828562000745565b5f60209050601f83116001811462000852575f84156200083d578287015190505b620008498582620007bf565b865550620008b8565b601f198416620008628662000619565b5f5b828110156200088b5784890151825560018201915060208501945060208101905062000864565b86831015620008ab5784890151620008a7601f891682620007a1565b8355505b6001600288020188555050505b505050505050565b5f82825260208201905092915050565b5f601f19601f8301169050919050565b5f620008ec82620003b3565b620008f88185620008c0565b93506200090a818560208601620003c7565b6200091581620008d0565b840191505092915050565b5f6020820190508181035f8301526200093a8184620008e0565b905092915050565b611e8380620009505f395ff3fe6080604052600436106100eb575f3560e01c806375829def11610089578063ca77287e11610058578063ca77287e14610302578063ddca3f431461033f578063f851a44014610369578063febe490914610393576100ec565b806375829def146102455780637e49a01e1461026d5780637f838052146102a9578063c546134a146102e6576100ec565b806342842e0e116100c557806342842e0e146101a3578063648e36e0146101cb57806369fe0e2d146101f5578063701dbd551461021d576100ec565b8063322de9531461013b5780633ccfd60b146101635780633f01a6cf14610179576100ec565b5b610139335f368080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050506103bb565b005b348015610146575f80fd5b50610161600480360381019061015c9190611271565b61063a565b005b34801561016e575f80fd5b506101776107b2565b005b348015610184575f80fd5b5061018d6108a8565b60405161019a91906112be565b60405180910390f35b3480156101ae575f80fd5b506101c960048036038101906101c491906112d7565b6108ae565b005b3480156101d6575f80fd5b506101df610b98565b6040516101ec91906112be565b60405180910390f35b348015610200575f80fd5b5061021b60048036038101906102169190611327565b610ba3565b005b348015610228575f80fd5b50610243600480360381019061023e9190611327565b610c3c565b005b348015610250575f80fd5b5061026b60048036038101906102669190611352565b610cd5565b005b348015610278575f80fd5b50610293600480360381019061028e919061137d565b610da7565b6040516102a091906113e7565b60405180910390f35b3480156102b4575f80fd5b506102cf60048036038101906102ca919061153c565b610e45565b6040516102dd929190611592565b60405180910390f35b61030060048036038101906102fb91906115b9565b6103bb565b005b34801561030d575f80fd5b5061032860048036038101906103239190611327565b610edf565b60405161033692919061168d565b60405180910390f35b34801561034a575f80fd5b50610353610ff0565b60405161036091906112be565b60405180910390f35b348015610374575f80fd5b5061037d610ff6565b60405161038a91906116bb565b60405180910390f35b34801561039e575f80fd5b506103b960048036038101906103b49190611271565b61101b565b005b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610429576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104209061172e565b60405180910390fd5b5f8160405160200161043b9190611786565b6040516020818303038152906040528051906020012090505f60015f8381526020019081526020015f205490505f81146104aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104a1906117e6565b60405180910390fd5b6002543410156104ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e69061184e565b60405180910390fd5b6004548351111561050c5760405180602001604052805f81525092505b5f60015f8054905061051e9190611899565b90505f60405180604001604052808773ffffffffffffffffffffffffffffffffffffffff16815260200186815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010190816105cb9190611ac6565b5050508060015f8581526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff16817f0182254e41025ecf31397f4a7559ab4bc9f7f18017621ed5331097c355d99bbc8660405161062b9190611b95565b60405180910390a35050505050565b5f6001836106489190611bb5565b8154811061065957610658611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106eb90611c85565b60405180910390fd5b805f6001846107039190611bb5565b8154811061071457610713611be8565b5b905f5260205f2090600202015f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16827fc44c7f3ff7db5410aa083e8fbc22925e24476dfa1bdcbcadc1890d5eda1d2d71836040516107a691906116bb565b60405180910390a35050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610841576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083890611d13565b60405180910390fd5b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156108a5573d5f803e3d5ffd5b50565b60045481565b60055f8281526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610981576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097890611da1565b60405180910390fd5b5f60018261098f9190611bb5565b815481106109a05761099f611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610a3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3290611c85565b60405180910390fd5b815f600183610a4a9190611bb5565b81548110610a5b57610a5a611be8565b5b905f5260205f2090600202015f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f60055f8381526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff16817fc44c7f3ff7db5410aa083e8fbc22925e24476dfa1bdcbcadc1890d5eda1d2d7184604051610b8b91906116bb565b60405180910390a3505050565b5f8080549050905090565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2990611d13565b60405180910390fd5b8060028190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ccb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc290611d13565b60405180910390fd5b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5b90611d13565b60405180910390fd5b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60055f8581526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1690509392505050565b5f805f83604051602001610e599190611786565b6040516020818303038152906040528051906020012090505f60015f8381526020019081526020015f20549050805f600183610e959190611bb5565b81548110610ea657610ea5611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050915091565b5f60605f600184610ef09190611bb5565b81548110610f0157610f00611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f600185610f3d9190611bb5565b81548110610f4e57610f4d611be8565b5b905f5260205f209060020201600101808054610f69906118f9565b80601f0160208091040260200160405190810160405280929190818152602001828054610f95906118f9565b8015610fe05780601f10610fb757610100808354040283529160200191610fe0565b820191905f5260205f20905b815481529060010190602001808311610fc357829003601f168201915b5050505050905091509150915091565b60025481565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f6001836110299190611bb5565b8154811061103a57611039611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cc90611e2f565b60405180910390fd5b600160055f8481526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550818173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6111f6816111e4565b8114611200575f80fd5b50565b5f81359050611211816111ed565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61124082611217565b9050919050565b61125081611236565b811461125a575f80fd5b50565b5f8135905061126b81611247565b92915050565b5f8060408385031215611287576112866111dc565b5b5f61129485828601611203565b92505060206112a58582860161125d565b9150509250929050565b6112b8816111e4565b82525050565b5f6020820190506112d15f8301846112af565b92915050565b5f805f606084860312156112ee576112ed6111dc565b5b5f6112fb8682870161125d565b935050602061130c8682870161125d565b925050604061131d86828701611203565b9150509250925092565b5f6020828403121561133c5761133b6111dc565b5b5f61134984828501611203565b91505092915050565b5f60208284031215611367576113666111dc565b5b5f6113748482850161125d565b91505092915050565b5f805f60608486031215611394576113936111dc565b5b5f6113a186828701611203565b93505060206113b28682870161125d565b92505060406113c38682870161125d565b9150509250925092565b5f8115159050919050565b6113e1816113cd565b82525050565b5f6020820190506113fa5f8301846113d8565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61144e82611408565b810181811067ffffffffffffffff8211171561146d5761146c611418565b5b80604052505050565b5f61147f6111d3565b905061148b8282611445565b919050565b5f67ffffffffffffffff8211156114aa576114a9611418565b5b6114b382611408565b9050602081019050919050565b828183375f83830152505050565b5f6114e06114db84611490565b611476565b9050828152602081018484840111156114fc576114fb611404565b5b6115078482856114c0565b509392505050565b5f82601f83011261152357611522611400565b5b81356115338482602086016114ce565b91505092915050565b5f60208284031215611551576115506111dc565b5b5f82013567ffffffffffffffff81111561156e5761156d6111e0565b5b61157a8482850161150f565b91505092915050565b61158c81611236565b82525050565b5f6040820190506115a55f8301856112af565b6115b26020830184611583565b9392505050565b5f80604083850312156115cf576115ce6111dc565b5b5f6115dc8582860161125d565b925050602083013567ffffffffffffffff8111156115fd576115fc6111e0565b5b6116098582860161150f565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561164a57808201518184015260208101905061162f565b5f8484015250505050565b5f61165f82611613565b611669818561161d565b935061167981856020860161162d565b61168281611408565b840191505092915050565b5f6040820190506116a05f830185611583565b81810360208301526116b28184611655565b90509392505050565b5f6020820190506116ce5f830184611583565b92915050565b5f82825260208201905092915050565b7f6f6e6c7920454f410000000000000000000000000000000000000000000000005f82015250565b5f6117186008836116d4565b9150611723826116e4565b602082019050919050565b5f6020820190508181035f8301526117458161170c565b9050919050565b5f81905092915050565b5f61176082611613565b61176a818561174c565b935061177a81856020860161162d565b80840191505092915050565b5f6117918284611756565b915081905092915050565b7f5468697320636f6e74656e7420616c7265616479206578697374732e000000005f82015250565b5f6117d0601c836116d4565b91506117db8261179c565b602082019050919050565b5f6020820190508181035f8301526117fd816117c4565b9050919050565b7f596f75206d7573742073656e6420746865206372656174206665652e000000005f82015250565b5f611838601c836116d4565b915061184382611804565b602082019050919050565b5f6020820190508181035f8301526118658161182c565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6118a3826111e4565b91506118ae836111e4565b92508282019050808211156118c6576118c561186c565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061191057607f821691505b602082108103611923576119226118cc565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026119857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261194a565b61198f868361194a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6119ca6119c56119c0846111e4565b6119a7565b6111e4565b9050919050565b5f819050919050565b6119e3836119b0565b6119f76119ef826119d1565b848454611956565b825550505050565b5f90565b611a0b6119ff565b611a168184846119da565b505050565b5b81811015611a3957611a2e5f82611a03565b600181019050611a1c565b5050565b601f821115611a7e57611a4f81611929565b611a588461193b565b81016020851015611a67578190505b611a7b611a738561193b565b830182611a1b565b50505b505050565b5f82821c905092915050565b5f611a9e5f1984600802611a83565b1980831691505092915050565b5f611ab68383611a8f565b9150826002028217905092915050565b611acf82611613565b67ffffffffffffffff811115611ae857611ae7611418565b5b611af282546118f9565b611afd828285611a3d565b5f60209050601f831160018114611b2e575f8415611b1c578287015190505b611b268582611aab565b865550611b8d565b601f198416611b3c86611929565b5f5b82811015611b6357848901518255600182019150602085019450602081019050611b3e565b86831015611b805784890151611b7c601f891682611a8f565b8355505b6001600288020188555050505b505050505050565b5f6020820190508181035f830152611bad8184611655565b905092915050565b5f611bbf826111e4565b9150611bca836111e4565b9250828203905081811115611be257611be161186c565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f6e6c7920746865206f776e65722063616e207472616e7366657220746869735f8201527f20556e69736372697074696f6e2e000000000000000000000000000000000000602082015250565b5f611c6f602e836116d4565b9150611c7a82611c15565b604082019050919050565b5f6020820190508181035f830152611c9c81611c63565b9050919050565b7f4f6e6c792061646d696e2063616e2063616c6c20746869732066756e6374696f5f8201527f6e00000000000000000000000000000000000000000000000000000000000000602082015250565b5f611cfd6021836116d4565b9150611d0882611ca3565b604082019050919050565b5f6020820190508181035f830152611d2a81611cf1565b9050919050565b7f5472616e73666572206e6f7420617070726f76656420666f72207468697320555f8201527f6e69736372697074696f6e2e0000000000000000000000000000000000000000602082015250565b5f611d8b602c836116d4565b9150611d9682611d31565b604082019050919050565b5f6020820190508181035f830152611db881611d7f565b9050919050565b7f4f6e6c7920746865206f776e65722063616e20617070726f76652074686973205f8201527f556e69736372697074696f6e2e00000000000000000000000000000000000000602082015250565b5f611e19602d836116d4565b9150611e2482611dbf565b604082019050919050565b5f6020820190508181035f830152611e4681611e0d565b905091905056fea2646970667358221220bdb7ab7dd5f5eded7db842a90714cd850978c9b8cfd2b7f0194fc3f3805b3fc764736f6c63430008140033

Deployed Bytecode

0x6080604052600436106100eb575f3560e01c806375829def11610089578063ca77287e11610058578063ca77287e14610302578063ddca3f431461033f578063f851a44014610369578063febe490914610393576100ec565b806375829def146102455780637e49a01e1461026d5780637f838052146102a9578063c546134a146102e6576100ec565b806342842e0e116100c557806342842e0e146101a3578063648e36e0146101cb57806369fe0e2d146101f5578063701dbd551461021d576100ec565b8063322de9531461013b5780633ccfd60b146101635780633f01a6cf14610179576100ec565b5b610139335f368080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050506103bb565b005b348015610146575f80fd5b50610161600480360381019061015c9190611271565b61063a565b005b34801561016e575f80fd5b506101776107b2565b005b348015610184575f80fd5b5061018d6108a8565b60405161019a91906112be565b60405180910390f35b3480156101ae575f80fd5b506101c960048036038101906101c491906112d7565b6108ae565b005b3480156101d6575f80fd5b506101df610b98565b6040516101ec91906112be565b60405180910390f35b348015610200575f80fd5b5061021b60048036038101906102169190611327565b610ba3565b005b348015610228575f80fd5b50610243600480360381019061023e9190611327565b610c3c565b005b348015610250575f80fd5b5061026b60048036038101906102669190611352565b610cd5565b005b348015610278575f80fd5b50610293600480360381019061028e919061137d565b610da7565b6040516102a091906113e7565b60405180910390f35b3480156102b4575f80fd5b506102cf60048036038101906102ca919061153c565b610e45565b6040516102dd929190611592565b60405180910390f35b61030060048036038101906102fb91906115b9565b6103bb565b005b34801561030d575f80fd5b5061032860048036038101906103239190611327565b610edf565b60405161033692919061168d565b60405180910390f35b34801561034a575f80fd5b50610353610ff0565b60405161036091906112be565b60405180910390f35b348015610374575f80fd5b5061037d610ff6565b60405161038a91906116bb565b60405180910390f35b34801561039e575f80fd5b506103b960048036038101906103b49190611271565b61101b565b005b3273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610429576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104209061172e565b60405180910390fd5b5f8160405160200161043b9190611786565b6040516020818303038152906040528051906020012090505f60015f8381526020019081526020015f205490505f81146104aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104a1906117e6565b60405180910390fd5b6002543410156104ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104e69061184e565b60405180910390fd5b6004548351111561050c5760405180602001604052805f81525092505b5f60015f8054905061051e9190611899565b90505f60405180604001604052808773ffffffffffffffffffffffffffffffffffffffff16815260200186815250908060018154018082558091505060019003905f5260205f2090600202015f909190919091505f820151815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010190816105cb9190611ac6565b5050508060015f8581526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff16817f0182254e41025ecf31397f4a7559ab4bc9f7f18017621ed5331097c355d99bbc8660405161062b9190611b95565b60405180910390a35050505050565b5f6001836106489190611bb5565b8154811061065957610658611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106eb90611c85565b60405180910390fd5b805f6001846107039190611bb5565b8154811061071457610713611be8565b5b905f5260205f2090600202015f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16827fc44c7f3ff7db5410aa083e8fbc22925e24476dfa1bdcbcadc1890d5eda1d2d71836040516107a691906116bb565b60405180910390a35050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610841576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083890611d13565b60405180910390fd5b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156108a5573d5f803e3d5ffd5b50565b60045481565b60055f8281526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610981576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097890611da1565b60405180910390fd5b5f60018261098f9190611bb5565b815481106109a05761099f611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614610a3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3290611c85565b60405180910390fd5b815f600183610a4a9190611bb5565b81548110610a5b57610a5a611be8565b5b905f5260205f2090600202015f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f60055f8381526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff16817fc44c7f3ff7db5410aa083e8fbc22925e24476dfa1bdcbcadc1890d5eda1d2d7184604051610b8b91906116bb565b60405180910390a3505050565b5f8080549050905090565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2990611d13565b60405180910390fd5b8060028190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ccb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cc290611d13565b60405180910390fd5b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5b90611d13565b60405180910390fd5b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f60055f8581526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1690509392505050565b5f805f83604051602001610e599190611786565b6040516020818303038152906040528051906020012090505f60015f8381526020019081526020015f20549050805f600183610e959190611bb5565b81548110610ea657610ea5611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935093505050915091565b5f60605f600184610ef09190611bb5565b81548110610f0157610f00611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165f600185610f3d9190611bb5565b81548110610f4e57610f4d611be8565b5b905f5260205f209060020201600101808054610f69906118f9565b80601f0160208091040260200160405190810160405280929190818152602001828054610f95906118f9565b8015610fe05780601f10610fb757610100808354040283529160200191610fe0565b820191905f5260205f20905b815481529060010190602001808311610fc357829003601f168201915b5050505050905091509150915091565b60025481565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f6001836110299190611bb5565b8154811061103a57611039611be8565b5b905f5260205f2090600202015f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cc90611e2f565b60405180910390fd5b600160055f8481526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550818173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6111f6816111e4565b8114611200575f80fd5b50565b5f81359050611211816111ed565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61124082611217565b9050919050565b61125081611236565b811461125a575f80fd5b50565b5f8135905061126b81611247565b92915050565b5f8060408385031215611287576112866111dc565b5b5f61129485828601611203565b92505060206112a58582860161125d565b9150509250929050565b6112b8816111e4565b82525050565b5f6020820190506112d15f8301846112af565b92915050565b5f805f606084860312156112ee576112ed6111dc565b5b5f6112fb8682870161125d565b935050602061130c8682870161125d565b925050604061131d86828701611203565b9150509250925092565b5f6020828403121561133c5761133b6111dc565b5b5f61134984828501611203565b91505092915050565b5f60208284031215611367576113666111dc565b5b5f6113748482850161125d565b91505092915050565b5f805f60608486031215611394576113936111dc565b5b5f6113a186828701611203565b93505060206113b28682870161125d565b92505060406113c38682870161125d565b9150509250925092565b5f8115159050919050565b6113e1816113cd565b82525050565b5f6020820190506113fa5f8301846113d8565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61144e82611408565b810181811067ffffffffffffffff8211171561146d5761146c611418565b5b80604052505050565b5f61147f6111d3565b905061148b8282611445565b919050565b5f67ffffffffffffffff8211156114aa576114a9611418565b5b6114b382611408565b9050602081019050919050565b828183375f83830152505050565b5f6114e06114db84611490565b611476565b9050828152602081018484840111156114fc576114fb611404565b5b6115078482856114c0565b509392505050565b5f82601f83011261152357611522611400565b5b81356115338482602086016114ce565b91505092915050565b5f60208284031215611551576115506111dc565b5b5f82013567ffffffffffffffff81111561156e5761156d6111e0565b5b61157a8482850161150f565b91505092915050565b61158c81611236565b82525050565b5f6040820190506115a55f8301856112af565b6115b26020830184611583565b9392505050565b5f80604083850312156115cf576115ce6111dc565b5b5f6115dc8582860161125d565b925050602083013567ffffffffffffffff8111156115fd576115fc6111e0565b5b6116098582860161150f565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561164a57808201518184015260208101905061162f565b5f8484015250505050565b5f61165f82611613565b611669818561161d565b935061167981856020860161162d565b61168281611408565b840191505092915050565b5f6040820190506116a05f830185611583565b81810360208301526116b28184611655565b90509392505050565b5f6020820190506116ce5f830184611583565b92915050565b5f82825260208201905092915050565b7f6f6e6c7920454f410000000000000000000000000000000000000000000000005f82015250565b5f6117186008836116d4565b9150611723826116e4565b602082019050919050565b5f6020820190508181035f8301526117458161170c565b9050919050565b5f81905092915050565b5f61176082611613565b61176a818561174c565b935061177a81856020860161162d565b80840191505092915050565b5f6117918284611756565b915081905092915050565b7f5468697320636f6e74656e7420616c7265616479206578697374732e000000005f82015250565b5f6117d0601c836116d4565b91506117db8261179c565b602082019050919050565b5f6020820190508181035f8301526117fd816117c4565b9050919050565b7f596f75206d7573742073656e6420746865206372656174206665652e000000005f82015250565b5f611838601c836116d4565b915061184382611804565b602082019050919050565b5f6020820190508181035f8301526118658161182c565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6118a3826111e4565b91506118ae836111e4565b92508282019050808211156118c6576118c561186c565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061191057607f821691505b602082108103611923576119226118cc565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026119857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261194a565b61198f868361194a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6119ca6119c56119c0846111e4565b6119a7565b6111e4565b9050919050565b5f819050919050565b6119e3836119b0565b6119f76119ef826119d1565b848454611956565b825550505050565b5f90565b611a0b6119ff565b611a168184846119da565b505050565b5b81811015611a3957611a2e5f82611a03565b600181019050611a1c565b5050565b601f821115611a7e57611a4f81611929565b611a588461193b565b81016020851015611a67578190505b611a7b611a738561193b565b830182611a1b565b50505b505050565b5f82821c905092915050565b5f611a9e5f1984600802611a83565b1980831691505092915050565b5f611ab68383611a8f565b9150826002028217905092915050565b611acf82611613565b67ffffffffffffffff811115611ae857611ae7611418565b5b611af282546118f9565b611afd828285611a3d565b5f60209050601f831160018114611b2e575f8415611b1c578287015190505b611b268582611aab565b865550611b8d565b601f198416611b3c86611929565b5f5b82811015611b6357848901518255600182019150602085019450602081019050611b3e565b86831015611b805784890151611b7c601f891682611a8f565b8355505b6001600288020188555050505b505050505050565b5f6020820190508181035f830152611bad8184611655565b905092915050565b5f611bbf826111e4565b9150611bca836111e4565b9250828203905081811115611be257611be161186c565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f6e6c7920746865206f776e65722063616e207472616e7366657220746869735f8201527f20556e69736372697074696f6e2e000000000000000000000000000000000000602082015250565b5f611c6f602e836116d4565b9150611c7a82611c15565b604082019050919050565b5f6020820190508181035f830152611c9c81611c63565b9050919050565b7f4f6e6c792061646d696e2063616e2063616c6c20746869732066756e6374696f5f8201527f6e00000000000000000000000000000000000000000000000000000000000000602082015250565b5f611cfd6021836116d4565b9150611d0882611ca3565b604082019050919050565b5f6020820190508181035f830152611d2a81611cf1565b9050919050565b7f5472616e73666572206e6f7420617070726f76656420666f72207468697320555f8201527f6e69736372697074696f6e2e0000000000000000000000000000000000000000602082015250565b5f611d8b602c836116d4565b9150611d9682611d31565b604082019050919050565b5f6020820190508181035f830152611db881611d7f565b9050919050565b7f4f6e6c7920746865206f776e65722063616e20617070726f76652074686973205f8201527f556e69736372697074696f6e2e00000000000000000000000000000000000000602082015250565b5f611e19602d836116d4565b9150611e2482611dbf565b604082019050919050565b5f6020820190508181035f830152611e4681611e0d565b905091905056fea2646970667358221220bdb7ab7dd5f5eded7db842a90714cd850978c9b8cfd2b7f0194fc3f3805b3fc764736f6c63430008140033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
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.