ETH Price: $3,417.70 (-6.44%)

Contract

0xd9e982e827D19a9dca6Fe607BE4c52D0fF14a697
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Register Name Xn...63608132018-09-19 13:50:052283 days ago1537365005IN
0xd9e982e8...0fF14a697
0 ETH0.001505518
Register Name Xn...63408582018-09-16 6:50:532286 days ago1537080653IN
0xd9e982e8...0fF14a697
0 ETH0.000954985
Register Name Xn...63155872018-09-12 2:36:112290 days ago1536719771IN
0xd9e982e8...0fF14a697
0 ETH0.001505518
Register Name Xn...63118462018-09-11 11:41:082291 days ago1536666068IN
0xd9e982e8...0fF14a697
0 ETH0.00076134
Register Name Xn...63117632018-09-11 11:21:212291 days ago1536664881IN
0xd9e982e8...0fF14a697
0 ETH0.00076134
Register Name Xn...62913392018-09-08 1:01:122294 days ago1536368472IN
0xd9e982e8...0fF14a697
0 ETH0.000558153
Register Name Xn...62899422018-09-07 19:21:232295 days ago1536348083IN
0xd9e982e8...0fF14a697
0 ETH0.000769864

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
UserDataManager

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-09-07
*/

pragma solidity ^0.4.24;
/*
*                         ___
*                       |三三三i
*                       |三三三|  
*  神さま かなえて happy-end      ノ三三三.廴        
*                      从ノ_八ム_}ノ
*   __}ヽ__                 ヽ‐个‐ア.     © Team EC Present. 
*    `ヒy  ノ三ニ==ェ- ___ ィェ=ァ='フ)ヽ-''Lヽ         
*     `‐⌒L三ニ=ニ三三三三三三三〈oi 人 )o〉三ニ、    
*             ` ̄ ̄ ̄ ̄`弌三三}. ! r三三三ij      
*                      ,': ::三三|. ! ,'三三三刈、
*                      ,': : :::`i三|人|三三ハ三j: ;     
*                          ,': : : : : 比|  |三三i |三|: ',
*                 ,': : : : : : :Vi|  |三三i |三|: : ',
*                , ': : : : : : : ノ }乂{三三| |三|: : :;
*  UserDataManager v0.1  ,': : : : : : : : ::j三三三三|: |三i: : ::,
*                ,': : : : : : : : :/三三三三〈: :!三!: : ::;
*                ,': : : : : : : : /三三三三三!, |三!: : : ,
*                ,': : : : : : : : ::j三三八三三Y {⌒i: : : :,
*               ,': : : : : : : : : /三//: }三三j: : ー': : : : ,
*               ,': : : : : : : : :.//三/: : |三三|: : : : : : : : :;
*               ,': : : : : : : : ://三/: : : |三三|: : : : : : : : ;
*               ,': : : : : : : : :/三ii/ : : : :|三三|: : : : : : : : :;
*              ,': : : : : : : : /三//: : : : ::!三三!: : : : : : : : ;
*             ,': : : : : : : : :j三// : : : : ::|三三!: : : : : : : : :;
*             ,': : : : : : : : : |三ij: : : : : : ::l三ニ:j: : : : : : : : : ;
*            ,': : : : : : : : ::::|三ij: : : : : : : !三刈: : : : : : : : : ;
*            ,': : : : : : : : : : :|三ij: : : : : : ::j三iiテ: : : : : : : : : :;
*           ,': : : : : : : : : : : |三ij: : : : : : ::|三iiリ: : : : : : : : : : ;
*          ,':: : : : : : : : : : : :|三ij::: : :: :: :::|三リ: : : : : : : : : : :;
*        ,': : : : : : : : : : : : :|三ij : : : : : ::l三iリ: : : : : : : : : : : ',
*                            r'三三jiY, : : : : : ::|三ij : : : : : : : : : : : ',
*                                   |三 j´        `',    signature:
*                            |三三k、
*                                    `ー≠='.  93511761c3aa73c0a197c55537328f7f797c4429 
*/


interface UserDataManagerReceiverInterface {
    function receivePlayerInfo(uint256 _pID, address _addr, bytes32 _name, uint256 _laff) external;
    function receivePlayerNameList(uint256 _pID, bytes32 _name) external;
}

contract UserDataManager {
    using NameFilter for string;
    using SafeMath for uint256;

    address private admin = msg.sender;
    uint256 public registrationFee_ = 0;                   
    mapping(uint256 => UserDataManagerReceiverInterface) public games_;  
    mapping(address => bytes32) public gameNames_;         
    mapping(address => uint256) public gameIDs_;           
    uint256 public gID_;        
    uint256 public pID_;       
    mapping (address => uint256) public pIDxAddr_;          
    mapping (bytes32 => uint256) public pIDxName_;          
    mapping (uint256 => Player) public plyr_;              
    mapping (uint256 => mapping (bytes32 => bool)) public plyrNames_; 
    mapping (uint256 => mapping (uint256 => bytes32)) public plyrNameList_; 
    struct Player {
        address addr;
        bytes32 name;
        uint256 laff;
        uint256 names;
    }

    constructor()
        public
    {
        // premine the dev names 
        plyr_[1].addr = 0xe27c188521248a49adfc61090d3c8ab7c3754e0a;
        plyr_[1].name = "matt";
        plyr_[1].names = 1;
        pIDxAddr_[0xe27c188521248a49adfc61090d3c8ab7c3754e0a] = 1;
        pIDxName_["matt"] = 1;
        plyrNames_[1]["matt"] = true;
        plyrNameList_[1][1] = "matt";

        pID_ = 1;
    }

    modifier isHuman() {
        address _addr = msg.sender;
        uint256 _codeLength;

        assembly {_codeLength := extcodesize(_addr)}
        require(_codeLength == 0, "sorry humans only");
        _;
    }

    modifier onlyDevs()
    {
        require(admin == msg.sender, "msg sender is not a dev");
        _;
    }

    modifier isRegisteredGame()
    {
        require(gameIDs_[msg.sender] != 0);
        _;
    }

    event onNewName
    (
        uint256 indexed playerID,
        address indexed playerAddress,
        bytes32 indexed playerName,
        bool isNewPlayer,
        uint256 affiliateID,
        address affiliateAddress,
        bytes32 affiliateName,
        uint256 amountPaid,
        uint256 timeStamp
    );

    function checkIfNameValid(string _nameStr)
        public
        view
        returns(bool)
    {
        bytes32 _name = _nameStr.nameFilter();
        if (pIDxName_[_name] == 0)
            return (true);
        else
            return (false);
    }

    function registerNameXID(string _nameString, uint256 _affCode, bool _all)
        isHuman()
        public
        payable
    {
        require (msg.value >= registrationFee_, "umm.....  you have to pay the name fee");

        bytes32 _name = NameFilter.nameFilter(_nameString);

        address _addr = msg.sender;

        bool _isNewPlayer = determinePID(_addr);

        uint256 _pID = pIDxAddr_[_addr];

        if (_affCode != 0 && _affCode != plyr_[_pID].laff && _affCode != _pID)
        {
            plyr_[_pID].laff = _affCode;
        } else if (_affCode == _pID) {
            _affCode = 0;
        }

        registerNameCore(_pID, _addr, _affCode, _name, _isNewPlayer, _all);
    }

    function registerNameXaddr(string _nameString, address _affCode, bool _all)
        isHuman()
        public
        payable
    {
        require (msg.value >= registrationFee_, "umm.....  you have to pay the name fee");

        bytes32 _name = NameFilter.nameFilter(_nameString);

        address _addr = msg.sender;

        bool _isNewPlayer = determinePID(_addr);

        uint256 _pID = pIDxAddr_[_addr];

        uint256 _affID;
        if (_affCode != address(0) && _affCode != _addr)
        {
            _affID = pIDxAddr_[_affCode];

            if (_affID != plyr_[_pID].laff)
            {
                plyr_[_pID].laff = _affID;
            }
        }

        registerNameCore(_pID, _addr, _affID, _name, _isNewPlayer, _all);
    }

    function registerNameXname(string _nameString, bytes32 _affCode, bool _all)
        isHuman()
        public
        payable
    {
        require (msg.value >= registrationFee_, "umm.....  you have to pay the name fee");

        bytes32 _name = NameFilter.nameFilter(_nameString);

        address _addr = msg.sender;

        bool _isNewPlayer = determinePID(_addr);

        uint256 _pID = pIDxAddr_[_addr];

        uint256 _affID;
        if (_affCode != "" && _affCode != _name)
        {
            _affID = pIDxName_[_affCode];

            if (_affID != plyr_[_pID].laff)
            {
                plyr_[_pID].laff = _affID;
            }
        }

        registerNameCore(_pID, _addr, _affID, _name, _isNewPlayer, _all);
    }

    function addMeToGame(uint256 _gameID)
        isHuman()
        public
    {
        require(_gameID <= gID_, "that game doesn't exist yet");
        address _addr = msg.sender;
        uint256 _pID = pIDxAddr_[_addr];
        require(_pID != 0, "player dont even have an account");
        uint256 _totalNames = plyr_[_pID].names;

        games_[_gameID].receivePlayerInfo(_pID, _addr, plyr_[_pID].name, plyr_[_pID].laff);

        // add list of all names
        if (_totalNames > 1)
            for (uint256 ii = 1; ii <= _totalNames; ii++)
                games_[_gameID].receivePlayerNameList(_pID, plyrNameList_[_pID][ii]);
    }

    function addMeToAllGames()
        isHuman()
        public
    {
        address _addr = msg.sender;
        uint256 _pID = pIDxAddr_[_addr];
        require(_pID != 0, "player dont even have an account");
        uint256 _laff = plyr_[_pID].laff;
        uint256 _totalNames = plyr_[_pID].names;
        bytes32 _name = plyr_[_pID].name;

        for (uint256 i = 1; i <= gID_; i++)
        {
            games_[i].receivePlayerInfo(_pID, _addr, _name, _laff);
            if (_totalNames > 1)
                for (uint256 ii = 1; ii <= _totalNames; ii++)
                    games_[i].receivePlayerNameList(_pID, plyrNameList_[_pID][ii]);
        }

    }

    function useMyOldName(string _nameString)
        isHuman()
        public
    {
        bytes32 _name = _nameString.nameFilter();
        uint256 _pID = pIDxAddr_[msg.sender];

        require(plyrNames_[_pID][_name] == true, "thats not a name you own");

        plyr_[_pID].name = _name;
    }

    function registerNameCore(uint256 _pID, address _addr, uint256 _affID, bytes32 _name, bool _isNewPlayer, bool _all)
        private
    {
        // if names already has been used, require that current msg sender owns the name
        if (pIDxName_[_name] != 0)
            require(plyrNames_[_pID][_name] == true, "sorry that names already taken");

        // add name to player profile, registry, and name book
        plyr_[_pID].name = _name;
        pIDxName_[_name] = _pID;
        if (plyrNames_[_pID][_name] == false)
        {
            plyrNames_[_pID][_name] = true;
            plyr_[_pID].names++;
            plyrNameList_[_pID][plyr_[_pID].names] = _name;
        }

        // registration fee goes directly to community rewards
        admin.transfer(address(this).balance);

        // push player info to games
        if (_all == true)
            for (uint256 i = 1; i <= gID_; i++)
                games_[i].receivePlayerInfo(_pID, _addr, _name, _affID);

        // fire event
        emit onNewName(_pID, _addr, _name, _isNewPlayer, _affID, plyr_[_affID].addr, plyr_[_affID].name, msg.value, now);
    }

    function determinePID(address _addr)
        private
        returns (bool)
    {
        if (pIDxAddr_[_addr] == 0)
        {
            pID_++;
            pIDxAddr_[_addr] = pID_;
            plyr_[pID_].addr = _addr;

            // set the new player bool to true
            return (true);
        } else {
            return (false);
        }
    }

    function getPlayerID(address _addr)
        isRegisteredGame()
        external
        returns (uint256)
    {
        determinePID(_addr);
        return (pIDxAddr_[_addr]);
    }
    function getPlayerName(uint256 _pID)
        external
        view
        returns (bytes32)
    {
        return (plyr_[_pID].name);
    }
    function getPlayerLAff(uint256 _pID)
        external
        view
        returns (uint256)
    {
        return (plyr_[_pID].laff);
    }
    function getPlayerAddr(uint256 _pID)
        external
        view
        returns (address)
    {
        return (plyr_[_pID].addr);
    }
    function getNameFee()
        external
        view
        returns (uint256)
    {
        return(registrationFee_);
    }
    function registerNameXIDFromDapp(address _addr, bytes32 _name, uint256 _affCode, bool _all)
        isRegisteredGame()
        external
        payable
        returns(bool, uint256)
    {
        // make sure name fees paid
        require (msg.value >= registrationFee_, "umm.....  you have to pay the name fee");

        // set up our tx event data and determine if player is new or not
        bool _isNewPlayer = determinePID(_addr);

        // fetch player id
        uint256 _pID = pIDxAddr_[_addr];

        uint256 _affID = _affCode;
        if (_affID != 0 && _affID != plyr_[_pID].laff && _affID != _pID)
        {
            // update last affiliate
            plyr_[_pID].laff = _affID;
        } else if (_affID == _pID) {
            _affID = 0;
        }

        // register name
        registerNameCore(_pID, _addr, _affID, _name, _isNewPlayer, _all);

        return(_isNewPlayer, _affID);
    }
    function registerNameXaddrFromDapp(address _addr, bytes32 _name, address _affCode, bool _all)
        isRegisteredGame()
        external
        payable
        returns(bool, uint256)
    {
        // make sure name fees paid
        require (msg.value >= registrationFee_, "umm.....  you have to pay the name fee");

        // set up our tx event data and determine if player is new or not
        bool _isNewPlayer = determinePID(_addr);

        // fetch player id
        uint256 _pID = pIDxAddr_[_addr];

        // manage affiliate residuals
        // if no affiliate code was given or player tried to use their own, lolz
        uint256 _affID;
        if (_affCode != address(0) && _affCode != _addr)
        {
            // get affiliate ID from aff Code
            _affID = pIDxAddr_[_affCode];

            // if affID is not the same as previously stored
            if (_affID != plyr_[_pID].laff)
            {
                // update last affiliate
                plyr_[_pID].laff = _affID;
            }
        }

        // register name
        registerNameCore(_pID, _addr, _affID, _name, _isNewPlayer, _all);

        return(_isNewPlayer, _affID);
    }
    function registerNameXnameFromDapp(address _addr, bytes32 _name, bytes32 _affCode, bool _all)
        isRegisteredGame()
        external
        payable
        returns(bool, uint256)
    {
        // make sure name fees paid
        require (msg.value >= registrationFee_, "umm.....  you have to pay the name fee");

        // set up our tx event data and determine if player is new or not
        bool _isNewPlayer = determinePID(_addr);

        // fetch player id
        uint256 _pID = pIDxAddr_[_addr];

        // manage affiliate residuals
        // if no affiliate code was given or player tried to use their own, lolz
        uint256 _affID;
        if (_affCode != "" && _affCode != _name)
        {
            // get affiliate ID from aff Code
            _affID = pIDxName_[_affCode];

            // if affID is not the same as previously stored
            if (_affID != plyr_[_pID].laff)
            {
                // update last affiliate
                plyr_[_pID].laff = _affID;
            }
        }

        // register name
        registerNameCore(_pID, _addr, _affID, _name, _isNewPlayer, _all);

        return(_isNewPlayer, _affID);
    }

    function addGame(address _gameAddress, string _gameNameStr)
        onlyDevs()
        public
    {
        require(gameIDs_[_gameAddress] == 0, "derp, that games already been registered");
        gID_++;
        bytes32 _name = _gameNameStr.nameFilter();
        gameIDs_[_gameAddress] = gID_;
        gameNames_[_gameAddress] = _name;
        games_[gID_] = UserDataManagerReceiverInterface(_gameAddress);

        games_[gID_].receivePlayerInfo(1, plyr_[1].addr, plyr_[1].name, 0);
        games_[gID_].receivePlayerInfo(2, plyr_[2].addr, plyr_[2].name, 0);
        games_[gID_].receivePlayerInfo(3, plyr_[3].addr, plyr_[3].name, 0);
        games_[gID_].receivePlayerInfo(4, plyr_[4].addr, plyr_[4].name, 0);
    }

    function setRegistrationFee(uint256 _fee)
        onlyDevs()
        public
    {
        registrationFee_ = _fee;
    }

}

library NameFilter {

    function nameFilter(string _input)
        internal
        pure
        returns(bytes32)
    {
        bytes memory _temp = bytes(_input);
        uint256 _length = _temp.length;

        //sorry limited to 32 characters
        require (_length <= 32 && _length > 0, "string must be between 1 and 32 characters");
        // make sure it doesnt start with or end with space
        require(_temp[0] != 0x20 && _temp[_length-1] != 0x20, "string cannot start or end with space");
        // make sure first two characters are not 0x
        if (_temp[0] == 0x30)
        {
            require(_temp[1] != 0x78, "string cannot start with 0x");
            require(_temp[1] != 0x58, "string cannot start with 0X");
        }

        // create a bool to track if we have a non number character
        bool _hasNonNumber;

        // convert & check
        for (uint256 i = 0; i < _length; i++)
        {
            // if its uppercase A-Z
            if (_temp[i] > 0x40 && _temp[i] < 0x5b)
            {
                // convert to lower case a-z
                _temp[i] = byte(uint(_temp[i]) + 32);

                // we have a non number
                if (_hasNonNumber == false)
                    _hasNonNumber = true;
            } else {
                require
                (
                    // require character is a space
                    _temp[i] == 0x20 ||
                    // OR lowercase a-z
                    (_temp[i] > 0x60 && _temp[i] < 0x7b) ||
                    // or 0-9
                    (_temp[i] > 0x2f && _temp[i] < 0x3a),
                    "string contains invalid characters"
                );
                // make sure theres not 2x spaces in a row
                if (_temp[i] == 0x20)
                    require( _temp[i+1] != 0x20, "string cannot contain consecutive spaces");

                // see if we have a character other than a number
                if (_hasNonNumber == false && (_temp[i] < 0x30 || _temp[i] > 0x39))
                    _hasNonNumber = true;
            }
        }

        require(_hasNonNumber == true, "string cannot be only numbers");

        bytes32 _ret;
        assembly {
            _ret := mload(add(_temp, 32))
        }
        return (_ret);
    }
}

library SafeMath {

    /**
    * @dev Multiplies two numbers, throws on overflow.
    */
    function mul(uint256 a, uint256 b)
        internal
        pure
        returns (uint256 c)
    {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        require(c / a == b, "SafeMath mul failed");
        return c;
    }

    /**
    * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
    */
    function sub(uint256 a, uint256 b)
        internal
        pure
        returns (uint256)
    {
        require(b <= a, "SafeMath sub failed");
        return a - b;
    }

    /**
    * @dev Adds two numbers, throws on overflow.
    */
    function add(uint256 a, uint256 b)
        internal
        pure
        returns (uint256 c)
    {
        c = a + b;
        require(c >= a, "SafeMath add failed");
        return c;
    }

    /**
     * @dev gives square root of given x.
     */
    function sqrt(uint256 x)
        internal
        pure
        returns (uint256 y)
    {
        uint256 z = ((add(x,1)) / 2);
        y = x;
        while (z < y)
        {
            y = z;
            z = ((add((x / z),z)) / 2);
        }
    }

    /**
     * @dev gives square. multiplies x by x
     */
    function sq(uint256 x)
        internal
        pure
        returns (uint256)
    {
        return (mul(x,x));
    }

    /**
     * @dev x to the power of y
     */
    function pwr(uint256 x, uint256 y)
        internal
        pure
        returns (uint256)
    {
        if (x==0)
            return (0);
        else if (y==0)
            return (1);
        else
        {
            uint256 z = x;
            for (uint256 i=1; i < y; i++)
                z = mul(z,x);
            return (z);
        }
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[],"name":"addMeToAllGames","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"pIDxAddr_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"registrationFee_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getNameFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"bytes32"}],"name":"plyrNames_","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"gameNames_","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"pIDxName_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_nameString","type":"string"},{"name":"_affCode","type":"address"},{"name":"_all","type":"bool"}],"name":"registerNameXaddr","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_gameAddress","type":"address"},{"name":"_gameNameStr","type":"string"}],"name":"addGame","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"pID_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pID","type":"uint256"}],"name":"getPlayerAddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_nameString","type":"string"},{"name":"_affCode","type":"bytes32"},{"name":"_all","type":"bool"}],"name":"registerNameXname","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_nameStr","type":"string"}],"name":"checkIfNameValid","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_name","type":"bytes32"},{"name":"_affCode","type":"bytes32"},{"name":"_all","type":"bool"}],"name":"registerNameXnameFromDapp","outputs":[{"name":"","type":"bool"},{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_gameID","type":"uint256"}],"name":"addMeToGame","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_pID","type":"uint256"}],"name":"getPlayerName","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_nameString","type":"string"},{"name":"_affCode","type":"uint256"},{"name":"_all","type":"bool"}],"name":"registerNameXID","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"name":"plyrNameList_","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_name","type":"bytes32"},{"name":"_affCode","type":"address"},{"name":"_all","type":"bool"}],"name":"registerNameXaddrFromDapp","outputs":[{"name":"","type":"bool"},{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_nameString","type":"string"}],"name":"useMyOldName","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gID_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"},{"name":"_name","type":"bytes32"},{"name":"_affCode","type":"uint256"},{"name":"_all","type":"bool"}],"name":"registerNameXIDFromDapp","outputs":[{"name":"","type":"bool"},{"name":"","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_fee","type":"uint256"}],"name":"setRegistrationFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"games_","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"gameIDs_","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"plyr_","outputs":[{"name":"addr","type":"address"},{"name":"name","type":"bytes32"},{"name":"laff","type":"uint256"},{"name":"names","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pID","type":"uint256"}],"name":"getPlayerLAff","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"getPlayerID","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"playerID","type":"uint256"},{"indexed":true,"name":"playerAddress","type":"address"},{"indexed":true,"name":"playerName","type":"bytes32"},{"indexed":false,"name":"isNewPlayer","type":"bool"},{"indexed":false,"name":"affiliateID","type":"uint256"},{"indexed":false,"name":"affiliateAddress","type":"address"},{"indexed":false,"name":"affiliateName","type":"bytes32"},{"indexed":false,"name":"amountPaid","type":"uint256"},{"indexed":false,"name":"timeStamp","type":"uint256"}],"name":"onNewName","type":"event"}]

608060405260008054600160a060020a0319163317815560015534801561002557600080fd5b507f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a368054600160a060020a03191673e27c188521248a49adfc61090d3c8ab7c3754e0a1790557f6d617474000000000000000000000000000000000000000000000000000000007f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a3781905560017f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a398190557f7c0b195f6f756050ac7a0eae36a5cdda8a7adcade07f3a0e39f6c546c2815cd48190557f682d31351c69b11f25c3ddfdf8598b3a9bf6e4d40a9c707c4f8f60694b00ca688190557f8b24f0e0041c5251bf6f7e051ec546ffe699ef2961a1080ebc544a1268ebcc21805460ff19168217905560008190527f72c6bfb7988af3a1efa6568f02a999bc52252641c659d85961ca3d372b57d5cf6020527f6bd9ce7c7c44b510ee825857e9b7d0dbc77ffc0dcbb487d9763a092e420c9a189190915560065561259d806101a96000396000f3006080604052600436106101695763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630c6940ea811461016e57806310f01eba14610185578063180603eb146101b85780632614195f146101cd5780632660316e146101e257806327249e61146102115780632e19ebdc146102325780633ddd46981461024a5780633fda926e146102a65780634b2271761461030d5780634d0d35ff14610322578063685ffd83146103565780636c52660d146103a9578063745ea0c11461040257806381c5b2061461043c57806382e37b2c14610454578063921dec211461046c578063a448ed4b146104bf578063aa4d490b146104da578063b9291296146104fd578063b9eca0c814610556578063c0942dfd1461056b578063c320c7271461058a578063d5241279146105a2578063dbbcaa97146105ba578063de7874f3146105db578063e3c08adf14610623578063e56556a91461063b575b600080fd5b34801561017a57600080fd5b5061018361065c565b005b34801561019157600080fd5b506101a6600160a060020a03600435166108a4565b60408051918252519081900360200190f35b3480156101c457600080fd5b506101a66108b6565b3480156101d957600080fd5b506101a66108bc565b3480156101ee57600080fd5b506101fd6004356024356108c2565b604080519115158252519081900360200190f35b34801561021d57600080fd5b506101a6600160a060020a03600435166108e2565b34801561023e57600080fd5b506101a66004356108f4565b6040805160206004803580820135601f810184900484028501840190955284845261018394369492936024939284019190819084018382808284375094975050600160a060020a03853516955050505050602001351515610906565b3480156102b257600080fd5b5060408051602060046024803582810135601f8101859004850286018501909652858552610183958335600160a060020a0316953695604494919390910191908190840183828082843750949750610a709650505050505050565b34801561031957600080fd5b506101a6610f16565b34801561032e57600080fd5b5061033a600435610f1c565b60408051600160a060020a039092168252519081900360200190f35b6040805160206004803580820135601f8101849004840285018401909552848452610183943694929360249392840191908190840183828082843750949750508435955050505050602001351515610f3a565b3480156103b557600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101fd9436949293602493928401919081908401838280828437509497506110789650505050505050565b610421600160a060020a036004351660243560443560643515156110b0565b60408051921515835260208301919091528051918290030190f35b34801561044857600080fd5b506101836004356111c4565b34801561046057600080fd5b506101a6600435611445565b6040805160206004803580820135601f810184900484028501840190955284845261018394369492936024939284019190819084018382808284375094975050843595505050505060200135151561145a565b3480156104cb57600080fd5b506101a660043560243561159c565b610421600160a060020a03600435811690602435906044351660643515156115b9565b34801561050957600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101839436949293602493928401919081908401838280828437509497506116dc9650505050505050565b34801561056257600080fd5b506101a66117ce565b610421600160a060020a036004351660243560443560643515156117d4565b34801561059657600080fd5b506101836004356118e0565b3480156105ae57600080fd5b5061033a600435611947565b3480156105c657600080fd5b506101a6600160a060020a0360043516611962565b3480156105e757600080fd5b506105f3600435611974565b60408051600160a060020a0390951685526020850193909352838301919091526060830152519081900360800190f35b34801561062f57600080fd5b506101a66004356119a5565b34801561064757600080fd5b506101a6600160a060020a03600435166119ba565b600080808080808033803b80156106ab576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b336000818152600760205260409020549099509750871515610717576040805160e560020a62461bcd02815260206004820181905260248201527f706c6179657220646f6e74206576656e206861766520616e206163636f756e74604482015290519081900360640190fd5b6000888152600960205260409020600281015460038201546001928301549199509750955093505b60055484116108995760008481526002602052604080822054815160e060020a6349cc635d028152600481018c9052600160a060020a038d81166024830152604482018a9052606482018c9052925192909116926349cc635d9260848084019382900301818387803b1580156107b457600080fd5b505af11580156107c8573d6000803e3d6000fd5b50505050600186111561088e57600192505b85831161088e576000848152600260209081526040808320548b8452600b83528184208785529092528083205481517f8f7140ea000000000000000000000000000000000000000000000000000000008152600481018d905260248101919091529051600160a060020a0390921692638f7140ea9260448084019382900301818387803b15801561086a57600080fd5b505af115801561087e573d6000803e3d6000fd5b5050600190940193506107da9050565b60019093019261073f565b505050505050505050565b60076020526000908152604090205481565b60015481565b60015490565b600a60209081526000928352604080842090915290825290205460ff1681565b60036020526000908152604090205481565b60086020526000908152604090205481565b60008080808033803b8015610953576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b6001543410156109af576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b6109b88a6119fb565b96503395506109c68661220e565b600160a060020a03808816600090815260076020526040902054919650909450891615801590610a08575085600160a060020a031689600160a060020a031614155b15610a5657600160a060020a0389166000908152600760209081526040808320548784526009909252909120600201549093508314610a565760008481526009602052604090206002018390555b610a648487858a898d612290565b50505050505050505050565b60008054600160a060020a03163314610ad3576040805160e560020a62461bcd02815260206004820152601760248201527f6d73672073656e646572206973206e6f74206120646576000000000000000000604482015290519081900360640190fd5b600160a060020a03831660009081526004602052604090205415610b67576040805160e560020a62461bcd02815260206004820152602860248201527f646572702c20746861742067616d657320616c7265616479206265656e20726560448201527f6769737465726564000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600580546001019055610b79826119fb565b60058054600160a060020a03808716600081815260046020818152604080842096909655600381528583208890558654835260028152858320805473ffffffffffffffffffffffffffffffffffffffff19169094179093559454815283812054600180835260099093527f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a36547f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a3754865160e060020a6349cc635d0281529788019490945284166024870152604486019290925260648501819052925194955016926349cc635d92608480820193929182900301818387803b158015610c7d57600080fd5b505af1158015610c91573d6000803e3d6000fd5b505060055460009081526002602081815260408084205483855260099092527f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c3547f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c454825160e060020a6349cc635d0281526004810195909552600160a060020a0391821660248601526044850152606484018590529051911694506349cc635d93506084808301939282900301818387803b158015610d5057600080fd5b505af1158015610d64573d6000803e3d6000fd5b5050600554600090815260026020908152604080832054600380855260099093527fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e7547fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e854835160e060020a6349cc635d0281526004810195909552600160a060020a0391821660248601526044850152606484018590529151911694506349cc635d93506084808301939282900301818387803b158015610e2557600080fd5b505af1158015610e39573d6000803e3d6000fd5b5050600554600090815260026020908152604080832054600480855260099093527f8dc18c4ccfd75f5c815b63770fa542fd953e8fef7e0e44bbdd4913470ce7e9cb547f8dc18c4ccfd75f5c815b63770fa542fd953e8fef7e0e44bbdd4913470ce7e9cc54835160e060020a6349cc635d02815280860195909552600160a060020a0391821660248601526044850152606484018590529151911694506349cc635d93506084808301939282900301818387803b158015610ef957600080fd5b505af1158015610f0d573d6000803e3d6000fd5b50505050505050565b60065481565b600081815260096020526040902054600160a060020a03165b919050565b60008080808033803b8015610f87576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b600154341015610fe3576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b610fec8a6119fb565b9650339550610ffa8661220e565b600160a060020a038716600090815260076020526040902054909550935088158015906110275750888714155b15610a56576000898152600860209081526040808320548784526009909252909120600201549093508314610a56576000848152600960205260409020600201839055610a648487858a898d612290565b600080611084836119fb565b60008181526008602052604090205490915015156110a557600191506110aa565b600091505b50919050565b33600090815260046020526040812054819081908190819015156110d357600080fd5b60015434101561112f576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b6111388961220e565b600160a060020a038a16600090815260076020526040902054909350915086158015906111655750868814155b156111a7575060008681526008602090815260408083205484845260099092529091206002015481146111a75760008281526009602052604090206002018190555b6111b5828a838b878b612290565b91989197509095505050505050565b600080808033803b8015611210576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b60055487111561126a576040805160e560020a62461bcd02815260206004820152601b60248201527f746861742067616d6520646f65736e2774206578697374207965740000000000604482015290519081900360640190fd5b3360008181526007602052604090205490965094508415156112d6576040805160e560020a62461bcd02815260206004820181905260248201527f706c6179657220646f6e74206576656e206861766520616e206163636f756e74604482015290519081900360640190fd5b600085815260096020818152604080842060038101548c86526002808552838720548c88529590945260018201549390910154825160e060020a6349cc635d028152600481018c9052600160a060020a038d8116602483015260448201959095526064810191909152915190985091909216926349cc635d926084808201939182900301818387803b15801561136b57600080fd5b505af115801561137f573d6000803e3d6000fd5b505050506001841115610f0d57600192505b838311610f0d57600087815260026020908152604080832054888452600b83528184208785529092528083205481517f8f7140ea000000000000000000000000000000000000000000000000000000008152600481018a905260248101919091529051600160a060020a0390921692638f7140ea9260448084019382900301818387803b15801561142157600080fd5b505af1158015611435573d6000803e3d6000fd5b5050600190940193506113919050565b60009081526009602052604090206001015490565b600080808033803b80156114a6576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b600154341015611502576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b61150b896119fb565b95503394506115198561220e565b600160a060020a0386166000908152600760205260409020549094509250871580159061155757506000838152600960205260409020600201548814155b80156115635750828814155b1561158157600083815260096020526040902060020188905561158e565b8288141561158e57600097505b61089983868a89888c612290565b600b60209081526000928352604080842090915290825290205481565b33600090815260046020526040812054819081908190819015156115dc57600080fd5b600154341015611638576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b6116418961220e565b600160a060020a03808b16600090815260076020526040902054919450909250871615801590611683575088600160a060020a031687600160a060020a031614155b156111a75750600160a060020a03861660009081526007602090815260408083205484845260099092529091206002015481146111a75760008281526009602052604090206002018190556111b5828a838b878b612290565b60008033803b8015611726576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b61172f856119fb565b33600090815260076020908152604080832054808452600a835281842085855290925290912054919550935060ff1615156001146117b7576040805160e560020a62461bcd02815260206004820152601860248201527f7468617473206e6f742061206e616d6520796f75206f776e0000000000000000604482015290519081900360640190fd5b505060009081526009602052604090206001015550565b60055481565b33600090815260046020526040812054819081908190819015156117f757600080fd5b600154341015611853576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b61185c8961220e565b600160a060020a038a166000908152600760205260409020549093509150869050801580159061189d57506000828152600960205260409020600201548114155b80156118a95750818114155b156118c75760008281526009602052604090206002018190556111a7565b818114156111a7575060006111b5828a838b878b612290565b600054600160a060020a03163314611942576040805160e560020a62461bcd02815260206004820152601760248201527f6d73672073656e646572206973206e6f74206120646576000000000000000000604482015290519081900360640190fd5b600155565b600260205260009081526040902054600160a060020a031681565b60046020526000908152604090205481565b6009602052600090815260409020805460018201546002830154600390930154600160a060020a0390921692909184565b60009081526009602052604090206002015490565b3360009081526004602052604081205415156119d557600080fd5b6119de8261220e565b5050600160a060020a031660009081526007602052604090205490565b8051600090829082808060208411801590611a165750600084115b1515611a92576040805160e560020a62461bcd02815260206004820152602a60248201527f737472696e67206d757374206265206265747765656e203120616e642033322060448201527f6368617261637465727300000000000000000000000000000000000000000000606482015290519081900360840190fd5b846000815181101515611aa157fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a0214158015611b0857508460018503815181101515611ae057fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a0214155b1515611b84576040805160e560020a62461bcd02815260206004820152602560248201527f737472696e672063616e6e6f74207374617274206f7220656e6420776974682060448201527f7370616365000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b846000815181101515611b9357fe5b90602001015160f860020a900460f860020a02600160f860020a031916603060f860020a021415611cd657846001815181101515611bcd57fe5b90602001015160f860020a900460f860020a02600160f860020a031916607860f860020a0214151515611c4a576040805160e560020a62461bcd02815260206004820152601b60248201527f737472696e672063616e6e6f7420737461727420776974682030780000000000604482015290519081900360640190fd5b846001815181101515611c5957fe5b90602001015160f860020a900460f860020a02600160f860020a031916605860f860020a0214151515611cd6576040805160e560020a62461bcd02815260206004820152601b60248201527f737472696e672063616e6e6f7420737461727420776974682030580000000000604482015290519081900360640190fd5b600091505b838210156121a65784517f400000000000000000000000000000000000000000000000000000000000000090869084908110611d1357fe5b90602001015160f860020a900460f860020a02600160f860020a031916118015611d87575084517f5b0000000000000000000000000000000000000000000000000000000000000090869084908110611d6857fe5b90602001015160f860020a900460f860020a02600160f860020a031916105b15611df4578482815181101515611d9a57fe5b90602001015160f860020a900460f860020a0260f860020a900460200160f860020a028583815181101515611dcb57fe5b906020010190600160f860020a031916908160001a905350821515611def57600192505b61219b565b8482815181101515611e0257fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a021480611ed2575084517f600000000000000000000000000000000000000000000000000000000000000090869084908110611e5e57fe5b90602001015160f860020a900460f860020a02600160f860020a031916118015611ed2575084517f7b0000000000000000000000000000000000000000000000000000000000000090869084908110611eb357fe5b90602001015160f860020a900460f860020a02600160f860020a031916105b80611f7c575084517f2f0000000000000000000000000000000000000000000000000000000000000090869084908110611f0857fe5b90602001015160f860020a900460f860020a02600160f860020a031916118015611f7c575084517f3a0000000000000000000000000000000000000000000000000000000000000090869084908110611f5d57fe5b90602001015160f860020a900460f860020a02600160f860020a031916105b1515611ff8576040805160e560020a62461bcd02815260206004820152602260248201527f737472696e6720636f6e7461696e7320696e76616c696420636861726163746560448201527f7273000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b848281518110151561200657fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a0214156120e557848260010181518110151561204257fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a02141515156120e5576040805160e560020a62461bcd02815260206004820152602860248201527f737472696e672063616e6e6f7420636f6e7461696e20636f6e7365637574697660448201527f6520737061636573000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b82158015612191575084517f30000000000000000000000000000000000000000000000000000000000000009086908490811061211e57fe5b90602001015160f860020a900460f860020a02600160f860020a0319161080612191575084517f39000000000000000000000000000000000000000000000000000000000000009086908490811061217257fe5b90602001015160f860020a900460f860020a02600160f860020a031916115b1561219b57600192505b600190910190611cdb565b600183151514612200576040805160e560020a62461bcd02815260206004820152601d60248201527f737472696e672063616e6e6f74206265206f6e6c79206e756d62657273000000604482015290519081900360640190fd5b505050506020015192915050565b600160a060020a0381166000908152600760205260408120541515612288575060068054600190810191829055600160a060020a03831660008181526007602090815260408083208690559482526009905292909220805473ffffffffffffffffffffffffffffffffffffffff1916909217909155610f35565b506000610f35565b6000838152600860205260408120541561231a576000878152600a6020908152604080832087845290915290205460ff16151560011461231a576040805160e560020a62461bcd02815260206004820152601e60248201527f736f7272792074686174206e616d657320616c72656164792074616b656e0000604482015290519081900360640190fd5b6000878152600960209081526040808320600101879055868352600882528083208a9055898352600a825280832087845290915290205460ff1615156123aa576000878152600a602090815260408083208784528252808320805460ff191660019081179091558a845260098352818420600301805490910190819055600b835281842090845290915290208490555b60008054604051600160a060020a0390911691303180156108fc02929091818181858888f193505050501580156123e5573d6000803e3d6000fd5b506001821515141561248e575060015b600554811161248e5760008181526002602052604080822054815160e060020a6349cc635d028152600481018b9052600160a060020a038a8116602483015260448201899052606482018a9052925192909116926349cc635d9260848084019382900301818387803b15801561246a57600080fd5b505af115801561247e573d6000803e3d6000fd5b5050600190920191506123f59050565b600085815260096020908152604091829020805460019091015483518715158152928301899052600160a060020a039182168385015260608301523460808301524260a0830152915186928916918a917fdd6176433ff5026bbce96b068584b7bbe3514227e72df9c630b749ae87e644429181900360c00190a4505050505050505600756d6d2e2e2e2e2e2020796f75206861766520746f2070617920746865206e616d65206665650000000000000000000000000000000000000000000000000000736f7272792068756d616e73206f6e6c79000000000000000000000000000000a165627a7a7230582039696b47b3e2c8f51627b5c23df02c4b40a6b2d95cee69707adc556f6795f41e0029

Deployed Bytecode

0x6080604052600436106101695763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630c6940ea811461016e57806310f01eba14610185578063180603eb146101b85780632614195f146101cd5780632660316e146101e257806327249e61146102115780632e19ebdc146102325780633ddd46981461024a5780633fda926e146102a65780634b2271761461030d5780634d0d35ff14610322578063685ffd83146103565780636c52660d146103a9578063745ea0c11461040257806381c5b2061461043c57806382e37b2c14610454578063921dec211461046c578063a448ed4b146104bf578063aa4d490b146104da578063b9291296146104fd578063b9eca0c814610556578063c0942dfd1461056b578063c320c7271461058a578063d5241279146105a2578063dbbcaa97146105ba578063de7874f3146105db578063e3c08adf14610623578063e56556a91461063b575b600080fd5b34801561017a57600080fd5b5061018361065c565b005b34801561019157600080fd5b506101a6600160a060020a03600435166108a4565b60408051918252519081900360200190f35b3480156101c457600080fd5b506101a66108b6565b3480156101d957600080fd5b506101a66108bc565b3480156101ee57600080fd5b506101fd6004356024356108c2565b604080519115158252519081900360200190f35b34801561021d57600080fd5b506101a6600160a060020a03600435166108e2565b34801561023e57600080fd5b506101a66004356108f4565b6040805160206004803580820135601f810184900484028501840190955284845261018394369492936024939284019190819084018382808284375094975050600160a060020a03853516955050505050602001351515610906565b3480156102b257600080fd5b5060408051602060046024803582810135601f8101859004850286018501909652858552610183958335600160a060020a0316953695604494919390910191908190840183828082843750949750610a709650505050505050565b34801561031957600080fd5b506101a6610f16565b34801561032e57600080fd5b5061033a600435610f1c565b60408051600160a060020a039092168252519081900360200190f35b6040805160206004803580820135601f8101849004840285018401909552848452610183943694929360249392840191908190840183828082843750949750508435955050505050602001351515610f3a565b3480156103b557600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101fd9436949293602493928401919081908401838280828437509497506110789650505050505050565b610421600160a060020a036004351660243560443560643515156110b0565b60408051921515835260208301919091528051918290030190f35b34801561044857600080fd5b506101836004356111c4565b34801561046057600080fd5b506101a6600435611445565b6040805160206004803580820135601f810184900484028501840190955284845261018394369492936024939284019190819084018382808284375094975050843595505050505060200135151561145a565b3480156104cb57600080fd5b506101a660043560243561159c565b610421600160a060020a03600435811690602435906044351660643515156115b9565b34801561050957600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101839436949293602493928401919081908401838280828437509497506116dc9650505050505050565b34801561056257600080fd5b506101a66117ce565b610421600160a060020a036004351660243560443560643515156117d4565b34801561059657600080fd5b506101836004356118e0565b3480156105ae57600080fd5b5061033a600435611947565b3480156105c657600080fd5b506101a6600160a060020a0360043516611962565b3480156105e757600080fd5b506105f3600435611974565b60408051600160a060020a0390951685526020850193909352838301919091526060830152519081900360800190f35b34801561062f57600080fd5b506101a66004356119a5565b34801561064757600080fd5b506101a6600160a060020a03600435166119ba565b600080808080808033803b80156106ab576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b336000818152600760205260409020549099509750871515610717576040805160e560020a62461bcd02815260206004820181905260248201527f706c6179657220646f6e74206576656e206861766520616e206163636f756e74604482015290519081900360640190fd5b6000888152600960205260409020600281015460038201546001928301549199509750955093505b60055484116108995760008481526002602052604080822054815160e060020a6349cc635d028152600481018c9052600160a060020a038d81166024830152604482018a9052606482018c9052925192909116926349cc635d9260848084019382900301818387803b1580156107b457600080fd5b505af11580156107c8573d6000803e3d6000fd5b50505050600186111561088e57600192505b85831161088e576000848152600260209081526040808320548b8452600b83528184208785529092528083205481517f8f7140ea000000000000000000000000000000000000000000000000000000008152600481018d905260248101919091529051600160a060020a0390921692638f7140ea9260448084019382900301818387803b15801561086a57600080fd5b505af115801561087e573d6000803e3d6000fd5b5050600190940193506107da9050565b60019093019261073f565b505050505050505050565b60076020526000908152604090205481565b60015481565b60015490565b600a60209081526000928352604080842090915290825290205460ff1681565b60036020526000908152604090205481565b60086020526000908152604090205481565b60008080808033803b8015610953576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b6001543410156109af576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b6109b88a6119fb565b96503395506109c68661220e565b600160a060020a03808816600090815260076020526040902054919650909450891615801590610a08575085600160a060020a031689600160a060020a031614155b15610a5657600160a060020a0389166000908152600760209081526040808320548784526009909252909120600201549093508314610a565760008481526009602052604090206002018390555b610a648487858a898d612290565b50505050505050505050565b60008054600160a060020a03163314610ad3576040805160e560020a62461bcd02815260206004820152601760248201527f6d73672073656e646572206973206e6f74206120646576000000000000000000604482015290519081900360640190fd5b600160a060020a03831660009081526004602052604090205415610b67576040805160e560020a62461bcd02815260206004820152602860248201527f646572702c20746861742067616d657320616c7265616479206265656e20726560448201527f6769737465726564000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600580546001019055610b79826119fb565b60058054600160a060020a03808716600081815260046020818152604080842096909655600381528583208890558654835260028152858320805473ffffffffffffffffffffffffffffffffffffffff19169094179093559454815283812054600180835260099093527f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a36547f92e85d02570a8092d09a6e3a57665bc3815a2699a4074001bf1ccabf660f5a3754865160e060020a6349cc635d0281529788019490945284166024870152604486019290925260648501819052925194955016926349cc635d92608480820193929182900301818387803b158015610c7d57600080fd5b505af1158015610c91573d6000803e3d6000fd5b505060055460009081526002602081815260408084205483855260099092527f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c3547f6cde3cea4b3a3fb2488b2808bae7556f4a405e50f65e1794383bc026131b13c454825160e060020a6349cc635d0281526004810195909552600160a060020a0391821660248601526044850152606484018590529051911694506349cc635d93506084808301939282900301818387803b158015610d5057600080fd5b505af1158015610d64573d6000803e3d6000fd5b5050600554600090815260026020908152604080832054600380855260099093527fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e7547fc575c31fea594a6eb97c8e9d3f9caee4c16218c6ef37e923234c0fe9014a61e854835160e060020a6349cc635d0281526004810195909552600160a060020a0391821660248601526044850152606484018590529151911694506349cc635d93506084808301939282900301818387803b158015610e2557600080fd5b505af1158015610e39573d6000803e3d6000fd5b5050600554600090815260026020908152604080832054600480855260099093527f8dc18c4ccfd75f5c815b63770fa542fd953e8fef7e0e44bbdd4913470ce7e9cb547f8dc18c4ccfd75f5c815b63770fa542fd953e8fef7e0e44bbdd4913470ce7e9cc54835160e060020a6349cc635d02815280860195909552600160a060020a0391821660248601526044850152606484018590529151911694506349cc635d93506084808301939282900301818387803b158015610ef957600080fd5b505af1158015610f0d573d6000803e3d6000fd5b50505050505050565b60065481565b600081815260096020526040902054600160a060020a03165b919050565b60008080808033803b8015610f87576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b600154341015610fe3576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b610fec8a6119fb565b9650339550610ffa8661220e565b600160a060020a038716600090815260076020526040902054909550935088158015906110275750888714155b15610a56576000898152600860209081526040808320548784526009909252909120600201549093508314610a56576000848152600960205260409020600201839055610a648487858a898d612290565b600080611084836119fb565b60008181526008602052604090205490915015156110a557600191506110aa565b600091505b50919050565b33600090815260046020526040812054819081908190819015156110d357600080fd5b60015434101561112f576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b6111388961220e565b600160a060020a038a16600090815260076020526040902054909350915086158015906111655750868814155b156111a7575060008681526008602090815260408083205484845260099092529091206002015481146111a75760008281526009602052604090206002018190555b6111b5828a838b878b612290565b91989197509095505050505050565b600080808033803b8015611210576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b60055487111561126a576040805160e560020a62461bcd02815260206004820152601b60248201527f746861742067616d6520646f65736e2774206578697374207965740000000000604482015290519081900360640190fd5b3360008181526007602052604090205490965094508415156112d6576040805160e560020a62461bcd02815260206004820181905260248201527f706c6179657220646f6e74206576656e206861766520616e206163636f756e74604482015290519081900360640190fd5b600085815260096020818152604080842060038101548c86526002808552838720548c88529590945260018201549390910154825160e060020a6349cc635d028152600481018c9052600160a060020a038d8116602483015260448201959095526064810191909152915190985091909216926349cc635d926084808201939182900301818387803b15801561136b57600080fd5b505af115801561137f573d6000803e3d6000fd5b505050506001841115610f0d57600192505b838311610f0d57600087815260026020908152604080832054888452600b83528184208785529092528083205481517f8f7140ea000000000000000000000000000000000000000000000000000000008152600481018a905260248101919091529051600160a060020a0390921692638f7140ea9260448084019382900301818387803b15801561142157600080fd5b505af1158015611435573d6000803e3d6000fd5b5050600190940193506113919050565b60009081526009602052604090206001015490565b600080808033803b80156114a6576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b600154341015611502576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b61150b896119fb565b95503394506115198561220e565b600160a060020a0386166000908152600760205260409020549094509250871580159061155757506000838152600960205260409020600201548814155b80156115635750828814155b1561158157600083815260096020526040902060020188905561158e565b8288141561158e57600097505b61089983868a89888c612290565b600b60209081526000928352604080842090915290825290205481565b33600090815260046020526040812054819081908190819015156115dc57600080fd5b600154341015611638576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b6116418961220e565b600160a060020a03808b16600090815260076020526040902054919450909250871615801590611683575088600160a060020a031687600160a060020a031614155b156111a75750600160a060020a03861660009081526007602090815260408083205484845260099092529091206002015481146111a75760008281526009602052604090206002018190556111b5828a838b878b612290565b60008033803b8015611726576040805160e560020a62461bcd0281526020600482015260116024820152600080516020612552833981519152604482015290519081900360640190fd5b61172f856119fb565b33600090815260076020908152604080832054808452600a835281842085855290925290912054919550935060ff1615156001146117b7576040805160e560020a62461bcd02815260206004820152601860248201527f7468617473206e6f742061206e616d6520796f75206f776e0000000000000000604482015290519081900360640190fd5b505060009081526009602052604090206001015550565b60055481565b33600090815260046020526040812054819081908190819015156117f757600080fd5b600154341015611853576040805160e560020a62461bcd02815260206004820152602660248201526000805160206125128339815191526044820152600080516020612532833981519152606482015290519081900360840190fd5b61185c8961220e565b600160a060020a038a166000908152600760205260409020549093509150869050801580159061189d57506000828152600960205260409020600201548114155b80156118a95750818114155b156118c75760008281526009602052604090206002018190556111a7565b818114156111a7575060006111b5828a838b878b612290565b600054600160a060020a03163314611942576040805160e560020a62461bcd02815260206004820152601760248201527f6d73672073656e646572206973206e6f74206120646576000000000000000000604482015290519081900360640190fd5b600155565b600260205260009081526040902054600160a060020a031681565b60046020526000908152604090205481565b6009602052600090815260409020805460018201546002830154600390930154600160a060020a0390921692909184565b60009081526009602052604090206002015490565b3360009081526004602052604081205415156119d557600080fd5b6119de8261220e565b5050600160a060020a031660009081526007602052604090205490565b8051600090829082808060208411801590611a165750600084115b1515611a92576040805160e560020a62461bcd02815260206004820152602a60248201527f737472696e67206d757374206265206265747765656e203120616e642033322060448201527f6368617261637465727300000000000000000000000000000000000000000000606482015290519081900360840190fd5b846000815181101515611aa157fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a0214158015611b0857508460018503815181101515611ae057fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a0214155b1515611b84576040805160e560020a62461bcd02815260206004820152602560248201527f737472696e672063616e6e6f74207374617274206f7220656e6420776974682060448201527f7370616365000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b846000815181101515611b9357fe5b90602001015160f860020a900460f860020a02600160f860020a031916603060f860020a021415611cd657846001815181101515611bcd57fe5b90602001015160f860020a900460f860020a02600160f860020a031916607860f860020a0214151515611c4a576040805160e560020a62461bcd02815260206004820152601b60248201527f737472696e672063616e6e6f7420737461727420776974682030780000000000604482015290519081900360640190fd5b846001815181101515611c5957fe5b90602001015160f860020a900460f860020a02600160f860020a031916605860f860020a0214151515611cd6576040805160e560020a62461bcd02815260206004820152601b60248201527f737472696e672063616e6e6f7420737461727420776974682030580000000000604482015290519081900360640190fd5b600091505b838210156121a65784517f400000000000000000000000000000000000000000000000000000000000000090869084908110611d1357fe5b90602001015160f860020a900460f860020a02600160f860020a031916118015611d87575084517f5b0000000000000000000000000000000000000000000000000000000000000090869084908110611d6857fe5b90602001015160f860020a900460f860020a02600160f860020a031916105b15611df4578482815181101515611d9a57fe5b90602001015160f860020a900460f860020a0260f860020a900460200160f860020a028583815181101515611dcb57fe5b906020010190600160f860020a031916908160001a905350821515611def57600192505b61219b565b8482815181101515611e0257fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a021480611ed2575084517f600000000000000000000000000000000000000000000000000000000000000090869084908110611e5e57fe5b90602001015160f860020a900460f860020a02600160f860020a031916118015611ed2575084517f7b0000000000000000000000000000000000000000000000000000000000000090869084908110611eb357fe5b90602001015160f860020a900460f860020a02600160f860020a031916105b80611f7c575084517f2f0000000000000000000000000000000000000000000000000000000000000090869084908110611f0857fe5b90602001015160f860020a900460f860020a02600160f860020a031916118015611f7c575084517f3a0000000000000000000000000000000000000000000000000000000000000090869084908110611f5d57fe5b90602001015160f860020a900460f860020a02600160f860020a031916105b1515611ff8576040805160e560020a62461bcd02815260206004820152602260248201527f737472696e6720636f6e7461696e7320696e76616c696420636861726163746560448201527f7273000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b848281518110151561200657fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a0214156120e557848260010181518110151561204257fe5b90602001015160f860020a900460f860020a02600160f860020a031916602060f860020a02141515156120e5576040805160e560020a62461bcd02815260206004820152602860248201527f737472696e672063616e6e6f7420636f6e7461696e20636f6e7365637574697660448201527f6520737061636573000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b82158015612191575084517f30000000000000000000000000000000000000000000000000000000000000009086908490811061211e57fe5b90602001015160f860020a900460f860020a02600160f860020a0319161080612191575084517f39000000000000000000000000000000000000000000000000000000000000009086908490811061217257fe5b90602001015160f860020a900460f860020a02600160f860020a031916115b1561219b57600192505b600190910190611cdb565b600183151514612200576040805160e560020a62461bcd02815260206004820152601d60248201527f737472696e672063616e6e6f74206265206f6e6c79206e756d62657273000000604482015290519081900360640190fd5b505050506020015192915050565b600160a060020a0381166000908152600760205260408120541515612288575060068054600190810191829055600160a060020a03831660008181526007602090815260408083208690559482526009905292909220805473ffffffffffffffffffffffffffffffffffffffff1916909217909155610f35565b506000610f35565b6000838152600860205260408120541561231a576000878152600a6020908152604080832087845290915290205460ff16151560011461231a576040805160e560020a62461bcd02815260206004820152601e60248201527f736f7272792074686174206e616d657320616c72656164792074616b656e0000604482015290519081900360640190fd5b6000878152600960209081526040808320600101879055868352600882528083208a9055898352600a825280832087845290915290205460ff1615156123aa576000878152600a602090815260408083208784528252808320805460ff191660019081179091558a845260098352818420600301805490910190819055600b835281842090845290915290208490555b60008054604051600160a060020a0390911691303180156108fc02929091818181858888f193505050501580156123e5573d6000803e3d6000fd5b506001821515141561248e575060015b600554811161248e5760008181526002602052604080822054815160e060020a6349cc635d028152600481018b9052600160a060020a038a8116602483015260448201899052606482018a9052925192909116926349cc635d9260848084019382900301818387803b15801561246a57600080fd5b505af115801561247e573d6000803e3d6000fd5b5050600190920191506123f59050565b600085815260096020908152604091829020805460019091015483518715158152928301899052600160a060020a039182168385015260608301523460808301524260a0830152915186928916918a917fdd6176433ff5026bbce96b068584b7bbe3514227e72df9c630b749ae87e644429181900360c00190a4505050505050505600756d6d2e2e2e2e2e2020796f75206861766520746f2070617920746865206e616d65206665650000000000000000000000000000000000000000000000000000736f7272792068756d616e73206f6e6c79000000000000000000000000000000a165627a7a7230582039696b47b3e2c8f51627b5c23df02c4b40a6b2d95cee69707adc556f6795f41e0029

Swarm Source

bzzr://39696b47b3e2c8f51627b5c23df02c4b40a6b2d95cee69707adc556f6795f41e

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.