docs: public boolean save(long max, OutputStream out) throws IOException {
          byte[] bytes = new byte[4096];
          int pos;
          InputStream in0 = this.getInputStream();
          while ((pos = in0.read(bytes)) != -1) {
              if (max < 0) return false;
              out.write(bytes, 0, pos);
              max -= pos;
          }
          return true;
      }