public void process(byte[] b){

        String s= StringByteConverter.BytetoString(b).trim();
//        String s = StringValidator.CheckandReturnCorrectString(b).trim();
        
        JKaiUI.getLogFileManager().println("All", "Receive; " + s);
        Message message = null;
     
        try {
            message = parse(s);
            if (message instanceof PM) {
                message = parse(StringByteConverter.BytetoStringforPM(b, ((PM) message).getUser().decode()).trim());
            }
            if (message instanceof ArenaPM) {
                message = parse(StringByteConverter.BytetoStringforPM(b, ((ArenaPM) message).getUser().decode()).trim());
            }
        }
        catch (UnsupportedMessageException e){
            System.out.println("Manager process:"+e);
            _logger.warning("Message not supported: " + s);
            
            
            return;            
        }
        
        // _logger.finest("Found message: " + message);
        try {
            executer.execute(message);
        } catch (Exception e) {
            System.out.println("Manage process:" + e);
        }
    }