code: public Version nextPatch(String[] newPrelease) {
          require(newPrelease != null, "newPreRelease is null");
          final String[] newPreReleaseParts = verifyAndCopyArray(newPrelease, false);
          return new Version(this.major, this.minor, this.patch + 1, newPreReleaseParts,
                  EMPTY_ARRAY);
      }
docs: Given this version, returns the next patch version. That is, the major and minor
  parts remain the same and the patch version is incremented. The pre-release part
  will be set to the given identifier and the build-meta-data is dropped.
  
  @param newPrelease The pre-release part for the resulting Version.
  @return The incremented version.
  @throws VersionFormatException If the any element of the given array is not a valid
  pre release identifier part.
  @throws IllegalArgumentException If newPreRelease is null.
  @see #nextPatch()
  @see #nextPatch(String)
  @since 1.2.0