protected String readLine() throws IOException {
  String line=null;
  if (haveStreams())   line=m_in.readLine();
 else   line=keyboardReadLine();
  setCurrentLine(line);
  return line;
}

protected String readLine ( ) throws IOException { String line = null ; if ( haveStreams ( ) ) line = m_in . readLine ( ) ; else line = keyboardReadLine ( ) ; setCurrentLine ( line ) ; return line ; }
dispose of the current line and read the next from the current stream , if its an empty line and we are console then repeat last line .
