@Override
  public int read() throws IOException {
    if (remainingLimit() <= 0 ) return -1;
    final int r = super.read();
    if (r >= 0) myBytesRead++;
    return r;
  }
@Override
  public int read()