@Override
  public char getChar() throws IOException {
    Character ch = myPushBackQueue.poll();
    if (ch != null) {
      return ch;
    }
    try {
      return myQueue.take();
    }
    catch (InterruptedException e) {
      throw new IOException(e);
    }
  }
@Override
  public char getChar()