Contract 0x877E31c9c04e8a2A3Af59341635F5BC6ae0dDc13

 
 
Txn Hash
Method
Block
From
To
Value
0xf91e26e8f833b3043dae3aa8caeae22645236c0822afe1d88ea86675d7bec2b3Verify113626772020-11-30 21:48:10624 days 9 hrs ago0x3275dd067148cf176e636bcd665069028bda8ee9 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0017928930
0xe4fefe72ea7600c1c9c917baec23d381de31bb69795cc12d7b98770c41ae7a53Verify111081402020-10-22 20:08:37663 days 10 hrs ago0x6588a4c79140eed96f0bef3350665a0ff33f0605 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0017331229
0xc1ce5d30a6e5603d28b3686a616df758e1a61f91c81193f266dbdbf6f48d7bbaVerify110964442020-10-21 1:09:45665 days 5 hrs ago0x402961810cf383732c986dbe378b8c4def2b8166 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0038845965
0x2dbb4deb4c49b76aa4a5a1eaf5555d1d7ab8f800fa5aa5c62ddc90059b032ff7Verify110640792020-10-16 2:00:20670 days 4 hrs ago0xd829b67e1d4d24c5947031efcdda28388612e9b2 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0050200984
0x270b89cd5a59b03ff0b91dace446a50228ca44269aeefefe735124df0d499f07Set Hard Cap110640632020-10-16 1:55:57670 days 4 hrs ago0x62f31e08e279f3091d9755a09914df97554eae0b IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0022789680
0x4f3793d9cf62ad4701f9686c91e4bd8385658ddf154cec143ffdecce22d47903Set Hard Cap108297522020-09-09 20:41:10706 days 10 hrs ago0x62f31e08e279f3091d9755a09914df97554eae0b IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0026492993
0x29f8e7c80890c6e882893dff56fa6d02ea5dd07c82614d6bcc90bff5f990808bVerify108297102020-09-09 20:30:43706 days 10 hrs ago0x1cdb54ab57753051be5502c8376e77e74b5e2d50 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍005318989
0x42b9e757761151755a593b459b312bbbc7aab7e76cb2bc2447334f8ccb0af3a9Verify108296082020-09-09 20:07:51706 days 10 hrs ago0x4a32423b54d4d9efdee65eca9bb43c710b86778b IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0052591488
0x3ba63f5c1f69d94efb2ff6d4d89d44322b9ed4a59108cd6ce6080d08f3f649d6Verify108287092020-09-09 16:59:23706 days 13 hrs ago0xf01a613f03f977d6edd87eea3bd8d3355a177bcf IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍01027923172
0xb0cf0105de9ea74b2f7a2927f153d32b2e1944ab77a2903f2973c48172d392ecVerify108286542020-09-09 16:46:16706 days 14 hrs ago0x24bf68ce8d20ecc0b0f514abce57e42d801649bd IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00926326155
0xabec37ce314c9441625442a889aedfe3abb0e63bfad24ff42664dd546fb5934cVerify108280082020-09-09 14:23:06706 days 16 hrs ago0x8982a82a77eaf1cd6f490b67ad982304ecc590af IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00872539146
0x270f977ba7a39ef3909dc2c0551fd46a1f480572e8724ce3127220906760da6aVerify108273842020-09-09 12:00:29706 days 18 hrs ago0xb755885151df63f2d7d3431c66f48c69b83850cb IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00675186113
0x466e1c64475b8ba7b106c83cad2fb123a60c1cf8600f154f2112f41bfe743b31Verify108272622020-09-09 11:32:25706 days 19 hrs agoENS Name *👾👽👾.eth IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00675186113
0x25a22eb97bed796a1877c13589424ff278433c1d36366ee8bd3bf4be6c340618Verify108269442020-09-09 10:20:50706 days 20 hrs ago0x40968b7eb67d13b1105f06659aec28a0bc3d3176 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00663369111
0xcc662b79b00b37a04913e624dc9aa0ec6558111c4103b987ce9e9bfb559258efVerify108268392020-09-09 9:55:42706 days 20 hrs ago0xc88eea647a570738e69ad3dd8975577df720318d IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00633487106
0x39db4f7beb492210b85840b6594862ad68e66acadc262f6b158f4faac81a39a0Verify108262832020-09-09 7:45:23706 days 23 hrs agoENS Name 77771.eth IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0054981992
0xbdcd03c3c686c088e2b6d87a5fb9f634a784c05bd41f53da70019bd24670e895Verify108262502020-09-09 7:38:24706 days 23 hrs ago0xf24f63889b16fb1a8edf0f0b4e84a661ba13e1cf IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0054981992
0x227fa1b082ee705199419f9873abc883f84a13a09d5073eae0ed830b1da83d97Verify108262322020-09-09 7:35:15706 days 23 hrs ago0x9cabbb58b57701fb95ba4091f9a9e6a129d8c0df IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0056763495
0x6847ff8c8367c8cc390c24a6114422b04b5fe82dd06b3ed1c540d4c898494e7fVerify108262032020-09-09 7:29:20706 days 23 hrs ago0x9addbaab4ceb0dd829c6d8ea5ade0962e1de1a4b IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0056774895
0xaf9870b62c15e831fd7d293666338d254cee1dc5a76dd64cd90d96bcef1244b3Verify108260242020-09-09 6:49:04707 days 6 mins ago0xd0fa4473bdbcf1c243b3104c10e69db307693717 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0051396186
0xd759a9cda75ebf4147900904f3d0ac332d9ad6a123329d3b45fecdcaa7f232e6Verify108259302020-09-09 6:27:24707 days 28 mins ago0xdb28326e00361211f10ac462da1d2f74eb10cc29 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0051375586
0x0d848936acac8aca6aa0fe8daad15ceef9bbcfe6592e33a26fd45985285ad724Verify108257932020-09-09 6:02:14707 days 53 mins ago0x0e559b2ef1dec734ec9800e046dba66fb360de66 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0051385886
0xc758a03a3a19180e10f23a09922b527d204ac0b935c485259bcb47ba1974cb63Verify108257702020-09-09 5:58:44707 days 56 mins agoENS Name chest.codemonkey.eth IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍00657393110
0x7f8a6de20c36525c9d6420515610903fc16e7273b1d56529991b2a5018f441a4Verify108257562020-09-09 5:54:34707 days 1 hr agoENS Name mvl.eth IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0050190884
0xdc94f1a9a11ba2e08f406e695cd62a43c5411507bd2a383d2315d728c9b5cb78Verify108257262020-09-09 5:48:01707 days 1 hr ago0xc2023fef67a789da083d45c7aef2813d68391bc6 IN  0x877e31c9c04e8a2a3af59341635f5bc6ae0ddc130 Ether0.‍0050798585
[ Download CSV Export 
View more zero value Internal Transactions in Advanced View mode
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
KYFV2

Compiler Version
v0.5.16+commit.9c3226ce

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2020-09-01
*/

/*

    /     |  __    / ____|
   /      | |__) | | |
  / /    |  _  /  | |
 / ____   | |    | |____
/_/    _ |_|  _  _____|

* ARC: global/KYFV2.sol
*
* Latest source (may be newer): https://github.com/arcxgame/contracts/blob/master/contracts/global/KYFV2.sol
*
* Contract Dependencies: 
*	- Context
*	- IKYFV2
*	- Ownable
* Libraries: (none)
*
* MIT License
* ===========
*
* Copyright (c) 2020 ARC
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
*/

/* ===============================================
* Flattened with Solidifier by Coinage
* 
* https://solidifier.coina.ge
* ===============================================
*/


pragma solidity ^0.5.0;

/*
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with GSN meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
contract Context {
    // Empty internal constructor, to prevent people from mistakenly deploying
    // an instance of this contract, which should be used via inheritance.
    constructor () internal { }
    // solhint-disable-previous-line no-empty-blocks

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

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


/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
contract Ownable is Context {
    address private _owner;

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

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

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

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

    /**
     * @dev Returns true if the caller is the current owner.
     */
    function isOwner() public view returns (bool) {
        return _msgSender() == _owner;
    }

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

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

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


interface IKYFV2 {

    function checkVerified(
        address _user
    )
        external
        view
        returns (bool);

}


contract KYFV2 is Ownable, IKYFV2 {

    address public verifier;

    uint256 public count;

    uint256 public hardCap;

    mapping (address => bool) public isVerified;

    event Verified (address _user, address _verified);
    event Removed (address _user);
    event VerifierSet (address _verifier);
    event HardCapSet (uint256 _hardCap);

    function checkVerified(
        address _user
    )
        external
        view
        returns (bool)
    {
        return isVerified[_user];
    }

    function verify(
        address _user,
        uint8 _v,
        bytes32 _r,
        bytes32 _s
    )
        public
        returns (bool)
    {
        require(
            count < hardCap,
            "Hard cap reached"
        );

        require(
            isVerified[_user] == false,
            "User has already been verified"
        );

        bytes32 sigHash = keccak256(
            abi.encodePacked(
                _user
            )
        );

        bytes32 recoveryHash = keccak256(
            abi.encodePacked("\x19Ethereum Signed Message:\n32", sigHash)
        );

        address recoveredAddress = ecrecover(
            recoveryHash,
            _v,
            _r,
            _s
        );

        require(
            recoveredAddress == verifier,
            "Invalid signature"
        );

        isVerified[_user] = true;

        count++;

        emit Verified(_user, verifier);
    }

    function removeMultiple(
        address[] memory _users
    )
        public
    {
        for (uint256 i = 0; i < _users.length; i++) {
            remove(_users[i]);
        }
    }

    function remove(
        address _user
    )
        public
        onlyOwner
    {
        delete isVerified[_user];
        count--;

        emit Removed(_user);
    }

    function setVerifier(
        address _verifier
    )
        public
        onlyOwner
    {
        verifier = _verifier;
        emit VerifierSet(_verifier);
    }

    function setHardCap(
        uint256 _hardCap
    )
        public
        onlyOwner
    {
        hardCap = _hardCap;
        emit HardCapSet(_hardCap);
    }

}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_hardCap","type":"uint256"}],"name":"HardCapSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_user","type":"address"}],"name":"Removed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_user","type":"address"},{"indexed":false,"internalType":"address","name":"_verified","type":"address"}],"name":"Verified","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_verifier","type":"address"}],"name":"VerifierSet","type":"event"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"checkVerified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"count","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"hardCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isVerified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"remove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"}],"name":"removeMultiple","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_hardCap","type":"uint256"}],"name":"setHardCap","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_verifier","type":"address"}],"name":"setVerifier","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"verifier","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint8","name":"_v","type":"uint8"},{"internalType":"bytes32","name":"_r","type":"bytes32"},{"internalType":"bytes32","name":"_s","type":"bytes32"}],"name":"verify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405260006100146100b760201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506100bf565b600033905090565b61110b806100ce6000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638f32d59b1161008c578063d18d944b11610066578063d18d944b1461038a578063f2fde38b146103b8578063f3d68b6d146103fc578063fb86a404146104b4576100ea565b80638f32d59b1461028f57806396fc2256146102b1578063b9209e331461032e576100ea565b80635437988d116100c85780635437988d1461019b5780636cc8c590146101df578063715018a61461023b5780638da5cb5b14610245576100ea565b806306661abd146100ef57806329092d0e1461010d5780632b7ac3f314610151575b600080fd5b6100f76104d2565b6040518082815260200191505060405180910390f35b61014f6004803603602081101561012357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506104d8565b005b61015961061a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101dd600480360360208110156101b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610640565b005b610221600480360360208110156101f557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610761565b604051808215151515815260200191505060405180910390f35b6102436107b7565b005b61024d6108f0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610297610919565b604051808215151515815260200191505060405180910390f35b610314600480360360808110156102c757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff1690602001909291908035906020019092919080359060200190929190505050610977565b604051808215151515815260200191505060405180910390f35b6103706004803603602081101561034457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dc1565b604051808215151515815260200191505060405180910390f35b6103b6600480360360208110156103a057600080fd5b8101908080359060200190929190505050610de1565b005b6103fa600480360360208110156103ce57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e9c565b005b6104b26004803603602081101561041257600080fd5b810190808035906020019064010000000081111561042f57600080fd5b82018360208201111561044157600080fd5b8035906020019184602083028401116401000000008311171561046357600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050610f22565b005b6104bc610f5e565b6040518082815260200191505060405180910390f35b60025481565b6104e0610919565b610552576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff0219169055600260008154809291906001900391905055507f066a905b79c0121afe61e3a44e0b14b6bc1ec16d854cdba09efdfc9b6aa9af8181604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610648610919565b6106ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f480b37e3d134e44cb444c9703493c7db564c707cb8a18cecea165f340431da1f81604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6107bf610919565b610831576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661095b610f64565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b6000600354600254106109f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f486172642063617020726561636865640000000000000000000000000000000081525060200191505060405180910390fd5b60001515600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514610ab8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f557365722068617320616c7265616479206265656e207665726966696564000081525060200191505060405180910390fd5b600085604051602001808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140191505060405160208183030381529060405280519060200120905060008160405160200180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c01828152602001915050604051602081830303815290604052805190602001209050600060018288888860405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610bc4573d6000803e3d6000fd5b505050602060405103519050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610c93576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f496e76616c6964207369676e617475726500000000000000000000000000000081525060200191505060405180910390fd5b6001600460008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506002600081548092919060010191905055507f78a953f3f0d92abc078a34e5d4fedf8708e788e1b29300b3d6170e97f88a13fc88600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1505050949350505050565b60046020528060005260406000206000915054906101000a900460ff1681565b610de9610919565b610e5b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b806003819055507f917681cdf3d8a5ef720fb56128d5382782db742feb1d89fc6d376111254537b1816040518082815260200191505060405180910390a150565b610ea4610919565b610f16576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b610f1f81610f6c565b50565b60008090505b8151811015610f5a57610f4d828281518110610f4057fe5b60200260200101516104d8565b8080600101915050610f28565b5050565b60035481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ff2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806110b16026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a265627a7a72315820ebc42b4a7693f136f6234039e462c2322cb73b94b197718509f967e0f018b67e64736f6c63430005100032

Deployed ByteCode Sourcemap

5400:2253:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5400:2253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5475:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7112:180;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7112:180:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5443:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7300:173;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7300:173:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5767:158;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5767:158:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4505:140;;;:::i;:::-;;3694:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4060:94;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5933:971;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;5933:971:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5535:43;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5535:43:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7481:167;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7481:167:0;;;;;;;;;;;;;;;;;:::i;:::-;;4800:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4800:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;6912:192;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6912:192:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;6912:192:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;6912:192:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;6912:192:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;6912:192:0;;;;;;;;;;;;;;;:::i;:::-;;5504:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5475:20;;;;:::o;7112:180::-;3906:9;:7;:9::i;:::-;3898:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7217:10;:17;7228:5;7217:17;;;;;;;;;;;;;;;;7210:24;;;;;;;;;;;7245:5;;:7;;;;;;;;;;;;;;7270:14;7278:5;7270:14;;;;;;;;;;;;;;;;;;;;;;7112:180;:::o;5443:23::-;;;;;;;;;;;;;:::o;7300:173::-;3906:9;:7;:9::i;:::-;3898:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7418:9;7407:8;;:20;;;;;;;;;;;;;;;;;;7443:22;7455:9;7443:22;;;;;;;;;;;;;;;;;;;;;;7300:173;:::o;5767:158::-;5871:4;5900:10;:17;5911:5;5900:17;;;;;;;;;;;;;;;;;;;;;;;;;5893:24;;5767:158;;;:::o;4505:140::-;3906:9;:7;:9::i;:::-;3898:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4604:1;4567:40;;4588:6;;;;;;;;;;;4567:40;;;;;;;;;;;;4635:1;4618:6;;:19;;;;;;;;;;;;;;;;;;4505:140::o;3694:79::-;3732:7;3759:6;;;;;;;;;;;3752:13;;3694:79;:::o;4060:94::-;4100:4;4140:6;;;;;;;;;;;4124:22;;:12;:10;:12::i;:::-;:22;;;4117:29;;4060:94;:::o;5933:971::-;6075:4;6127:7;;6119:5;;:15;6097:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6234:5;6213:26;;:10;:17;6224:5;6213:17;;;;;;;;;;;;;;;;;;;;;;;;;:26;;;6191:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6310:15;6387:5;6352:55;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6352:55:0;;;6328:90;;;;;;6310:108;;6431:20;6531:7;6478:61;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6478:61:0;;;6454:96;;;;;;6431:119;;6563:24;6590:98;6614:12;6641:2;6658;6675;6590:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6590:98:0;;;;;;;;6563:125;;6743:8;;;;;;;;;;;6723:28;;:16;:28;;;6701:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6829:4;6809:10;:17;6820:5;6809:17;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;6846:5;;:7;;;;;;;;;;;;;6871:25;6880:5;6887:8;;;;;;;;;;;6871:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5933:971;;;;;;;;;:::o;5535:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;7481:167::-;3906:9;:7;:9::i;:::-;3898:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7596:8;7586:7;:18;;;;7620:20;7631:8;7620:20;;;;;;;;;;;;;;;;;;7481:167;:::o;4800:109::-;3906:9;:7;:9::i;:::-;3898:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4873:28;4892:8;4873:18;:28::i;:::-;4800:109;:::o;6912:192::-;7014:9;7026:1;7014:13;;7009:88;7033:6;:13;7029:1;:17;7009:88;;;7068:17;7075:6;7082:1;7075:9;;;;;;;;;;;;;;7068:6;:17::i;:::-;7048:3;;;;;;;7009:88;;;;6912:192;:::o;5504:22::-;;;;:::o;2483:98::-;2528:15;2563:10;2556:17;;2483:98;:::o;5015:229::-;5109:1;5089:22;;:8;:22;;;;5081:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5199:8;5170:38;;5191:6;;;;;;;;;;;5170:38;;;;;;;;;;;;5228:8;5219:6;;:17;;;;;;;;;;;;;;;;;;5015:229;:::o

Swarm Source

bzzr://ebc42b4a7693f136f6234039e462c2322cb73b94b197718509f967e0f018b67e
Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.