code: @Override
      public long skip(long n) throws IOException {
          long toSkip = max >= 0 ? Math.min(n, max - pos) : n;
          long skippedBytes = in.skip(toSkip);
          pos += skippedBytes;
          return skippedBytes;
      }
docs: Invokes the delegate's <code>skip(long)</code> method.
  
  @param n the number of bytes to skip
  @return the actual number of bytes skipped
  @throws java.io.IOException if an I/O error occurs