function getPlayerInfo(address _addr) public view isHuman returns(uint256, uint256, uint256, uint256, address)
    {
        if (_addr == address(0)){
            _addr == msg.sender;
        }
        uint256 val;
        if(playerRoundInfo[_addr][roundId].keys > 0){
            
            val = val.add(__calcUnMaskedEarnings( _addr, roundId));
        }else{
            uint256 _rID = playerInfo[msg.sender].lrnd;
            if(_rID > 0){
                val = val.add(__calcUnMaskedEarnings(_addr, _rID));
                if(playerRoundInfo[_addr][_rID].gen == 0){
                    val = val.add(getBoomShare(_addr, _rID));
                }
            }
        }
        
        return (
            playerInfo[_addr].val.add(val),
            playerInfo[_addr].aff,
            playerInfo[_addr].lrnd,
            playerInfo[_addr].inum,
            playerInfo[_addr].laff
        );
    }