@Override
  public int read(byte[] b, int off, int len) throws IOException {
    int r = myStream.read(b, off, len);
    updateProgress(r);
    return r;
  }
@Override
  public int read(byte[] b, int off, int len)