@Override
  public int available() throws IOException {
    //RC: super.available() may be expensive (=syscall for FileIS), hence in many cases we
    //    overwrite this method to just return remainingLimit() -- if we're sure remainingLimit()
    //    is precise estimate of remaining file size.
    //    (In fact, we do that so often that maybe we should add ctor param for that purpose?)
    return Math.min(super.available(), remainingLimit());
  }
@Override
  public int available()