protected void rRun()
    {
        boolean flag = false;
        try
        {
            sendUpdate();
            while(super.isRun) 
            {
                int i = super.In.available();
                if(i >= 2)
                    readLine();
                else
                if(bufferOut.size() >= 2)
                    writeBuffer();
                else
                if(isTimeOut())
                {
                    if(debug.bool_debug)
                        debug.log(super.ID + "L Time Out");
                    Io.wShort(super.Out, 0);
                    super.Out.flush();
                    timeUpdate();
                } else
                if(i == 0)
                    Thread.sleep(3000L);
            }
        }
        catch(EOFException _ex) { }
        catch(InterruptedException _ex) { }
        catch(Throwable throwable)
        {
            debug.log(super.ID + "L " + throwable.getMessage());
        }
    }