@Override
  public void close() throws IOException {
    while (!atEndOfData) {
      char ch = savedChar;

      if (ch == 0) {
        ch = reader.read();
      }
      else {
        savedChar = 0;
      }

      if (ch == ']') {
        char ch2 = reader.read();

        if (ch2 == ']') {
          char ch3 = reader.read();

          if (ch3 == '>') {
            break;
          }

          savedChar = ch2;
          reader.unread(ch3);
        }
        else {
          reader.unread(ch2);
        }
      }
    }

    atEndOfData = true;
  }
@Override
  public void close()