changeset 17785:da56caf26b5c

Merge
author prr
date Mon, 17 Jul 2017 09:14:23 -0700
parents 93b7bd25273e 04ad8f0efc06
children f2a6d80dd60e
files test/ProblemList.txt test/java/lang/System/MacEncoding/MacJNUEncoding.sh
diffstat 92 files changed, 1283 insertions(+), 876 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Mon Jul 17 14:18:35 2017 +0530
+++ b/.hgtags	Mon Jul 17 09:14:23 2017 -0700
@@ -432,3 +432,7 @@
 5f504872a75b71f2fb19299f0d1e3395cf32eaa0 jdk-10+12
 e6c4f6ef717d104dba880e2dae538690c993b46f jdk-9+175
 4540d6376f3ef22305cca546f85f9b2ce9a210c4 jdk-10+13
+7a2bc0a80087b63c909df2af6ec7d9ef44e6d7f7 jdk-10+14
+9f27d513658d5375b0e26846857d92563f279073 jdk-9+176
+80acf577b7d0b886fb555c9916552844f6cc72af jdk-9+177
+e069834e2c518a7bc2ffadc8c7e3cd7ec69fa8a0 jdk-10+15
--- a/make/lib/Awt2dLibraries.gmk	Mon Jul 17 14:18:35 2017 +0530
+++ b/make/lib/Awt2dLibraries.gmk	Mon Jul 17 09:14:23 2017 -0700
@@ -749,12 +749,14 @@
 
   $(BUILD_LIBJAWT): $(BUILD_LIBAWT)
 
-  $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX): $(BUILD_LIBJAWT)
-	$(call LogInfo, Copying $(patsubst $(OUTPUT_ROOT)/%, %, $@))
-	$(call MakeDir, $(@D))
-	$(CP) $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjawt/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) $@
+  $(eval $(call SetupCopyFiles, COPY_JAWT_LIB, \
+      FILES := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libjawt/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX), \
+      DEST := $(SUPPORT_OUTPUTDIR)/modules_libs/$(MODULE), \
+  ))
 
-  TARGETS += $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX)
+  $(COPY_JAWT_LIB): $(BUILD_LIBJAWT)
+
+  TARGETS += $(COPY_JAWT_LIB)
 
 else # OPENJDK_TARGET_OS not windows
 
--- a/make/mapfiles/libsunec/mapfile-vers	Mon Jul 17 14:18:35 2017 +0530
+++ b/make/mapfiles/libsunec/mapfile-vers	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2017, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -27,6 +27,7 @@
 
 SUNWprivate_1.1 {
         global:
+                Java_sun_security_ec_ECKeyPairGenerator_isCurveSupported;
                 Java_sun_security_ec_ECKeyPairGenerator_generateECKeyPair;
                 Java_sun_security_ec_ECDSASignature_signDigest;
                 Java_sun_security_ec_ECDSASignature_verifySignedDigest;
--- a/make/src/classes/build/tools/taglet/ModuleGraph.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/make/src/classes/build/tools/taglet/ModuleGraph.java	Mon Jul 17 09:14:23 2017 -0700
@@ -29,6 +29,7 @@
 import java.util.List;
 import java.util.Set;
 import javax.lang.model.element.Element;
+import javax.lang.model.element.ModuleElement;
 import com.sun.source.doctree.DocTree;
 import jdk.javadoc.doclet.Taglet;
 import static jdk.javadoc.doclet.Taglet.Location.*;
@@ -62,7 +63,7 @@
             return "";
         }
 
-        String moduleName = element.getSimpleName().toString();
+        String moduleName = ((ModuleElement) element).getQualifiedName().toString();
         String imageFile = moduleName + "-graph.png";
         int thumbnailHeight = -1;
         String hoverImage = "";
--- a/src/java.base/share/classes/java/io/RandomAccessFile.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/io/RandomAccessFile.java	Mon Jul 17 09:14:23 2017 -0700
@@ -139,21 +139,21 @@
      * <table class="striped">
      * <caption style="display:none">Access mode permitted values and meanings</caption>
      * <thead>
-     * <tr><th style="text-align:left">Value</th><th style="text-align:left">Meaning</th></tr>
+     * <tr><th scope="col" style="text-align:left">Value</th><th scope="col" style="text-align:left">Meaning</th></tr>
      * </thead>
      * <tbody>
-     * <tr><td style="vertical-align:top">{@code "r"}</td>
+     * <tr><th scope="row" style="vertical-align:top">{@code "r"}</th>
      *     <td> Open for reading only. Invoking any of the {@code write}
      *     methods of the resulting object will cause an
      *     {@link java.io.IOException} to be thrown.</td></tr>
-     * <tr><td style="vertical-align:top">{@code "rw"}</td>
+     * <tr><th scope="row" style="vertical-align:top">{@code "rw"}</th>
      *     <td> Open for reading and writing.  If the file does not already
      *     exist then an attempt will be made to create it.</td></tr>
-     * <tr><td style="vertical-align:top">{@code "rws"}</td>
+     * <tr><th scope="row" style="vertical-align:top">{@code "rws"}</th>
      *     <td> Open for reading and writing, as with {@code "rw"}, and also
      *     require that every update to the file's content or metadata be
      *     written synchronously to the underlying storage device.</td></tr>
-     * <tr><td style="vertical-align:top">{@code "rwd"}</td>
+     * <tr><th scope="row" style="vertical-align:top">{@code "rwd"}</th>
      *     <td> Open for reading and writing, as with {@code "rw"}, and also
      *     require that every update to the file's content be written
      *     synchronously to the underlying storage device.</td></tr>
--- a/src/java.base/share/classes/java/io/SerializablePermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/io/SerializablePermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -48,15 +48,15 @@
  * <caption style="display:none">Permission target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  * <tbody>
  *
  * <tr>
- *   <td>enableSubclassImplementation</td>
+ *   <th scope="row">enableSubclassImplementation</th>
  *   <td>Subclass implementation of ObjectOutputStream or ObjectInputStream
  * to override the default serialization or deserialization, respectively,
  * of objects</td>
@@ -69,7 +69,7 @@
  * </tr>
  *
  * <tr>
- *   <td>enableSubstitution</td>
+ *   <th scope="row">enableSubstitution</th>
  *   <td>Substitution of one object for another during
  * serialization or deserialization</td>
  *   <td>This is dangerous because malicious code
@@ -78,7 +78,7 @@
  * </tr>
  *
  * <tr>
- *   <td>serialFilter</td>
+ *   <th scope="row">serialFilter</th>
  *   <td>Setting a filter for ObjectInputStreams.</td>
  *   <td>Code could remove a configured filter and remove protections
  *       already established.</td>
--- a/src/java.base/share/classes/java/lang/RuntimePermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/lang/RuntimePermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -48,15 +48,15 @@
  *  what the target allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  * <tbody>
  *
  * <tr>
- *   <td>createClassLoader</td>
+ *   <th scope="row">createClassLoader</th>
  *   <td>Creation of a class loader</td>
  *   <td>This is an extremely dangerous permission to grant.
  * Malicious applications that can instantiate their own class
@@ -67,7 +67,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getClassLoader</td>
+ *   <th scope="row">getClassLoader</th>
  *   <td>Retrieval of a class loader (e.g., the class loader for the calling
  * class)</td>
  *   <td>This would grant an attacker permission to get the
@@ -78,7 +78,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setContextClassLoader</td>
+ *   <th scope="row">setContextClassLoader</th>
  *   <td>Setting of the context class loader used by a thread</td>
  *   <td>The context class loader is used by system code and extensions
  * when they need to lookup resources that might not exist in the system
@@ -88,7 +88,7 @@
  * </tr>
  *
  * <tr>
- *   <td>enableContextClassLoaderOverride</td>
+ *   <th scope="row">enableContextClassLoaderOverride</th>
  *   <td>Subclass implementation of the thread context class loader methods</td>
  *   <td>The context class loader is used by system code and extensions
  * when they need to lookup resources that might not exist in the system
@@ -98,14 +98,14 @@
  * </tr>
  *
  * <tr>
- *   <td>closeClassLoader</td>
+ *   <th scope="row">closeClassLoader</th>
  *   <td>Closing of a ClassLoader</td>
  *   <td>Granting this permission allows code to close any URLClassLoader
  * that it has a reference to.</td>
  * </tr>
  *
  * <tr>
- *   <td>setSecurityManager</td>
+ *   <th scope="row">setSecurityManager</th>
  *   <td>Setting of the security manager (possibly replacing an existing one)
  * </td>
  *   <td>The security manager is a class that allows
@@ -117,14 +117,14 @@
  * </tr>
  *
  * <tr>
- *   <td>createSecurityManager</td>
+ *   <th scope="row">createSecurityManager</th>
  *   <td>Creation of a new security manager</td>
  *   <td>This gives code access to protected, sensitive methods that may
  * disclose information about other classes or the execution stack.</td>
  * </tr>
  *
  * <tr>
- *   <td>getenv.{variable name}</td>
+ *   <th scope="row">getenv.{variable name}</th>
  *   <td>Reading of the value of the specified environment variable</td>
  *   <td>This would allow code to read the value, or determine the
  *       existence, of a particular environment variable.  This is
@@ -132,7 +132,7 @@
  * </tr>
  *
  * <tr>
- *   <td>exitVM.{exit status}</td>
+ *   <th scope="row">exitVM.{exit status}</th>
  *   <td>Halting of the Java Virtual Machine with the specified exit status</td>
  *   <td>This allows an attacker to mount a denial-of-service attack
  * by automatically forcing the virtual machine to halt.
@@ -143,14 +143,14 @@
  * </tr>
  *
  * <tr>
- *   <td>shutdownHooks</td>
+ *   <th scope="row">shutdownHooks</th>
  *   <td>Registration and cancellation of virtual-machine shutdown hooks</td>
  *   <td>This allows an attacker to register a malicious shutdown
  * hook that interferes with the clean shutdown of the virtual machine.</td>
  * </tr>
  *
  * <tr>
- *   <td>setFactory</td>
+ *   <th scope="row">setFactory</th>
  *   <td>Setting of the socket factory used by ServerSocket or Socket,
  * or of the stream handler factory used by URL</td>
  *   <td>This allows code to set the actual implementation
@@ -160,7 +160,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setIO</td>
+ *   <th scope="row">setIO</th>
  *   <td>Setting of System.out, System.in, and System.err</td>
  *   <td>This allows changing the value of the standard system streams.
  * An attacker may change System.in to monitor and
@@ -169,7 +169,7 @@
  * </tr>
  *
  * <tr>
- *   <td>modifyThread</td>
+ *   <th scope="row">modifyThread</th>
  *   <td>Modification of threads, e.g., via calls to Thread
  * {@code interrupt, stop, suspend, resume, setDaemon, setPriority,
  * setName} and {@code setUncaughtExceptionHandler}
@@ -179,7 +179,7 @@
  * </tr>
  *
  * <tr>
- *   <td>stopThread</td>
+ *   <th scope="row">stopThread</th>
  *   <td>Stopping of threads via calls to the Thread <code>stop</code>
  * method</td>
  *   <td>This allows code to stop any thread in the system provided that it is
@@ -189,7 +189,7 @@
  * </tr>
  *
  * <tr>
- *   <td>modifyThreadGroup</td>
+ *   <th scope="row">modifyThreadGroup</th>
  *   <td>modification of thread groups, e.g., via calls to ThreadGroup
  * <code>destroy</code>, <code>getParent</code>, <code>resume</code>,
  * <code>setDaemon</code>, <code>setMaxPriority</code>, <code>stop</code>,
@@ -199,7 +199,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getProtectionDomain</td>
+ *   <th scope="row">getProtectionDomain</th>
  *   <td>Retrieval of the ProtectionDomain for a class</td>
  *   <td>This allows code to obtain policy information
  * for a particular code source. While obtaining policy information
@@ -209,7 +209,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getFileSystemAttributes</td>
+ *   <th scope="row">getFileSystemAttributes</th>
  *   <td>Retrieval of file system attributes</td>
  *   <td>This allows code to obtain file system information such as disk usage
  *       or disk space available to the caller.  This is potentially dangerous
@@ -219,7 +219,7 @@
  * </tr>
  *
  * <tr>
- *   <td>readFileDescriptor</td>
+ *   <th scope="row">readFileDescriptor</th>
  *   <td>Reading of file descriptors</td>
  *   <td>This would allow code to read the particular file associated
  *       with the file descriptor read. This is dangerous if the file
@@ -227,7 +227,7 @@
  * </tr>
  *
  * <tr>
- *   <td>writeFileDescriptor</td>
+ *   <th scope="row">writeFileDescriptor</th>
  *   <td>Writing to file descriptors</td>
  *   <td>This allows code to write to a particular file associated
  *       with the descriptor. This is dangerous because it may allow
@@ -236,7 +236,7 @@
  * </tr>
  *
  * <tr>
- *   <td>loadLibrary.{library name}</td>
+ *   <th scope="row">loadLibrary.{library name}</th>
  *   <td>Dynamic linking of the specified library</td>
  *   <td>It is dangerous to allow an applet permission to load native code
  * libraries, because the Java security architecture is not designed to and
@@ -244,7 +244,7 @@
  * </tr>
  *
  * <tr>
- *   <td>accessClassInPackage.{package name}</td>
+ *   <th scope="row">accessClassInPackage.{package name}</th>
  *   <td>Access to the specified package via a class loader's
  * <code>loadClass</code> method when that class loader calls
  * the SecurityManager <code>checkPackageAccess</code> method</td>
@@ -255,7 +255,7 @@
  * </tr>
  *
  * <tr>
- *   <td>defineClassInPackage.{package name}</td>
+ *   <th scope="row">defineClassInPackage.{package name}</th>
  *   <td>Definition of classes in the specified package, via a class
  * loader's <code>defineClass</code> method when that class loader calls
  * the SecurityManager <code>checkPackageDefinition</code> method.</td>
@@ -267,7 +267,7 @@
  * </tr>
  *
  * <tr>
- *   <td>defineClass</td>
+ *   <th scope="row">defineClass</th>
  *   <td>Define a class with
  * {@link java.lang.invoke.MethodHandles.Lookup#defineClass(byte[])
  * Lookup.defineClass}.</td>
@@ -277,7 +277,7 @@
  * </tr>
  *
  * <tr>
- *   <td>accessDeclaredMembers</td>
+ *   <th scope="row">accessDeclaredMembers</th>
  *   <td>Access to the declared members of a class</td>
  *   <td>This grants code permission to query a class for its public,
  * protected, default (package) access, and private fields and/or
@@ -295,14 +295,14 @@
 </td>
  * </tr>
  * <tr>
- *   <td>queuePrintJob</td>
+ *   <th scope="row">queuePrintJob</th>
  *   <td>Initiation of a print job request</td>
  *   <td>This could print sensitive information to a printer,
  * or simply waste paper.</td>
  * </tr>
  *
  * <tr>
- *   <td>getStackTrace</td>
+ *   <th scope="row">getStackTrace</th>
  *   <td>Retrieval of the stack trace information of another thread.</td>
  *   <td>This allows retrieval of the stack trace information of
  * another thread.  This might allow malicious code to monitor the
@@ -310,7 +310,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getStackWalkerWithClassReference</td>
+ *   <th scope="row">getStackWalkerWithClassReference</th>
  *   <td>Get a stack walker that can retrieve stack frames with class reference.</td>
  *   <td>This allows retrieval of Class objects from stack walking.
  *   This might allow malicious code to access Class objects on the stack
@@ -318,7 +318,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setDefaultUncaughtExceptionHandler</td>
+ *   <th scope="row">setDefaultUncaughtExceptionHandler</th>
  *   <td>Setting the default handler to be used when a thread
  *   terminates abruptly due to an uncaught exception</td>
  *   <td>This allows an attacker to register a malicious
@@ -327,7 +327,7 @@
  * </tr>
  *
  * <tr>
- *   <td>preferences</td>
+ *   <th scope="row">preferences</th>
  *   <td>Represents the permission required to get access to the
  *   java.util.prefs.Preferences implementations user or system root
  *   which in turn allows retrieval or update operations within the
@@ -340,22 +340,14 @@
  * </tr>
  *
  * <tr>
- *   <td>usePolicy</td>
- *   <td>Granting this permission disables the Java Plug-In's default
- *   security prompting behavior.</td>
- *   <td>For more information, refer to the <a href=
- *   "../../../technotes/guides/deploy/index.html">deployment guide</a>.
- *   </td>
- * </tr>
- * <tr>
- *   <td>manageProcess</td>
+ *   <th scope="row">manageProcess</th>
  *   <td>Native process termination and information about processes
  *       {@link ProcessHandle}.</td>
  *   <td>Allows code to identify and terminate processes that it did not create.</td>
  * </tr>
  *
  * <tr>
- *   <td>localeServiceProvider</td>
+ *   <th scope="row">localeServiceProvider</th>
  *   <td>This {@code RuntimePermission} is required to be granted to
  *   classes which subclass and implement
  *   {@code java.util.spi.LocaleServiceProvider}. The permission is
@@ -368,7 +360,7 @@
  * </tr>
  *
  * <tr>
- *   <td>loggerFinder</td>
+ *   <th scope="row">loggerFinder</th>
  *   <td>This {@code RuntimePermission} is required to be granted to
  *   classes which subclass or call methods on
  *   {@code java.lang.System.LoggerFinder}. The permission is
@@ -381,7 +373,7 @@
  * </tr>
  *
  * <tr>
- *   <td>accessSystemModules</td>
+ *   <th scope="row">accessSystemModules</th>
  *   <td>Access system modules in the runtime image.</td>
  *   <td>This grants the permission to access resources in the
  *   {@linkplain ModuleFinder#ofSystem system modules} in the runtime image.</td>
--- a/src/java.base/share/classes/java/lang/System.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/lang/System.java	Mon Jul 17 09:14:23 2017 -0700
@@ -582,67 +582,67 @@
      * <table class="striped">
      * <caption style="display:none">Shows property keys and associated values</caption>
      * <thead>
-     * <tr><th>Key</th>
-     *     <th>Description of Associated Value</th></tr>
+     * <tr><th scope="col">Key</th>
+     *     <th scope="col">Description of Associated Value</th></tr>
      * </thead>
      * <tbody>
-     * <tr><td><code>java.version</code></td>
+     * <tr><th scope="row"><code>java.version</code></th>
      *     <td>Java Runtime Environment version which may be interpreted
      *     as a {@link Runtime.Version}</td></tr>
-     * <tr><td><code>java.vendor</code></td>
+     * <tr><th scope="row"><code>java.vendor</code></th>
      *     <td>Java Runtime Environment vendor</td></tr>
-     * <tr><td><code>java.vendor.url</code></td>
+     * <tr><th scope="row"><code>java.vendor.url</code></th>
      *     <td>Java vendor URL</td></tr>
-     * <tr><td><code>java.home</code></td>
+     * <tr><th scope="row"><code>java.home</code></th>
      *     <td>Java installation directory</td></tr>
-     * <tr><td><code>java.vm.specification.version</code></td>
+     * <tr><th scope="row"><code>java.vm.specification.version</code></th>
      *     <td>Java Virtual Machine specification version which may be
      *     interpreted as a {@link Runtime.Version}</td></tr>
-     * <tr><td><code>java.vm.specification.vendor</code></td>
+     * <tr><th scope="row"><code>java.vm.specification.vendor</code></th>
      *     <td>Java Virtual Machine specification vendor</td></tr>
-     * <tr><td><code>java.vm.specification.name</code></td>
+     * <tr><th scope="row"><code>java.vm.specification.name</code></th>
      *     <td>Java Virtual Machine specification name</td></tr>
-     * <tr><td><code>java.vm.version</code></td>
+     * <tr><th scope="row"><code>java.vm.version</code></th>
      *     <td>Java Virtual Machine implementation version which may be
      *     interpreted as a {@link Runtime.Version}</td></tr>
-     * <tr><td><code>java.vm.vendor</code></td>
+     * <tr><th scope="row"><code>java.vm.vendor</code></th>
      *     <td>Java Virtual Machine implementation vendor</td></tr>
-     * <tr><td><code>java.vm.name</code></td>
+     * <tr><th scope="row"><code>java.vm.name</code></th>
      *     <td>Java Virtual Machine implementation name</td></tr>
-     * <tr><td><code>java.specification.version</code></td>
+     * <tr><th scope="row"><code>java.specification.version</code></th>
      *     <td>Java Runtime Environment specification version which may be
      *     interpreted as a {@link Runtime.Version}</td></tr>
-     * <tr><td><code>java.specification.vendor</code></td>
+     * <tr><th scope="row"><code>java.specification.vendor</code></th>
      *     <td>Java Runtime Environment specification  vendor</td></tr>
-     * <tr><td><code>java.specification.name</code></td>
+     * <tr><th scope="row"><code>java.specification.name</code></th>
      *     <td>Java Runtime Environment specification  name</td></tr>
-     * <tr><td><code>java.class.version</code></td>
+     * <tr><th scope="row"><code>java.class.version</code></th>
      *     <td>Java class format version number</td></tr>
-     * <tr><td><code>java.class.path</code></td>
+     * <tr><th scope="row"><code>java.class.path</code></th>
      *     <td>Java class path</td></tr>
-     * <tr><td><code>java.library.path</code></td>
+     * <tr><th scope="row"><code>java.library.path</code></th>
      *     <td>List of paths to search when loading libraries</td></tr>
-     * <tr><td><code>java.io.tmpdir</code></td>
+     * <tr><th scope="row"><code>java.io.tmpdir</code></th>
      *     <td>Default temp file path</td></tr>
-     * <tr><td><code>java.compiler</code></td>
+     * <tr><th scope="row"><code>java.compiler</code></th>
      *     <td>Name of JIT compiler to use</td></tr>
-     * <tr><td><code>os.name</code></td>
+     * <tr><th scope="row"><code>os.name</code></th>
      *     <td>Operating system name</td></tr>
-     * <tr><td><code>os.arch</code></td>
+     * <tr><th scope="row"><code>os.arch</code></th>
      *     <td>Operating system architecture</td></tr>
-     * <tr><td><code>os.version</code></td>
+     * <tr><th scope="row"><code>os.version</code></th>
      *     <td>Operating system version</td></tr>
-     * <tr><td><code>file.separator</code></td>
+     * <tr><th scope="row"><code>file.separator</code></th>
      *     <td>File separator ("/" on UNIX)</td></tr>
-     * <tr><td><code>path.separator</code></td>
+     * <tr><th scope="row"><code>path.separator</code></th>
      *     <td>Path separator (":" on UNIX)</td></tr>
-     * <tr><td><code>line.separator</code></td>
+     * <tr><th scope="row"><code>line.separator</code></th>
      *     <td>Line separator ("\n" on UNIX)</td></tr>
-     * <tr><td><code>user.name</code></td>
+     * <tr><th scope="row"><code>user.name</code></th>
      *     <td>User's account name</td></tr>
-     * <tr><td><code>user.home</code></td>
+     * <tr><th scope="row"><code>user.home</code></th>
      *     <td>User's home directory</td></tr>
-     * <tr><td><code>user.dir</code></td>
+     * <tr><th scope="row"><code>user.dir</code></th>
      *     <td>User's current working directory</td></tr>
      * </tbody>
      * </table>
@@ -659,17 +659,17 @@
      * <table class="striped">
      * <caption style="display:none">Shows property keys and associated values</caption>
      * <thead>
-     * <tr><th>Key</th>
-     *     <th>Description of Associated Value</th></tr>
+     * <tr><th scope="col">Key</th>
+     *     <th scope="col">Description of Associated Value</th></tr>
      * </thead>
      * <tbody>
-     * <tr><td>{@code jdk.module.path}</td>
+     * <tr><th scope="row">{@code jdk.module.path}</th>
      *     <td>The application module path</td></tr>
-     * <tr><td>{@code jdk.module.upgrade.path}</td>
+     * <tr><th scope="row">{@code jdk.module.upgrade.path}</th>
      *     <td>The upgrade module path</td></tr>
-     * <tr><td>{@code jdk.module.main}</td>
+     * <tr><th scope="row">{@code jdk.module.main}</th>
      *     <td>The module name of the initial/main module</td></tr>
-     * <tr><td>{@code jdk.module.main.class}</td>
+     * <tr><th scope="row">{@code jdk.module.main.class}</th>
      *     <td>The main class name of the initial module</td></tr>
      * </tbody>
      * </table>
--- a/src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java	Mon Jul 17 09:14:23 2017 -0700
@@ -84,43 +84,43 @@
  * <table class="striped">
  * <caption style="display:none">reference kinds</caption>
  * <thead>
- * <tr><th>reference kind</th><th>descriptive name</th><th>scope</th><th>member</th><th>behavior</th></tr>
+ * <tr><th scope="col">reference kind</th><th scope="col">descriptive name</th><th scope="col">scope</th><th scope="col">member</th><th scope="col">behavior</th></tr>
  * </thead>
  * <tbody>
  * <tr>
- *     <td>{@code 1}</td><td>{@code REF_getField}</td><td>{@code class}</td>
+ *     <th scope="row">{@code 1}</th><td>{@code REF_getField}</td><td>{@code class}</td>
  *     <td>{@code FT f;}</td><td>{@code (T) this.f;}</td>
  * </tr>
  * <tr>
- *     <td>{@code 2}</td><td>{@code REF_getStatic}</td><td>{@code class} or {@code interface}</td>
+ *     <th scope="row">{@code 2}</th><td>{@code REF_getStatic}</td><td>{@code class} or {@code interface}</td>
  *     <td>{@code static}<br>{@code FT f;}</td><td>{@code (T) C.f;}</td>
  * </tr>
  * <tr>
- *     <td>{@code 3}</td><td>{@code REF_putField}</td><td>{@code class}</td>
+ *     <th scope="row">{@code 3}</th><td>{@code REF_putField}</td><td>{@code class}</td>
  *     <td>{@code FT f;}</td><td>{@code this.f = x;}</td>
  * </tr>
  * <tr>
- *     <td>{@code 4}</td><td>{@code REF_putStatic}</td><td>{@code class}</td>
+ *     <th scope="row">{@code 4}</th><td>{@code REF_putStatic}</td><td>{@code class}</td>
  *     <td>{@code static}<br>{@code FT f;}</td><td>{@code C.f = arg;}</td>
  * </tr>
  * <tr>
- *     <td>{@code 5}</td><td>{@code REF_invokeVirtual}</td><td>{@code class}</td>
+ *     <th scope="row">{@code 5}</th><td>{@code REF_invokeVirtual}</td><td>{@code class}</td>
  *     <td>{@code T m(A*);}</td><td>{@code (T) this.m(arg*);}</td>
  * </tr>
  * <tr>
- *     <td>{@code 6}</td><td>{@code REF_invokeStatic}</td><td>{@code class} or {@code interface}</td>
+ *     <th scope="row">{@code 6}</th><td>{@code REF_invokeStatic}</td><td>{@code class} or {@code interface}</td>
  *     <td>{@code static}<br>{@code T m(A*);}</td><td>{@code (T) C.m(arg*);}</td>
  * </tr>
  * <tr>
- *     <td>{@code 7}</td><td>{@code REF_invokeSpecial}</td><td>{@code class} or {@code interface}</td>
+ *     <th scope="row">{@code 7}</th><td>{@code REF_invokeSpecial}</td><td>{@code class} or {@code interface}</td>
  *     <td>{@code T m(A*);}</td><td>{@code (T) super.m(arg*);}</td>
  * </tr>
  * <tr>
- *     <td>{@code 8}</td><td>{@code REF_newInvokeSpecial}</td><td>{@code class}</td>
+ *     <th scope="row">{@code 8}</th><td>{@code REF_newInvokeSpecial}</td><td>{@code class}</td>
  *     <td>{@code C(A*);}</td><td>{@code new C(arg*);}</td>
  * </tr>
  * <tr>
- *     <td>{@code 9}</td><td>{@code REF_invokeInterface}</td><td>{@code interface}</td>
+ *     <th scope="row">{@code 9}</th><td>{@code REF_invokeInterface}</td><td>{@code interface}</td>
  *     <td>{@code T m(A*);}</td><td>{@code (T) this.m(arg*);}</td>
  * </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/lang/invoke/MethodHandles.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/lang/invoke/MethodHandles.java	Mon Jul 17 09:14:23 2017 -0700
@@ -282,66 +282,66 @@
      * <caption style="display:none">lookup method behaviors</caption>
      * <thead>
      * <tr>
-     *     <th><a id="equiv"></a>lookup expression</th>
-     *     <th>member</th>
-     *     <th>bytecode behavior</th>
+     *     <th scope="col"><a id="equiv"></a>lookup expression</th>
+     *     <th scope="col">member</th>
+     *     <th scope="col">bytecode behavior</th>
      * </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findGetter lookup.findGetter(C.class,"f",FT.class)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findGetter lookup.findGetter(C.class,"f",FT.class)}</th>
      *     <td>{@code FT f;}</td><td>{@code (T) this.f;}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findStaticGetter lookup.findStaticGetter(C.class,"f",FT.class)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findStaticGetter lookup.findStaticGetter(C.class,"f",FT.class)}</th>
      *     <td>{@code static}<br>{@code FT f;}</td><td>{@code (T) C.f;}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findSetter lookup.findSetter(C.class,"f",FT.class)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findSetter lookup.findSetter(C.class,"f",FT.class)}</th>
      *     <td>{@code FT f;}</td><td>{@code this.f = x;}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findStaticSetter lookup.findStaticSetter(C.class,"f",FT.class)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findStaticSetter lookup.findStaticSetter(C.class,"f",FT.class)}</th>
      *     <td>{@code static}<br>{@code FT f;}</td><td>{@code C.f = arg;}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findVirtual lookup.findVirtual(C.class,"m",MT)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findVirtual lookup.findVirtual(C.class,"m",MT)}</th>
      *     <td>{@code T m(A*);}</td><td>{@code (T) this.m(arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findStatic lookup.findStatic(C.class,"m",MT)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findStatic lookup.findStatic(C.class,"m",MT)}</th>
      *     <td>{@code static}<br>{@code T m(A*);}</td><td>{@code (T) C.m(arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findSpecial lookup.findSpecial(C.class,"m",MT,this.class)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findSpecial lookup.findSpecial(C.class,"m",MT,this.class)}</th>
      *     <td>{@code T m(A*);}</td><td>{@code (T) super.m(arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findConstructor lookup.findConstructor(C.class,MT)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findConstructor lookup.findConstructor(C.class,MT)}</th>
      *     <td>{@code C(A*);}</td><td>{@code new C(arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#unreflectGetter lookup.unreflectGetter(aField)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#unreflectGetter lookup.unreflectGetter(aField)}</th>
      *     <td>({@code static})?<br>{@code FT f;}</td><td>{@code (FT) aField.get(thisOrNull);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#unreflectSetter lookup.unreflectSetter(aField)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#unreflectSetter lookup.unreflectSetter(aField)}</th>
      *     <td>({@code static})?<br>{@code FT f;}</td><td>{@code aField.set(thisOrNull, arg);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#unreflect lookup.unreflect(aMethod)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#unreflect lookup.unreflect(aMethod)}</th>
      *     <td>({@code static})?<br>{@code T m(A*);}</td><td>{@code (T) aMethod.invoke(thisOrNull, arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#unreflectConstructor lookup.unreflectConstructor(aConstructor)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#unreflectConstructor lookup.unreflectConstructor(aConstructor)}</th>
      *     <td>{@code C(A*);}</td><td>{@code (C) aConstructor.newInstance(arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#unreflect lookup.unreflect(aMethod)}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#unreflect lookup.unreflect(aMethod)}</th>
      *     <td>({@code static})?<br>{@code T m(A*);}</td><td>{@code (T) aMethod.invoke(thisOrNull, arg*);}</td>
      * </tr>
      * <tr>
-     *     <td>{@link java.lang.invoke.MethodHandles.Lookup#findClass lookup.findClass("C")}</td>
+     *     <th scope="row">{@link java.lang.invoke.MethodHandles.Lookup#findClass lookup.findClass("C")}</th>
      *     <td>{@code class C { ... }}</td><td>{@code C.class;}</td>
      * </tr>
      * </tbody>
--- a/src/java.base/share/classes/java/lang/reflect/ReflectPermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/lang/reflect/ReflectPermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -36,15 +36,15 @@
  * <caption style="display:none">Table shows permission target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  * <tbody>
  *
  * <tr>
- *   <td>suppressAccessChecks</td>
+ *   <th scope="row">suppressAccessChecks</th>
  *   <td>ability to suppress the standard Java language access checks
  *       on fields and methods in a class; allow access not only public members
  *       but also allow access to default (package) access, protected,
@@ -53,7 +53,7 @@
  *       methods normally unavailable would be accessible to malicious code.</td>
  * </tr>
  * <tr>
- *   <td>newProxyInPackage.{package name}</td>
+ *   <th scope="row">newProxyInPackage.{package name}</th>
  *   <td>ability to create a proxy instance in the specified package of which
  *       the non-public interface that the proxy class implements.</td>
  *   <td>This gives code access to classes in packages to which it normally
--- a/src/java.base/share/classes/java/net/NetPermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/net/NetPermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -51,14 +51,14 @@
  * <caption style="display:none">Permission target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  * <tbody>
  * <tr>
- *   <td>allowHttpTrace</td>
+ *   <th scope="row">allowHttpTrace</th>
  *   <td>The ability to use the HTTP TRACE method in HttpURLConnection.</td>
  *   <td>Malicious code using HTTP TRACE could get access to security sensitive
  *   information in the HTTP headers (such as cookies) that it might not
@@ -66,7 +66,7 @@
  *   </tr>
  *
  * <tr>
- *   <td>getCookieHandler</td>
+ *   <th scope="row">getCookieHandler</th>
  *   <td>The ability to get the cookie handler that processes highly
  *   security sensitive cookie information for an Http session.</td>
  *   <td>Malicious code can get a cookie handler to obtain access to
@@ -76,14 +76,14 @@
  *   </tr>
  *
  * <tr>
- *   <td>getNetworkInformation</td>
+ *   <th scope="row">getNetworkInformation</th>
  *   <td>The ability to retrieve all information about local network interfaces.</td>
  *   <td>Malicious code can read information about network hardware such as
  *   MAC addresses, which could be used to construct local IPv6 addresses.</td>
  * </tr>
  *
  * <tr>
- *   <td>getProxySelector</td>
+ *   <th scope="row">getProxySelector</th>
  *   <td>The ability to get the proxy selector used to make decisions
  *   on which proxies to use when making network connections.</td>
  *   <td>Malicious code can get a ProxySelector to discover proxy
@@ -92,7 +92,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getResponseCache</td>
+ *   <th scope="row">getResponseCache</th>
  *   <td>The ability to get the response cache that provides
  *   access to a local response cache.</td>
  *   <td>Malicious code getting access to the local response cache
@@ -100,7 +100,7 @@
  *   </tr>
  *
  * <tr>
- *   <td>requestPasswordAuthentication</td>
+ *   <th scope="row">requestPasswordAuthentication</th>
  *   <td>The ability
  *   to ask the authenticator registered with the system for
  *   a password</td>
@@ -108,7 +108,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setCookieHandler</td>
+ *   <th scope="row">setCookieHandler</th>
  *   <td>The ability to set the cookie handler that processes highly
  *   security sensitive cookie information for an Http session.</td>
  *   <td>Malicious code can set a cookie handler to obtain access to
@@ -118,7 +118,7 @@
  *   </tr>
  *
  * <tr>
- *   <td>setDefaultAuthenticator</td>
+ *   <th scope="row">setDefaultAuthenticator</th>
  *   <td>The ability to set the
  *   way authentication information is retrieved when
  *   a proxy or HTTP server asks for authentication</td>
@@ -128,7 +128,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setProxySelector</td>
+ *   <th scope="row">setProxySelector</th>
  *   <td>The ability to set the proxy selector used to make decisions
  *   on which proxies to use when making network connections.</td>
  *   <td>Malicious code can set a ProxySelector that directs network
@@ -136,7 +136,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setResponseCache</td>
+ *   <th scope="row">setResponseCache</th>
  *   <td>The ability to set the response cache that provides access to
  *   a local response cache.</td>
  *   <td>Malicious code getting access to the local response cache
@@ -145,7 +145,7 @@
  *   </tr>
  *
  * <tr>
- *   <td>specifyStreamHandler</td>
+ *   <th scope="row">specifyStreamHandler</th>
  *   <td>The ability
  *   to specify a stream handler when constructing a URL</td>
  *   <td>Malicious code may create a URL with resources that it would
--- a/src/java.base/share/classes/java/nio/channels/AsynchronousChannelGroup.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/AsynchronousChannelGroup.java	Mon Jul 17 09:14:23 2017 -0700
@@ -64,13 +64,13 @@
  * <caption style="display:none:">System properties</caption>
  *   <thead>
  *   <tr>
- *     <th>System property</th>
- *     <th>Description</th>
+ *     <th scope="col">System property</th>
+ *     <th scope="col">Description</th>
  *   </tr>
  *   </thead>
  *   <tbody>
  *   <tr>
- *     <td> {@code java.nio.channels.DefaultThreadPool.threadFactory} </td>
+ *     <th scope="row"> {@code java.nio.channels.DefaultThreadPool.threadFactory} </th>
  *     <td> The value of this property is taken to be the fully-qualified name
  *     of a concrete {@link java.util.concurrent.ThreadFactory ThreadFactory}
  *     class. The class is loaded using the system class loader and instantiated.
@@ -81,7 +81,7 @@
  *     construction of the default group. </td>
  *   </tr>
  *   <tr>
- *     <td> {@code java.nio.channels.DefaultThreadPool.initialSize} </td>
+ *     <th scope="row"> {@code java.nio.channels.DefaultThreadPool.initialSize} </th>
  *     <td> The value of the {@code initialSize} parameter for the default
  *     group (see {@link #withCachedThreadPool withCachedThreadPool}).
  *     The value of the property is taken to be the {@code String}
--- a/src/java.base/share/classes/java/nio/channels/AsynchronousFileChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/AsynchronousFileChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -136,17 +136,17 @@
      * <table class="striped">
      * <caption style="display:none">additional options</caption>
      * <thead>
-     * <tr> <th>Option</th> <th>Description</th> </tr>
+     * <tr> <th scope="col">Option</th> <th scope="col">Description</th> </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *   <td> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </td>
+     *   <th scope="row"> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </th>
      *   <td> When opening an existing file, the file is first truncated to a
      *   size of 0 bytes. This option is ignored when the file is opened only
      *   for reading.</td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#CREATE_NEW CREATE_NEW} </td>
+     *   <th scope="row"> {@link StandardOpenOption#CREATE_NEW CREATE_NEW} </th>
      *   <td> If this option is present then a new file is created, failing if
      *   the file already exists. When creating a file the check for the
      *   existence of the file and the creation of the file if it does not exist
@@ -154,7 +154,7 @@
      *   ignored when the file is opened only for reading. </td>
      * </tr>
      * <tr>
-     *   <td > {@link StandardOpenOption#CREATE CREATE} </td>
+     *   <th scope="row" > {@link StandardOpenOption#CREATE CREATE} </th>
      *   <td> If this option is present then an existing file is opened if it
      *   exists, otherwise a new file is created. When creating a file the check
      *   for the existence of the file and the creation of the file if it does
@@ -163,7 +163,7 @@
      *   the file is opened only for reading. </td>
      * </tr>
      * <tr>
-     *   <td > {@link StandardOpenOption#DELETE_ON_CLOSE DELETE_ON_CLOSE} </td>
+     *   <th scope="row" > {@link StandardOpenOption#DELETE_ON_CLOSE DELETE_ON_CLOSE} </th>
      *   <td> When this option is present then the implementation makes a
      *   <em>best effort</em> attempt to delete the file when closed by the
      *   the {@link #close close} method. If the {@code close} method is not
@@ -171,20 +171,20 @@
      *   when the Java virtual machine terminates. </td>
      * </tr>
      * <tr>
-     *   <td>{@link StandardOpenOption#SPARSE SPARSE} </td>
+     *   <th scope="row">{@link StandardOpenOption#SPARSE SPARSE} </th>
      *   <td> When creating a new file this option is a <em>hint</em> that the
      *   new file will be sparse. This option is ignored when not creating
      *   a new file. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#SYNC SYNC} </td>
+     *   <th scope="row"> {@link StandardOpenOption#SYNC SYNC} </th>
      *   <td> Requires that every update to the file's content or metadata be
      *   written synchronously to the underlying storage device. (see <a
      *   href="../file/package-summary.html#integrity"> Synchronized I/O file
      *   integrity</a>). </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#DSYNC DSYNC} </td>
+     *   <th scope="row"> {@link StandardOpenOption#DSYNC DSYNC} </th>
      *   <td> Requires that every update to the file's content be written
      *   synchronously to the underlying storage device. (see <a
      *   href="../file/package-summary.html#integrity"> Synchronized I/O file
--- a/src/java.base/share/classes/java/nio/channels/AsynchronousServerSocketChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/AsynchronousServerSocketChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -56,17 +56,17 @@
  * <caption style="display:none">Socket options</caption>
  * <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </th>
  *     <td> Re-use address </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/channels/AsynchronousSocketChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/AsynchronousSocketChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -66,29 +66,29 @@
  * <caption style="display:none">Socket options</caption>
  * <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </th>
  *     <td> The size of the socket send buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_KEEPALIVE SO_KEEPALIVE} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_KEEPALIVE SO_KEEPALIVE} </th>
  *     <td> Keep connection alive </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </th>
  *     <td> Re-use address </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </th>
  *     <td> Disable the Nagle algorithm </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/channels/DatagramChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/DatagramChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -61,44 +61,44 @@
  * <caption style="display:none">Socket options</caption>
  * <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </th>
  *     <td> The size of the socket send buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </th>
  *     <td> Re-use address </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_BROADCAST SO_BROADCAST} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_BROADCAST SO_BROADCAST} </th>
  *     <td> Allow transmission of broadcast datagrams </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#IP_TOS IP_TOS} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#IP_TOS IP_TOS} </th>
  *     <td> The Type of Service (ToS) octet in the Internet Protocol (IP) header </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#IP_MULTICAST_IF IP_MULTICAST_IF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#IP_MULTICAST_IF IP_MULTICAST_IF} </th>
  *     <td> The network interface for Internet Protocol (IP) multicast datagrams </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#IP_MULTICAST_TTL
- *       IP_MULTICAST_TTL} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#IP_MULTICAST_TTL
+ *       IP_MULTICAST_TTL} </th>
  *     <td> The <em>time-to-live</em> for Internet Protocol (IP) multicast
  *       datagrams </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#IP_MULTICAST_LOOP
- *       IP_MULTICAST_LOOP} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#IP_MULTICAST_LOOP
+ *       IP_MULTICAST_LOOP} </th>
  *     <td> Loopback for Internet Protocol (IP) multicast datagrams </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/channels/FileChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/FileChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -177,11 +177,11 @@
      * <table class="striped">
      * <caption style="display:none">additional options</caption>
      * <thead>
-     * <tr> <th>Option</th> <th>Description</th> </tr>
+     * <tr> <th scope="col">Option</th> <th scope="col">Description</th> </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *   <td> {@link StandardOpenOption#APPEND APPEND} </td>
+     *   <th scope="row"> {@link StandardOpenOption#APPEND APPEND} </th>
      *   <td> If this option is present then the file is opened for writing and
      *     each invocation of the channel's {@code write} method first advances
      *     the position to the end of the file and then writes the requested
@@ -191,13 +191,13 @@
      *     with the {@code READ} or {@code TRUNCATE_EXISTING} options. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </td>
+     *   <th scope="row"> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </th>
      *   <td> If this option is present then the existing file is truncated to
      *   a size of 0 bytes. This option is ignored when the file is opened only
      *   for reading. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#CREATE_NEW CREATE_NEW} </td>
+     *   <th scope="row"> {@link StandardOpenOption#CREATE_NEW CREATE_NEW} </th>
      *   <td> If this option is present then a new file is created, failing if
      *   the file already exists. When creating a file the check for the
      *   existence of the file and the creation of the file if it does not exist
@@ -205,7 +205,7 @@
      *   ignored when the file is opened only for reading. </td>
      * </tr>
      * <tr>
-     *   <td > {@link StandardOpenOption#CREATE CREATE} </td>
+     *   <th scope="row" > {@link StandardOpenOption#CREATE CREATE} </th>
      *   <td> If this option is present then an existing file is opened if it
      *   exists, otherwise a new file is created. When creating a file the check
      *   for the existence of the file and the creation of the file if it does
@@ -214,7 +214,7 @@
      *   the file is opened only for reading. </td>
      * </tr>
      * <tr>
-     *   <td > {@link StandardOpenOption#DELETE_ON_CLOSE DELETE_ON_CLOSE} </td>
+     *   <th scope="row" > {@link StandardOpenOption#DELETE_ON_CLOSE DELETE_ON_CLOSE} </th>
      *   <td> When this option is present then the implementation makes a
      *   <em>best effort</em> attempt to delete the file when closed by the
      *   the {@link #close close} method. If the {@code close} method is not
@@ -222,20 +222,20 @@
      *   when the Java virtual machine terminates. </td>
      * </tr>
      * <tr>
-     *   <td>{@link StandardOpenOption#SPARSE SPARSE} </td>
+     *   <th scope="row">{@link StandardOpenOption#SPARSE SPARSE} </th>
      *   <td> When creating a new file this option is a <em>hint</em> that the
      *   new file will be sparse. This option is ignored when not creating
      *   a new file. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#SYNC SYNC} </td>
+     *   <th scope="row"> {@link StandardOpenOption#SYNC SYNC} </th>
      *   <td> Requires that every update to the file's content or metadata be
      *   written synchronously to the underlying storage device. (see <a
      *   href="../file/package-summary.html#integrity"> Synchronized I/O file
      *   integrity</a>). </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#DSYNC DSYNC} </td>
+     *   <th scope="row"> {@link StandardOpenOption#DSYNC DSYNC} </th>
      *   <td> Requires that every update to the file's content be written
      *   synchronously to the underlying storage device. (see <a
      *   href="../file/package-summary.html#integrity"> Synchronized I/O file
--- a/src/java.base/share/classes/java/nio/channels/ServerSocketChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/ServerSocketChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -50,17 +50,17 @@
  * <caption style="display:none">Socket options</caption>
  * <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </th>
  *     <td> Re-use address </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/channels/SocketChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/channels/SocketChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -70,34 +70,34 @@
  * <caption style="display:none">Socket options</caption>
  * <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_SNDBUF SO_SNDBUF} </th>
  *     <td> The size of the socket send buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_KEEPALIVE SO_KEEPALIVE} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_KEEPALIVE SO_KEEPALIVE} </th>
  *     <td> Keep connection alive </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR} </th>
  *     <td> Re-use address </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#SO_LINGER SO_LINGER} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#SO_LINGER SO_LINGER} </th>
  *     <td> Linger on close if data is present (when configured in blocking mode
  *          only) </td>
  *   </tr>
  *   <tr>
- *     <td> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </td>
+ *     <th scope="row"> {@link java.net.StandardSocketOptions#TCP_NODELAY TCP_NODELAY} </th>
  *     <td> Disable the Nagle algorithm </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/charset/Charset.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/charset/Charset.java	Mon Jul 17 09:14:23 2017 -0700
@@ -150,23 +150,23 @@
  * <blockquote><table class="striped" style="width:80%">
  * <caption style="display:none">Description of standard charsets</caption>
  * <thead>
- * <tr><th style="text-align:left">Charset</th><th style="text-align:left">Description</th></tr>
+ * <tr><th scope="col" style="text-align:left">Charset</th><th scope="col" style="text-align:left">Description</th></tr>
  * </thead>
  * <tbody>
- * <tr><td style="vertical-align:top">{@code US-ASCII}</td>
+ * <tr><th scope="row" style="vertical-align:top">{@code US-ASCII}</th>
  *     <td>Seven-bit ASCII, a.k.a. {@code ISO646-US},
  *         a.k.a. the Basic Latin block of the Unicode character set</td></tr>
- * <tr><td style="vertical-align:top"><code>ISO-8859-1&nbsp;&nbsp;</code></td>
+ * <tr><th scope="row" style="vertical-align:top"><code>ISO-8859-1&nbsp;&nbsp;</code></th>
  *     <td>ISO Latin Alphabet No. 1, a.k.a. {@code ISO-LATIN-1}</td></tr>
- * <tr><td style="vertical-align:top">{@code UTF-8}</td>
+ * <tr><th scope="row" style="vertical-align:top">{@code UTF-8}</th>
  *     <td>Eight-bit UCS Transformation Format</td></tr>
- * <tr><td style="vertical-align:top">{@code UTF-16BE}</td>
+ * <tr><th scope="row" style="vertical-align:top">{@code UTF-16BE}</th>
  *     <td>Sixteen-bit UCS Transformation Format,
  *         big-endian byte&nbsp;order</td></tr>
- * <tr><td style="vertical-align:top">{@code UTF-16LE}</td>
+ * <tr><th scope="row" style="vertical-align:top">{@code UTF-16LE}</th>
  *     <td>Sixteen-bit UCS Transformation Format,
  *         little-endian byte&nbsp;order</td></tr>
- * <tr><td style="vertical-align:top">{@code UTF-16}</td>
+ * <tr><th scope="row" style="vertical-align:top">{@code UTF-16}</th>
  *     <td>Sixteen-bit UCS Transformation Format,
  *         byte&nbsp;order identified by an optional byte-order mark</td></tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/file/Files.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/Files.java	Mon Jul 17 09:14:23 2017 -0700
@@ -236,11 +236,11 @@
      * <table class="striped">
      * <caption style="display:none">Options</caption>
      * <thead>
-     * <tr> <th>Option</th> <th>Description</th> </tr>
+     * <tr> <th scope="col">Option</th> <th scope="col">Description</th> </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *   <td> {@link StandardOpenOption#APPEND APPEND} </td>
+     *   <th scope="row"> {@link StandardOpenOption#APPEND APPEND} </th>
      *   <td> If this option is present then the file is opened for writing and
      *     each invocation of the channel's {@code write} method first advances
      *     the position to the end of the file and then writes the requested
@@ -250,13 +250,13 @@
      *     with the {@code READ} or {@code TRUNCATE_EXISTING} options. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </td>
+     *   <th scope="row"> {@link StandardOpenOption#TRUNCATE_EXISTING TRUNCATE_EXISTING} </th>
      *   <td> If this option is present then the existing file is truncated to
      *   a size of 0 bytes. This option is ignored when the file is opened only
      *   for reading. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#CREATE_NEW CREATE_NEW} </td>
+     *   <th scope="row"> {@link StandardOpenOption#CREATE_NEW CREATE_NEW} </th>
      *   <td> If this option is present then a new file is created, failing if
      *   the file already exists or is a symbolic link. When creating a file the
      *   check for the existence of the file and the creation of the file if it
@@ -264,14 +264,14 @@
      *   This option is ignored when the file is opened only for reading. </td>
      * </tr>
      * <tr>
-     *   <td > {@link StandardOpenOption#CREATE CREATE} </td>
+     *   <th scope="row" > {@link StandardOpenOption#CREATE CREATE} </th>
      *   <td> If this option is present then an existing file is opened if it
      *   exists, otherwise a new file is created. This option is ignored if the
      *   {@code CREATE_NEW} option is also present or the file is opened only
      *   for reading. </td>
      * </tr>
      * <tr>
-     *   <td > {@link StandardOpenOption#DELETE_ON_CLOSE DELETE_ON_CLOSE} </td>
+     *   <th scope="row" > {@link StandardOpenOption#DELETE_ON_CLOSE DELETE_ON_CLOSE} </th>
      *   <td> When this option is present then the implementation makes a
      *   <em>best effort</em> attempt to delete the file when closed by the
      *   {@link SeekableByteChannel#close close} method. If the {@code close}
@@ -279,20 +279,20 @@
      *   delete the file when the Java virtual machine terminates. </td>
      * </tr>
      * <tr>
-     *   <td>{@link StandardOpenOption#SPARSE SPARSE} </td>
+     *   <th scope="row">{@link StandardOpenOption#SPARSE SPARSE} </th>
      *   <td> When creating a new file this option is a <em>hint</em> that the
      *   new file will be sparse. This option is ignored when not creating
      *   a new file. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#SYNC SYNC} </td>
+     *   <th scope="row"> {@link StandardOpenOption#SYNC SYNC} </th>
      *   <td> Requires that every update to the file's content or metadata be
      *   written synchronously to the underlying storage device. (see <a
      *   href="package-summary.html#integrity"> Synchronized I/O file
      *   integrity</a>). </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardOpenOption#DSYNC DSYNC} </td>
+     *   <th scope="row"> {@link StandardOpenOption#DSYNC DSYNC} </th>
      *   <td> Requires that every update to the file's content be written
      *   synchronously to the underlying storage device. (see <a
      *   href="package-summary.html#integrity"> Synchronized I/O file
@@ -1196,18 +1196,18 @@
      * <table class="striped">
      * <caption style="display:none">Options</caption>
      * <thead>
-     * <tr> <th>Option</th> <th>Description</th> </tr>
+     * <tr> <th scope="col">Option</th> <th scope="col">Description</th> </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *   <td> {@link StandardCopyOption#REPLACE_EXISTING REPLACE_EXISTING} </td>
+     *   <th scope="row"> {@link StandardCopyOption#REPLACE_EXISTING REPLACE_EXISTING} </th>
      *   <td> If the target file exists, then the target file is replaced if it
      *     is not a non-empty directory. If the target file exists and is a
      *     symbolic link, then the symbolic link itself, not the target of
      *     the link, is replaced. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardCopyOption#COPY_ATTRIBUTES COPY_ATTRIBUTES} </td>
+     *   <th scope="row"> {@link StandardCopyOption#COPY_ATTRIBUTES COPY_ATTRIBUTES} </th>
      *   <td> Attempts to copy the file attributes associated with this file to
      *     the target file. The exact file attributes that are copied is platform
      *     and file system dependent and therefore unspecified. Minimally, the
@@ -1217,7 +1217,7 @@
      *     loss. </td>
      * </tr>
      * <tr>
-     *   <td> {@link LinkOption#NOFOLLOW_LINKS NOFOLLOW_LINKS} </td>
+     *   <th scope="row"> {@link LinkOption#NOFOLLOW_LINKS NOFOLLOW_LINKS} </th>
      *   <td> Symbolic links are not followed. If the file is a symbolic link,
      *     then the symbolic link itself, not the target of the link, is copied.
      *     It is implementation specific if file attributes can be copied to the
@@ -1319,18 +1319,18 @@
      * <table class="striped">
      * <caption style="display:none">Options</caption>
      * <thead>
-     * <tr> <th>Option</th> <th>Description</th> </tr>
+     * <tr> <th scope="col">Option</th> <th scope="col">Description</th> </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *   <td> {@link StandardCopyOption#REPLACE_EXISTING REPLACE_EXISTING} </td>
+     *   <th scope="row"> {@link StandardCopyOption#REPLACE_EXISTING REPLACE_EXISTING} </th>
      *   <td> If the target file exists, then the target file is replaced if it
      *     is not a non-empty directory. If the target file exists and is a
      *     symbolic link, then the symbolic link itself, not the target of
      *     the link, is replaced. </td>
      * </tr>
      * <tr>
-     *   <td> {@link StandardCopyOption#ATOMIC_MOVE ATOMIC_MOVE} </td>
+     *   <th scope="row"> {@link StandardCopyOption#ATOMIC_MOVE ATOMIC_MOVE} </th>
      *   <td> The move is performed as an atomic file system operation and all
      *     other options are ignored. If the target file exists then it is
      *     implementation specific if the existing file is replaced or this method
--- a/src/java.base/share/classes/java/nio/file/LinkPermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/LinkPermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -37,14 +37,14 @@
  * <caption style="display:none">Table shows permission target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  * <tbody>
  * <tr>
- *   <td>hard</td>
+ *   <th scope="row">hard</th>
  *   <td> Ability to add an existing file to a directory. This is sometimes
  *   known as creating a link, or hard link. </td>
  *   <td> Extreme care should be taken when granting this permission. It allows
@@ -52,7 +52,7 @@
  *   attacker access to all files. </td>
  * </tr>
  * <tr>
- *   <td>symbolic</td>
+ *   <th scope="row">symbolic</th>
  *   <td> Ability to create symbolic links. </td>
  *   <td> Extreme care should be taken when granting this permission. It allows
  *   linking to any file or directory in the file system thus allowing the
--- a/src/java.base/share/classes/java/nio/file/attribute/AclFileAttributeView.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/attribute/AclFileAttributeView.java	Mon Jul 17 09:14:23 2017 -0700
@@ -98,17 +98,17 @@
  * <caption style="display:none">Supported attributes</caption>
  * <thead>
  *   <tr>
- *     <th> Name </th>
- *     <th> Type </th>
+ *     <th scope="col"> Name </th>
+ *     <th scope="col"> Type </th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> "acl" </td>
+ *     <th scope="row"> "acl" </th>
  *     <td> {@link List}&lt;{@link AclEntry}&gt; </td>
  *   </tr>
  *   <tr>
- *     <td> "owner" </td>
+ *     <th scope="row"> "owner" </th>
  *     <td> {@link UserPrincipal} </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/file/attribute/BasicFileAttributeView.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/attribute/BasicFileAttributeView.java	Mon Jul 17 09:14:23 2017 -0700
@@ -45,45 +45,45 @@
  *  <caption style="display:none">Supported attributes</caption>
  *  <thead>
  *   <tr>
- *     <th> Name </th>
- *     <th> Type </th>
+ *     <th scope="col"> Name </th>
+ *     <th scope="col"> Type </th>
  *   </tr>
  *  </thead>
  *  <tbody>
  *  <tr>
- *     <td> "lastModifiedTime" </td>
+ *     <th scope="row"> "lastModifiedTime" </th>
  *     <td> {@link FileTime} </td>
  *   </tr>
  *   <tr>
- *     <td> "lastAccessTime" </td>
+ *     <th scope="row"> "lastAccessTime" </th>
  *     <td> {@link FileTime} </td>
  *   </tr>
  *   <tr>
- *     <td> "creationTime" </td>
+ *     <th scope="row"> "creationTime" </th>
  *     <td> {@link FileTime} </td>
  *   </tr>
  *   <tr>
- *     <td> "size" </td>
+ *     <th scope="row"> "size" </th>
  *     <td> {@link Long} </td>
  *   </tr>
  *   <tr>
- *     <td> "isRegularFile" </td>
+ *     <th scope="row"> "isRegularFile" </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> "isDirectory" </td>
+ *     <th scope="row"> "isDirectory" </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> "isSymbolicLink" </td>
+ *     <th scope="row"> "isSymbolicLink" </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> "isOther" </td>
+ *     <th scope="row"> "isOther" </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> "fileKey" </td>
+ *     <th scope="row"> "fileKey" </th>
  *     <td> {@link Object} </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/file/attribute/DosFileAttributeView.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/attribute/DosFileAttributeView.java	Mon Jul 17 09:14:23 2017 -0700
@@ -45,25 +45,25 @@
  * <caption style="display:none">Supported attributes</caption>
  * <thead>
  *   <tr>
- *     <th> Name </th>
- *     <th> Type </th>
+ *     <th scope="col"> Name </th>
+ *     <th scope="col"> Type </th>
  *   </tr>
  * </thead>
  * <tbody>
  *   <tr>
- *     <td> readonly </td>
+ *     <th scope="row"> readonly </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> hidden </td>
+ *     <th scope="row"> hidden </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> system </td>
+ *     <th scope="row"> system </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  *   <tr>
- *     <td> archive </td>
+ *     <th scope="row"> archive </th>
  *     <td> {@link Boolean} </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/file/attribute/PosixFileAttributeView.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/attribute/PosixFileAttributeView.java	Mon Jul 17 09:14:23 2017 -0700
@@ -78,17 +78,17 @@
  * <caption style="display:none">Supported attributes</caption>
  * <thead>
  *   <tr>
- *     <th> Name </th>
- *     <th> Type </th>
+ *     <th scope="col"> Name </th>
+ *     <th scope="col"> Type </th>
  *   </tr>
  * </thead>
  * <tbody>
  *  <tr>
- *     <td> "permissions" </td>
+ *     <th scope="row"> "permissions" </th>
  *     <td> {@link Set}&lt;{@link PosixFilePermission}&gt; </td>
  *   </tr>
  *   <tr>
- *     <td> "group" </td>
+ *     <th scope="row"> "group" </th>
  *     <td> {@link GroupPrincipal} </td>
  *   </tr>
  * </tbody>
--- a/src/java.base/share/classes/java/nio/file/spi/FileSystemProvider.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/nio/file/spi/FileSystemProvider.java	Mon Jul 17 09:14:23 2017 -0700
@@ -922,21 +922,21 @@
      * <table class="striped">
      * <caption style="display:none">Access Modes</caption>
      * <thead>
-     * <tr> <th>Value</th> <th>Description</th> </tr>
+     * <tr> <th scope="col">Value</th> <th scope="col">Description</th> </tr>
      * </thead>
      * <tbody>
      * <tr>
-     *   <td> {@link AccessMode#READ READ} </td>
+     *   <th scope="row"> {@link AccessMode#READ READ} </th>
      *   <td> Checks that the file exists and that the Java virtual machine has
      *     permission to read the file. </td>
      * </tr>
      * <tr>
-     *   <td> {@link AccessMode#WRITE WRITE} </td>
+     *   <th scope="row"> {@link AccessMode#WRITE WRITE} </th>
      *   <td> Checks that the file exists and that the Java virtual machine has
      *     permission to write to the file, </td>
      * </tr>
      * <tr>
-     *   <td> {@link AccessMode#EXECUTE EXECUTE} </td>
+     *   <th scope="row"> {@link AccessMode#EXECUTE EXECUTE} </th>
      *   <td> Checks that the file exists and that the Java virtual machine has
      *     permission to {@link Runtime#exec execute} the file. The semantics
      *     may differ when checking access to a directory. For example, on UNIX
--- a/src/java.base/share/classes/java/security/SecurityPermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/security/SecurityPermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -49,15 +49,15 @@
  * <caption style="display:none">target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  * <tbody>
  *
  * <tr>
- *   <td>authProvider.{provider name}</td>
+ *   <th scope="row">authProvider.{provider name}</th>
  *   <td>Allow the named provider to be an AuthProvider for login and
  * logout operations. </td>
  *   <td>This allows the named provider to perform login and logout
@@ -68,7 +68,7 @@
  * </tr>
  *
  * <tr>
- *   <td>createAccessControlContext</td>
+ *   <th scope="row">createAccessControlContext</th>
  *   <td>Creation of an AccessControlContext</td>
  *   <td>This allows someone to instantiate an AccessControlContext
  * with a {@code DomainCombiner}.  Extreme care must be taken when
@@ -78,7 +78,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getDomainCombiner</td>
+ *   <th scope="row">getDomainCombiner</th>
  *   <td>Retrieval of an AccessControlContext's DomainCombiner</td>
  *   <td>This allows someone to retrieve an AccessControlContext's
  * {@code DomainCombiner}.  Since DomainCombiners may contain
@@ -86,7 +86,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getPolicy</td>
+ *   <th scope="row">getPolicy</th>
  *   <td>Retrieval of the system-wide security policy (specifically, of the
  * currently-installed Policy object)</td>
  *   <td>This allows someone to query the policy via the
@@ -99,7 +99,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setPolicy</td>
+ *   <th scope="row">setPolicy</th>
  *   <td>Setting of the system-wide security policy (specifically,
  * the Policy object)</td>
  *   <td>Granting this permission is extremely dangerous, as malicious
@@ -108,7 +108,7 @@
  * </tr>
  *
  * <tr>
- *   <td>createPolicy.{policy type}</td>
+ *   <th scope="row">createPolicy.{policy type}</th>
  *   <td>Getting an instance of a Policy implementation from a provider</td>
  *   <td>Granting this permission enables code to obtain a Policy object.
  * Malicious code may query the Policy object to determine what permissions
@@ -116,7 +116,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getProperty.{key}</td>
+ *   <th scope="row">getProperty.{key}</th>
  *   <td>Retrieval of the security property with the specified key</td>
  *   <td>Depending on the particular key for which access has
  * been granted, the code may have access to the list of security
@@ -129,7 +129,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setProperty.{key}</td>
+ *   <th scope="row">setProperty.{key}</th>
  *   <td>Setting of the security property with the specified key</td>
  *   <td>This could include setting a security provider or defining
  * the location of the system-wide security policy.  Malicious
@@ -144,7 +144,7 @@
  * </tr>
  *
  * <tr>
- *   <td>insertProvider</td>
+ *   <th scope="row">insertProvider</th>
  *   <td>Addition of a new provider</td>
  *   <td>This would allow somebody to introduce a possibly
  * malicious provider (e.g., one that discloses the private keys passed
@@ -158,7 +158,7 @@
  * </tr>
  *
  * <tr>
- *   <td>removeProvider.{provider name}</td>
+ *   <th scope="row">removeProvider.{provider name}</th>
  *   <td>Removal of the specified provider</td>
  *   <td>This may change the behavior or disable execution of other
  * parts of the program. If a provider subsequently requested by the
@@ -171,7 +171,7 @@
  * </tr>
  *
  * <tr>
- *   <td>clearProviderProperties.{provider name}</td>
+ *   <th scope="row">clearProviderProperties.{provider name}</th>
  *   <td>"Clearing" of a Provider so that it no longer contains the properties
  * used to look up services implemented by the provider</td>
  *   <td>This disables the lookup of services implemented by the provider.
@@ -181,7 +181,7 @@
  * </tr>
  *
  * <tr>
- *   <td>putProviderProperty.{provider name}</td>
+ *   <th scope="row">putProviderProperty.{provider name}</th>
  *   <td>Setting of properties for the specified Provider</td>
  *   <td>The provider properties each specify the name and location
  * of a particular service implemented by the provider. By granting
@@ -190,7 +190,7 @@
  * </tr>
  *
  * <tr>
- *   <td>removeProviderProperty.{provider name}</td>
+ *   <th scope="row">removeProviderProperty.{provider name}</th>
  *   <td>Removal of properties from the specified Provider</td>
  *   <td>This disables the lookup of services implemented by the
  * provider. They are no longer accessible due to removal of the properties
@@ -213,15 +213,15 @@
  * <caption style="display:none">target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  *
  * <tbody>
  * <tr>
- *   <td>insertProvider.{provider name}</td>
+ *   <th scope="row">insertProvider.{provider name}</th>
  *   <td>Addition of a new provider, with the specified name</td>
  *   <td>Use of this permission is discouraged from further use because it is
  * possible to circumvent the name restrictions by overriding the
@@ -238,7 +238,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setSystemScope</td>
+ *   <th scope="row">setSystemScope</th>
  *   <td>Setting of the system identity scope</td>
  *   <td>This would allow an attacker to configure the system identity scope with
  * certificates that should not be trusted, thereby granting applet or
@@ -247,7 +247,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setIdentityPublicKey</td>
+ *   <th scope="row">setIdentityPublicKey</th>
  *   <td>Setting of the public key for an Identity</td>
  *   <td>If the identity is marked as "trusted", this allows an attacker to
  * introduce a different public key (e.g., its own) that is not trusted
@@ -257,7 +257,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setIdentityInfo</td>
+ *   <th scope="row">setIdentityInfo</th>
  *   <td>Setting of a general information string for an Identity</td>
  *   <td>This allows attackers to set the general description for
  * an identity.  This may trick applications into using a different
@@ -266,7 +266,7 @@
  * </tr>
  *
  * <tr>
- *   <td>addIdentityCertificate</td>
+ *   <th scope="row">addIdentityCertificate</th>
  *   <td>Addition of a certificate for an Identity</td>
  *   <td>This allows attackers to set a certificate for
  * an identity's public key.  This is dangerous because it affects
@@ -275,7 +275,7 @@
  * </tr>
  *
  * <tr>
- *   <td>removeIdentityCertificate</td>
+ *   <th scope="row">removeIdentityCertificate</th>
  *   <td>Removal of a certificate for an Identity</td>
  *   <td>This allows attackers to remove a certificate for
  * an identity's public key. This is dangerous because it affects
@@ -284,7 +284,7 @@
  * </tr>
  *
  * <tr>
- *  <td>printIdentity</td>
+ *  <th scope="row">printIdentity</th>
  *  <td>Viewing the name of a principal
  * and optionally the scope in which it is used, and whether
  * or not it is considered "trusted" in that scope</td>
@@ -296,7 +296,7 @@
  *</tr>
  *
  * <tr>
- *   <td>getSignerPrivateKey</td>
+ *   <th scope="row">getSignerPrivateKey</th>
  *   <td>Retrieval of a Signer's private key</td>
  *   <td>It is very dangerous to allow access to a private key; private
  * keys are supposed to be kept secret. Otherwise, code can use the
@@ -305,7 +305,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setSignerKeyPair</td>
+ *   <th scope="row">setSignerKeyPair</th>
  *   <td>Setting of the key pair (public key and private key) for a Signer</td>
  *   <td>This would allow an attacker to replace somebody else's (the "target's")
  * keypair with a possibly weaker keypair (e.g., a keypair of a smaller
--- a/src/java.base/share/classes/java/text/DecimalFormat.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/text/DecimalFormat.java	Mon Jul 17 09:14:23 2017 -0700
@@ -176,60 +176,60 @@
  * <caption style="display:none">Chart showing symbol, location, localized, and meaning.</caption>
  * <thead>
  *     <tr>
- *          <th style="text-align:left">Symbol
- *          <th style="text-align:left">Location
- *          <th style="text-align:left">Localized?
- *          <th style="text-align:left">Meaning
+ *          <th scope="col" style="text-align:left">Symbol
+ *          <th scope="col" style="text-align:left">Location
+ *          <th scope="col" style="text-align:left">Localized?
+ *          <th scope="col" style="text-align:left">Meaning
  * </thead>
  * <tbody>
  *     <tr style="vertical-align:top">
- *          <td><code>0</code>
+ *          <th scope="row"><code>0</code>
  *          <td>Number
  *          <td>Yes
  *          <td>Digit
  *     <tr style="vertical-align: top">
- *          <td><code>#</code>
+ *          <th scope="row"><code>#</code>
  *          <td>Number
  *          <td>Yes
  *          <td>Digit, zero shows as absent
  *     <tr style="vertical-align:top">
- *          <td><code>.</code>
+ *          <th scope="row"><code>.</code>
  *          <td>Number
  *          <td>Yes
  *          <td>Decimal separator or monetary decimal separator
  *     <tr style="vertical-align: top">
- *          <td><code>-</code>
+ *          <th scope="row"><code>-</code>
  *          <td>Number
  *          <td>Yes
  *          <td>Minus sign
  *     <tr style="vertical-align:top">
- *          <td><code>,</code>
+ *          <th scope="row"><code>,</code>
  *          <td>Number
  *          <td>Yes
  *          <td>Grouping separator
  *     <tr style="vertical-align: top">
- *          <td><code>E</code>
+ *          <th scope="row"><code>E</code>
  *          <td>Number
  *          <td>Yes
  *          <td>Separates mantissa and exponent in scientific notation.
  *              <em>Need not be quoted in prefix or suffix.</em>
  *     <tr style="vertical-align:top">
- *          <td><code>;</code>
+ *          <th scope="row"><code>;</code>
  *          <td>Subpattern boundary
  *          <td>Yes
  *          <td>Separates positive and negative subpatterns
  *     <tr style="vertical-align: top">
- *          <td><code>%</code>
+ *          <th scope="row"><code>%</code>
  *          <td>Prefix or suffix
  *          <td>Yes
  *          <td>Multiply by 100 and show as percentage
  *     <tr style="vertical-align:top">
- *          <td><code>&#92;u2030</code>
+ *          <th scope="row"><code>&#92;u2030</code>
  *          <td>Prefix or suffix
  *          <td>Yes
  *          <td>Multiply by 1000 and show as per mille value
  *     <tr style="vertical-align: top">
- *          <td><code>&#164;</code> (<code>&#92;u00A4</code>)
+ *          <th scope="row"><code>&#164;</code> (<code>&#92;u00A4</code>)
  *          <td>Prefix or suffix
  *          <td>No
  *          <td>Currency sign, replaced by currency symbol.  If
@@ -237,7 +237,7 @@
  *              If present in a pattern, the monetary decimal separator
  *              is used instead of the decimal separator.
  *     <tr style="vertical-align:top">
- *          <td><code>'</code>
+ *          <th scope="row"><code>'</code>
  *          <td>Prefix or suffix
  *          <td>No
  *          <td>Used to quote special characters in a prefix or suffix,
--- a/src/java.base/share/classes/java/text/SimpleDateFormat.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/text/SimpleDateFormat.java	Mon Jul 17 09:14:23 2017 -0700
@@ -96,124 +96,124 @@
  * <caption style="display:none">Chart shows pattern letters, date/time component, presentation, and examples.</caption>
  * <thead>
  *     <tr>
- *         <th style="text-align:left">Letter
- *         <th style="text-align:left">Date or Time Component
- *         <th style="text-align:left">Presentation
- *         <th style="text-align:left">Examples
+ *         <th scope="col" style="text-align:left">Letter
+ *         <th scope="col" style="text-align:left">Date or Time Component
+ *         <th scope="col" style="text-align:left">Presentation
+ *         <th scope="col" style="text-align:left">Examples
  * </thead>
  * <tbody>
  *     <tr>
- *         <td><code>G</code>
+ *         <th scope="row"><code>G</code>
  *         <td>Era designator
  *         <td><a href="#text">Text</a>
  *         <td><code>AD</code>
  *     <tr>
- *         <td><code>y</code>
+ *         <th scope="row"><code>y</code>
  *         <td>Year
  *         <td><a href="#year">Year</a>
  *         <td><code>1996</code>; <code>96</code>
  *     <tr>
- *         <td><code>Y</code>
+ *         <th scope="row"><code>Y</code>
  *         <td>Week year
  *         <td><a href="#year">Year</a>
  *         <td><code>2009</code>; <code>09</code>
  *     <tr>
- *         <td><code>M</code>
+ *         <th scope="row"><code>M</code>
  *         <td>Month in year (context sensitive)
  *         <td><a href="#month">Month</a>
  *         <td><code>July</code>; <code>Jul</code>; <code>07</code>
  *     <tr>
- *         <td><code>L</code>
+ *         <th scope="row"><code>L</code>
  *         <td>Month in year (standalone form)
  *         <td><a href="#month">Month</a>
  *         <td><code>July</code>; <code>Jul</code>; <code>07</code>
  *     <tr>
- *         <td><code>w</code>
+ *         <th scope="row"><code>w</code>
  *         <td>Week in year
  *         <td><a href="#number">Number</a>
  *         <td><code>27</code>
  *     <tr>
- *         <td><code>W</code>
+ *         <th scope="row"><code>W</code>
  *         <td>Week in month
  *         <td><a href="#number">Number</a>
  *         <td><code>2</code>
  *     <tr>
- *         <td><code>D</code>
+ *         <th scope="row"><code>D</code>
  *         <td>Day in year
  *         <td><a href="#number">Number</a>
  *         <td><code>189</code>
  *     <tr>
- *         <td><code>d</code>
+ *         <th scope="row"><code>d</code>
  *         <td>Day in month
  *         <td><a href="#number">Number</a>
  *         <td><code>10</code>
  *     <tr>
- *         <td><code>F</code>
+ *         <th scope="row"><code>F</code>
  *         <td>Day of week in month
  *         <td><a href="#number">Number</a>
  *         <td><code>2</code>
  *     <tr>
- *         <td><code>E</code>
+ *         <th scope="row"><code>E</code>
  *         <td>Day name in week
  *         <td><a href="#text">Text</a>
  *         <td><code>Tuesday</code>; <code>Tue</code>
  *     <tr>
- *         <td><code>u</code>
+ *         <th scope="row"><code>u</code>
  *         <td>Day number of week (1 = Monday, ..., 7 = Sunday)
  *         <td><a href="#number">Number</a>
  *         <td><code>1</code>
  *     <tr>
- *         <td><code>a</code>
+ *         <th scope="row"><code>a</code>
  *         <td>Am/pm marker
  *         <td><a href="#text">Text</a>
  *         <td><code>PM</code>
  *     <tr>
- *         <td><code>H</code>
+ *         <th scope="row"><code>H</code>
  *         <td>Hour in day (0-23)
  *         <td><a href="#number">Number</a>
  *         <td><code>0</code>
  *     <tr>
- *         <td><code>k</code>
+ *         <th scope="row"><code>k</code>
  *         <td>Hour in day (1-24)
  *         <td><a href="#number">Number</a>
  *         <td><code>24</code>
  *     <tr>
- *         <td><code>K</code>
+ *         <th scope="row"><code>K</code>
  *         <td>Hour in am/pm (0-11)
  *         <td><a href="#number">Number</a>
  *         <td><code>0</code>
  *     <tr>
- *         <td><code>h</code>
+ *         <th scope="row"><code>h</code>
  *         <td>Hour in am/pm (1-12)
  *         <td><a href="#number">Number</a>
  *         <td><code>12</code>
  *     <tr>
- *         <td><code>m</code>
+ *         <th scope="row"><code>m</code>
  *         <td>Minute in hour
  *         <td><a href="#number">Number</a>
  *         <td><code>30</code>
  *     <tr>
- *         <td><code>s</code>
+ *         <th scope="row"><code>s</code>
  *         <td>Second in minute
  *         <td><a href="#number">Number</a>
  *         <td><code>55</code>
  *     <tr>
- *         <td><code>S</code>
+ *         <th scope="row"><code>S</code>
  *         <td>Millisecond
  *         <td><a href="#number">Number</a>
  *         <td><code>978</code>
  *     <tr>
- *         <td><code>z</code>
+ *         <th scope="row"><code>z</code>
  *         <td>Time zone
  *         <td><a href="#timezone">General time zone</a>
  *         <td><code>Pacific Standard Time</code>; <code>PST</code>; <code>GMT-08:00</code>
  *     <tr>
- *         <td><code>Z</code>
+ *         <th scope="row"><code>Z</code>
  *         <td>Time zone
  *         <td><a href="#rfc822timezone">RFC 822 time zone</a>
  *         <td><code>-0800</code>
  *     <tr>
- *         <td><code>X</code>
+ *         <th scope="row"><code>X</code>
  *         <td>Time zone
  *         <td><a href="#iso8601timezone">ISO 8601 time zone</a>
  *         <td><code>-08</code>; <code>-0800</code>;  <code>-08:00</code>
@@ -379,42 +379,42 @@
  * <caption style="display:none">Examples of date and time patterns interpreted in the U.S. locale</caption>
  * <thead>
  *     <tr>
- *         <th style="text-align:left">Date and Time Pattern
- *         <th style="text-align:left">Result
+ *         <th scope="col" style="text-align:left">Date and Time Pattern
+ *         <th scope="col" style="text-align:left">Result
  * </thead>
  * <tbody>
  *     <tr>
- *         <td><code>"yyyy.MM.dd G 'at' HH:mm:ss z"</code>
+ *         <th scope="row"><code>"yyyy.MM.dd G 'at' HH:mm:ss z"</code>
  *         <td><code>2001.07.04 AD at 12:08:56 PDT</code>
  *     <tr>
- *         <td><code>"EEE, MMM d, ''yy"</code>
+ *         <th scope="row"><code>"EEE, MMM d, ''yy"</code>
  *         <td><code>Wed, Jul 4, '01</code>
  *     <tr>
- *         <td><code>"h:mm a"</code>
+ *         <th scope="row"><code>"h:mm a"</code>
  *         <td><code>12:08 PM</code>
  *     <tr>
- *         <td><code>"hh 'o''clock' a, zzzz"</code>
+ *         <th scope="row"><code>"hh 'o''clock' a, zzzz"</code>
  *         <td><code>12 o'clock PM, Pacific Daylight Time</code>
  *     <tr>
- *         <td><code>"K:mm a, z"</code>
+ *         <th scope="row"><code>"K:mm a, z"</code>
  *         <td><code>0:08 PM, PDT</code>
  *     <tr>
- *         <td><code>"yyyyy.MMMMM.dd GGG hh:mm aaa"</code>
+ *         <th scope="row"><code>"yyyyy.MMMMM.dd GGG hh:mm aaa"</code>
  *         <td><code>02001.July.04 AD 12:08 PM</code>
  *     <tr>
- *         <td><code>"EEE, d MMM yyyy HH:mm:ss Z"</code>
+ *         <th scope="row"><code>"EEE, d MMM yyyy HH:mm:ss Z"</code>
  *         <td><code>Wed, 4 Jul 2001 12:08:56 -0700</code>
  *     <tr>
- *         <td><code>"yyMMddHHmmssZ"</code>
+ *         <th scope="row"><code>"yyMMddHHmmssZ"</code>
  *         <td><code>010704120856-0700</code>
  *     <tr>
- *         <td><code>"yyyy-MM-dd'T'HH:mm:ss.SSSZ"</code>
+ *         <th scope="row"><code>"yyyy-MM-dd'T'HH:mm:ss.SSSZ"</code>
  *         <td><code>2001-07-04T12:08:56.235-0700</code>
  *     <tr>
- *         <td><code>"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"</code>
+ *         <th scope="row"><code>"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"</code>
  *         <td><code>2001-07-04T12:08:56.235-07:00</code>
  *     <tr>
- *         <td><code>"YYYY-'W'ww-u"</code>
+ *         <th scope="row"><code>"YYYY-'W'ww-u"</code>
  *         <td><code>2001-W27-3</code>
  * </tbody>
  * </table>
--- a/src/java.base/share/classes/java/time/OffsetDateTime.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/time/OffsetDateTime.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -100,7 +100,7 @@
  * {@code OffsetDateTime} is an immutable representation of a date-time with an offset.
  * This class stores all date and time fields, to a precision of nanoseconds,
  * as well as the offset from UTC/Greenwich. For example, the value
- * "2nd October 2007 at 13:45.30.123456789 +02:00" can be stored in an {@code OffsetDateTime}.
+ * "2nd October 2007 at 13:45:30.123456789 +02:00" can be stored in an {@code OffsetDateTime}.
  * <p>
  * {@code OffsetDateTime}, {@link java.time.ZonedDateTime} and {@link java.time.Instant} all store an instant
  * on the time-line to nanosecond precision.
--- a/src/java.base/share/classes/java/time/OffsetTime.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/time/OffsetTime.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -100,7 +100,7 @@
  * viewed as hour-minute-second-offset.
  * This class stores all time fields, to a precision of nanoseconds,
  * as well as a zone offset.
- * For example, the value "13:45.30.123456789+02:00" can be stored
+ * For example, the value "13:45:30.123456789+02:00" can be stored
  * in an {@code OffsetTime}.
  *
  * <p>
--- a/src/java.base/share/classes/java/time/format/DateTimeFormatter.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/time/format/DateTimeFormatter.java	Mon Jul 17 09:14:23 2017 -0700
@@ -154,103 +154,103 @@
  * <caption>Predefined Formatters</caption>
  * <thead>
  * <tr>
- * <th style="text-align:left">Formatter</th>
- * <th style="text-align:left">Description</th>
- * <th style="text-align:left">Example</th>
+ * <th scope="col" style="text-align:left">Formatter</th>
+ * <th scope="col" style="text-align:left">Description</th>
+ * <th scope="col" style="text-align:left">Example</th>
  * </tr>
  * </thead>
  * <tbody>
  * <tr>
- * <td>{@link #ofLocalizedDate ofLocalizedDate(dateStyle)} </td>
+ * <th scope="row">{@link #ofLocalizedDate ofLocalizedDate(dateStyle)} </th>
  * <td> Formatter with date style from the locale </td>
  * <td> '2011-12-03'</td>
  * </tr>
  * <tr>
- * <td> {@link #ofLocalizedTime ofLocalizedTime(timeStyle)} </td>
+ * <th scope="row"> {@link #ofLocalizedTime ofLocalizedTime(timeStyle)} </th>
  * <td> Formatter with time style from the locale </td>
  * <td> '10:15:30'</td>
  * </tr>
  * <tr>
- * <td> {@link #ofLocalizedDateTime ofLocalizedDateTime(dateTimeStyle)} </td>
+ * <th scope="row"> {@link #ofLocalizedDateTime ofLocalizedDateTime(dateTimeStyle)} </th>
  * <td> Formatter with a style for date and time from the locale</td>
  * <td> '3 Jun 2008 11:05:30'</td>
  * </tr>
  * <tr>
- * <td> {@link #ofLocalizedDateTime ofLocalizedDateTime(dateStyle,timeStyle)}
- * </td>
+ * <th scope="row"> {@link #ofLocalizedDateTime ofLocalizedDateTime(dateStyle,timeStyle)}
+ * </th>
  * <td> Formatter with date and time styles from the locale </td>
  * <td> '3 Jun 2008 11:05'</td>
  * </tr>
  * <tr>
- * <td> {@link #BASIC_ISO_DATE}</td>
+ * <th scope="row"> {@link #BASIC_ISO_DATE}</th>
  * <td>Basic ISO date </td> <td>'20111203'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_LOCAL_DATE}</td>
+ * <th scope="row"> {@link #ISO_LOCAL_DATE}</th>
  * <td> ISO Local Date </td>
  * <td>'2011-12-03'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_OFFSET_DATE}</td>
+ * <th scope="row"> {@link #ISO_OFFSET_DATE}</th>
  * <td> ISO Date with offset </td>
  * <td>'2011-12-03+01:00'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_DATE}</td>
+ * <th scope="row"> {@link #ISO_DATE}</th>
  * <td> ISO Date with or without offset </td>
  * <td> '2011-12-03+01:00'; '2011-12-03'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_LOCAL_TIME}</td>
+ * <th scope="row"> {@link #ISO_LOCAL_TIME}</th>
  * <td> Time without offset </td>
  * <td>'10:15:30'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_OFFSET_TIME}</td>
+ * <th scope="row"> {@link #ISO_OFFSET_TIME}</th>
  * <td> Time with offset </td>
  * <td>'10:15:30+01:00'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_TIME}</td>
+ * <th scope="row"> {@link #ISO_TIME}</th>
  * <td> Time with or without offset </td>
  * <td>'10:15:30+01:00'; '10:15:30'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_LOCAL_DATE_TIME}</td>
+ * <th scope="row"> {@link #ISO_LOCAL_DATE_TIME}</th>
  * <td> ISO Local Date and Time </td>
  * <td>'2011-12-03T10:15:30'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_OFFSET_DATE_TIME}</td>
+ * <th scope="row"> {@link #ISO_OFFSET_DATE_TIME}</th>
  * <td> Date Time with Offset
  * </td><td>2011-12-03T10:15:30+01:00'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_ZONED_DATE_TIME}</td>
+ * <th scope="row"> {@link #ISO_ZONED_DATE_TIME}</th>
  * <td> Zoned Date Time </td>
  * <td>'2011-12-03T10:15:30+01:00[Europe/Paris]'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_DATE_TIME}</td>
+ * <th scope="row"> {@link #ISO_DATE_TIME}</th>
  * <td> Date and time with ZoneId </td>
  * <td>'2011-12-03T10:15:30+01:00[Europe/Paris]'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_ORDINAL_DATE}</td>
+ * <th scope="row"> {@link #ISO_ORDINAL_DATE}</th>
  * <td> Year and day of year </td>
  * <td>'2012-337'</td>
  * </tr>
  * <tr>
- * <td> {@link #ISO_WEEK_DATE}</td>
+ * <th scope="row"> {@link #ISO_WEEK_DATE}</th>
  * <td> Year and Week </td>
  * <td>2012-W48-6'</td></tr>
  * <tr>
- * <td> {@link #ISO_INSTANT}</td>
+ * <th scope="row"> {@link #ISO_INSTANT}</th>
  * <td> Date and Time of an Instant </td>
  * <td>'2011-12-03T10:15:30Z' </td>
  * </tr>
  * <tr>
- * <td> {@link #RFC_1123_DATE_TIME}</td>
+ * <th scope="row"> {@link #RFC_1123_DATE_TIME}</th>
  * <td> RFC 1123 / RFC 822 </td>
  * <td>'Tue, 3 Jun 2008 11:05:30 GMT'</td>
  * </tr>
--- a/src/java.base/share/classes/java/util/Formatter.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/util/Formatter.java	Mon Jul 17 09:14:23 2017 -0700
@@ -293,12 +293,12 @@
  * <table class="striped">
  * <caption style="display:none">genConv</caption>
  * <thead>
- * <tr><th style="vertical-align:bottom"> Conversion
- *     <th style="vertical-align:bottom"> Argument Category
- *     <th style="vertical-align:bottom"> Description
+ * <tr><th scope="col" style="vertical-align:bottom"> Conversion
+ *     <th scope="col" style="vertical-align:bottom"> Argument Category
+ *     <th scope="col" style="vertical-align:bottom"> Description
  * </thead>
  * <tbody>
- * <tr><td style="vertical-align:top"> {@code 'b'}, {@code 'B'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'b'}, {@code 'B'}
  *     <td style="vertical-align:top"> general
  *     <td> If the argument <i>arg</i> is {@code null}, then the result is
  *     "{@code false}".  If <i>arg</i> is a {@code boolean} or {@link
@@ -306,64 +306,64 @@
  *     String#valueOf(boolean) String.valueOf(arg)}.  Otherwise, the result is
  *     "true".
  *
- * <tr><td style="vertical-align:top"> {@code 'h'}, {@code 'H'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'h'}, {@code 'H'}
  *     <td style="vertical-align:top"> general
  *     <td> The result is obtained by invoking
  *     {@code Integer.toHexString(arg.hashCode())}.
  *
- * <tr><td style="vertical-align:top"> {@code 's'}, {@code 'S'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 's'}, {@code 'S'}
  *     <td style="vertical-align:top"> general
  *     <td> If <i>arg</i> implements {@link Formattable}, then
  *     {@link Formattable#formatTo arg.formatTo} is invoked. Otherwise, the
  *     result is obtained by invoking {@code arg.toString()}.
  *
- * <tr><td style="vertical-align:top">{@code 'c'}, {@code 'C'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'c'}, {@code 'C'}
  *     <td style="vertical-align:top"> character
  *     <td> The result is a Unicode character
  *
- * <tr><td style="vertical-align:top">{@code 'd'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'd'}
  *     <td style="vertical-align:top"> integral
  *     <td> The result is formatted as a decimal integer
  *
- * <tr><td style="vertical-align:top">{@code 'o'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'o'}
  *     <td style="vertical-align:top"> integral
  *     <td> The result is formatted as an octal integer
  *
- * <tr><td style="vertical-align:top">{@code 'x'}, {@code 'X'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'x'}, {@code 'X'}
  *     <td style="vertical-align:top"> integral
  *     <td> The result is formatted as a hexadecimal integer
  *
- * <tr><td style="vertical-align:top">{@code 'e'}, {@code 'E'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'e'}, {@code 'E'}
  *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted as a decimal number in computerized
  *     scientific notation
  *
- * <tr><td style="vertical-align:top">{@code 'f'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'f'}
  *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted as a decimal number
  *
- * <tr><td style="vertical-align:top">{@code 'g'}, {@code 'G'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'g'}, {@code 'G'}
  *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted using computerized scientific notation or
  *     decimal format, depending on the precision and the value after rounding.
  *
- * <tr><td style="vertical-align:top">{@code 'a'}, {@code 'A'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'a'}, {@code 'A'}
  *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted as a hexadecimal floating-point number with
  *     a significand and an exponent. This conversion is <b>not</b> supported
  *     for the {@code BigDecimal} type despite the latter's being in the
  *     <i>floating point</i> argument category.
  *
- * <tr><td style="vertical-align:top">{@code 't'}, {@code 'T'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 't'}, {@code 'T'}
  *     <td style="vertical-align:top"> date/time
  *     <td> Prefix for date and time conversion characters.  See <a
  *     href="#dt">Date/Time Conversions</a>.
  *
- * <tr><td style="vertical-align:top">{@code '%'}
+ * <tr><th scope="row" style="vertical-align:top">{@code '%'}
  *     <td style="vertical-align:top"> percent
  *     <td> The result is a literal {@code '%'} (<code>'&#92;u0025'</code>)
  *
- * <tr><td style="vertical-align:top">{@code 'n'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'n'}
  *     <td style="vertical-align:top"> line separator
  *     <td> The result is the platform-specific line separator
  *
@@ -387,44 +387,44 @@
  * <table class="striped">
  * <caption style="display:none">time</caption>
  * <tbody>
- * <tr><td style="vertical-align:top"> {@code 'H'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'H'}
  *     <td> Hour of the day for the 24-hour clock, formatted as two digits with
  *     a leading zero as necessary i.e. {@code 00 - 23}.
  *
- * <tr><td style="vertical-align:top">{@code 'I'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'I'}
  *     <td> Hour for the 12-hour clock, formatted as two digits with a leading
  *     zero as necessary, i.e.  {@code 01 - 12}.
  *
- * <tr><td style="vertical-align:top">{@code 'k'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'k'}
  *     <td> Hour of the day for the 24-hour clock, i.e. {@code 0 - 23}.
  *
- * <tr><td style="vertical-align:top">{@code 'l'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'l'}
  *     <td> Hour for the 12-hour clock, i.e. {@code 1 - 12}.
  *
- * <tr><td style="vertical-align:top">{@code 'M'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'M'}
  *     <td> Minute within the hour formatted as two digits with a leading zero
  *     as necessary, i.e.  {@code 00 - 59}.
  *
- * <tr><td style="vertical-align:top">{@code 'S'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'S'}
  *     <td> Seconds within the minute, formatted as two digits with a leading
  *     zero as necessary, i.e. {@code 00 - 60} ("{@code 60}" is a special
  *     value required to support leap seconds).
  *
- * <tr><td style="vertical-align:top">{@code 'L'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'L'}
  *     <td> Millisecond within the second formatted as three digits with
  *     leading zeros as necessary, i.e. {@code 000 - 999}.
  *
- * <tr><td style="vertical-align:top">{@code 'N'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'N'}
  *     <td> Nanosecond within the second, formatted as nine digits with leading
  *     zeros as necessary, i.e. {@code 000000000 - 999999999}.
  *
- * <tr><td style="vertical-align:top">{@code 'p'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'p'}
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getAmPmStrings morning or afternoon} marker
  *     in lower case, e.g."{@code am}" or "{@code pm}". Use of the conversion
  *     prefix {@code 'T'} forces this output to upper case.
  *
- * <tr><td style="vertical-align:top">{@code 'z'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'z'}
  *     <td> <a href="http://www.ietf.org/rfc/rfc0822.txt">RFC&nbsp;822</a>
  *     style numeric time zone offset from GMT, e.g. {@code -0800}.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
@@ -432,7 +432,7 @@
  *     the {@linkplain TimeZone#getDefault() default time zone} for this
  *     instance of the Java virtual machine.
  *
- * <tr><td style="vertical-align:top">{@code 'Z'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'Z'}
  *     <td> A string representing the abbreviation for the time zone.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
  *     {@code long}, {@link Long}, and {@link Date} the  time zone used is
@@ -440,12 +440,12 @@
  *     instance of the Java virtual machine.  The Formatter's locale will
  *     supersede the locale of the argument (if any).
  *
- * <tr><td style="vertical-align:top">{@code 's'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 's'}
  *     <td> Seconds since the beginning of the epoch starting at 1 January 1970
  *     {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE/1000} to
  *     {@code Long.MAX_VALUE/1000}.
  *
- * <tr><td style="vertical-align:top">{@code 'Q'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'Q'}
  *     <td> Milliseconds since the beginning of the epoch starting at 1 January
  *     1970 {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE} to
  *     {@code Long.MAX_VALUE}.
@@ -459,54 +459,54 @@
  * <caption style="display:none">date</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top">{@code 'B'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'B'}
  *     <td> Locale-specific {@linkplain java.text.DateFormatSymbols#getMonths
  *     full month name}, e.g. {@code "January"}, {@code "February"}.
  *
- * <tr><td style="vertical-align:top">{@code 'b'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'b'}
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getShortMonths abbreviated month name},
  *     e.g. {@code "Jan"}, {@code "Feb"}.
  *
- * <tr><td style="vertical-align:top">{@code 'h'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'h'}
  *     <td> Same as {@code 'b'}.
  *
- * <tr><td style="vertical-align:top">{@code 'A'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'A'}
  *     <td> Locale-specific full name of the {@linkplain
  *     java.text.DateFormatSymbols#getWeekdays day of the week},
  *     e.g. {@code "Sunday"}, {@code "Monday"}
  *
- * <tr><td style="vertical-align:top">{@code 'a'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'a'}
  *     <td> Locale-specific short name of the {@linkplain
  *     java.text.DateFormatSymbols#getShortWeekdays day of the week},
  *     e.g. {@code "Sun"}, {@code "Mon"}
  *
- * <tr><td style="vertical-align:top">{@code 'C'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'C'}
  *     <td> Four-digit year divided by {@code 100}, formatted as two digits
  *     with leading zero as necessary, i.e. {@code 00 - 99}
  *
- * <tr><td style="vertical-align:top">{@code 'Y'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'Y'}
  *     <td> Year, formatted as at least four digits with leading zeros as
  *     necessary, e.g. {@code 0092} equals {@code 92} CE for the Gregorian
  *     calendar.
  *
- * <tr><td style="vertical-align:top">{@code 'y'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'y'}
  *     <td> Last two digits of the year, formatted with leading zeros as
  *     necessary, i.e. {@code 00 - 99}.
  *
- * <tr><td style="vertical-align:top">{@code 'j'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'j'}
  *     <td> Day of year, formatted as three digits with leading zeros as
  *     necessary, e.g. {@code 001 - 366} for the Gregorian calendar.
  *
- * <tr><td style="vertical-align:top">{@code 'm'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'm'}
  *     <td> Month, formatted as two digits with leading zeros as necessary,
  *     i.e. {@code 01 - 13}.
  *
- * <tr><td style="vertical-align:top">{@code 'd'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'd'}
  *     <td> Day of month, formatted as two digits with leading zeros as
  *     necessary, i.e. {@code 01 - 31}
  *
- * <tr><td style="vertical-align:top">{@code 'e'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'e'}
  *     <td> Day of month, formatted as two digits, i.e. {@code 1 - 31}.
  *
  * </tbody>
@@ -519,25 +519,25 @@
  * <caption style="display:none">composites</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top">{@code 'R'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'R'}
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM"}
  *
- * <tr><td style="vertical-align:top">{@code 'T'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'T'}
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM:%tS"}.
  *
- * <tr><td style="vertical-align:top">{@code 'r'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'r'}
  *     <td> Time formatted for the 12-hour clock as {@code "%tI:%tM:%tS %Tp"}.
  *     The location of the morning or afternoon marker ({@code '%Tp'}) may be
  *     locale-dependent.
  *
- * <tr><td style="vertical-align:top">{@code 'D'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'D'}
  *     <td> Date formatted as {@code "%tm/%td/%ty"}.
  *
- * <tr><td style="vertical-align:top">{@code 'F'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'F'}
  *     <td> <a href="http://www.w3.org/TR/NOTE-datetime">ISO&nbsp;8601</a>
  *     complete date formatted as {@code "%tY-%tm-%td"}.
  *
- * <tr><td style="vertical-align:top">{@code 'c'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'c'}
  *     <td> Date and time formatted as {@code "%ta %tb %td %tT %tZ %tY"},
  *     e.g. {@code "Sun Jul 20 16:17:00 EDT 1969"}.
  *
@@ -555,49 +555,49 @@
  * <table class="striped">
  * <caption style="display:none">genConv</caption>
  * <thead>
- * <tr><th style="vertical-align:bottom"> Flag <th style="vertical-align:bottom"> General
- *     <th style="vertical-align:bottom"> Character <th style="vertical-align:bottom"> Integral
- *     <th style="vertical-align:bottom"> Floating Point
- *     <th style="vertical-align:bottom"> Date/Time
- *     <th style="vertical-align:bottom"> Description
+ * <tr><th scope="col" style="vertical-align:bottom"> Flag <th scope="col" style="vertical-align:bottom"> General
+ *     <th scope="col" style="vertical-align:bottom"> Character <th scope="col" style="vertical-align:bottom"> Integral
+ *     <th scope="col" style="vertical-align:bottom"> Floating Point
+ *     <th scope="col" style="vertical-align:bottom"> Date/Time
+ *     <th scope="col" style="vertical-align:bottom"> Description
  * </thead>
  * <tbody>
- * <tr><td> '-' <td style="text-align:center; vertical-align:top"> y
+ * <tr><th scope="row"> '-' <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td> The result will be left-justified.
  *
- * <tr><td> '#' <td style="text-align:center; vertical-align:top"> y<sup>1</sup>
+ * <tr><th scope="row"> '#' <td style="text-align:center; vertical-align:top"> y<sup>1</sup>
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> y<sup>3</sup>
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result should use a conversion-dependent alternate form
  *
- * <tr><td> '+' <td style="text-align:center; vertical-align:top"> -
+ * <tr><th scope="row"> '+' <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> y<sup>4</sup>
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will always include a sign
  *
- * <tr><td> '&nbsp;&nbsp;' <td style="text-align:center; vertical-align:top"> -
+ * <tr><th scope="row"> '&nbsp;&nbsp;' <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> y<sup>4</sup>
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will include a leading space for positive values
  *
- * <tr><td> '0' <td style="text-align:center; vertical-align:top"> -
+ * <tr><th scope="row"> '0' <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> y
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will be zero-padded
  *
- * <tr><td> ',' <td style="text-align:center; vertical-align:top"> -
+ * <tr><th scope="row"> ',' <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> y<sup>2</sup>
  *     <td style="text-align:center; vertical-align:top"> y<sup>5</sup>
@@ -605,7 +605,7 @@
  *     <td> The result will include locale-specific {@linkplain
  *     java.text.DecimalFormatSymbols#getGroupingSeparator grouping separators}
  *
- * <tr><td> '(' <td style="text-align:center; vertical-align:top"> -
+ * <tr><th scope="row"> '(' <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> -
  *     <td style="text-align:center; vertical-align:top"> y<sup>4</sup>
  *     <td style="text-align:center; vertical-align:top"> y<sup>5</sup>
@@ -723,7 +723,7 @@
  * <caption style="display:none">dgConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'b'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'b'}
  *     <td style="vertical-align:top"> <code>'&#92;u0062'</code>
  *     <td> Produces either "{@code true}" or "{@code false}" as returned by
  *     {@link Boolean#toString(boolean)}.
@@ -737,11 +737,11 @@
  *     <p> If the {@code '#'} flag is given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'B'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'B'}
  *     <td style="vertical-align:top"> <code>'&#92;u0042'</code>
  *     <td> The upper-case variant of {@code 'b'}.
  *
- * <tr><td style="vertical-align:top"> {@code 'h'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'h'}
  *     <td style="vertical-align:top"> <code>'&#92;u0068'</code>
  *     <td> Produces a string representing the hash code value of the object.
  *
@@ -751,11 +751,11 @@
  *     <p> If the {@code '#'} flag is given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'H'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'H'}
  *     <td style="vertical-align:top"> <code>'&#92;u0048'</code>
  *     <td> The upper-case variant of {@code 'h'}.
  *
- * <tr><td style="vertical-align:top"> {@code 's'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 's'}
  *     <td style="vertical-align:top"> <code>'&#92;u0073'</code>
  *     <td> Produces a string.
  *
@@ -768,7 +768,7 @@
  *     Formattable} , then a {@link FormatFlagsConversionMismatchException}
  *     will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'S'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'S'}
  *     <td style="vertical-align:top"> <code>'&#92;u0053'</code>
  *     <td> The upper-case variant of {@code 's'}.
  *
@@ -781,7 +781,7 @@
  * <caption style="display:none">dFlags</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code '-'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code '-'}
  *     <td style="vertical-align:top"> <code>'&#92;u002d'</code>
  *     <td> Left justifies the output.  Spaces (<code>'&#92;u0020'</code>) will be
  *     added at the end of the converted value as required to fill the minimum
@@ -789,7 +789,7 @@
  *     MissingFormatWidthException} will be thrown.  If this flag is not given
  *     then the output will be right-justified.
  *
- * <tr><td style="vertical-align:top"> {@code '#'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code '#'}
  *     <td style="vertical-align:top"> <code>'&#92;u0023'</code>
  *     <td> Requires the output use an alternate form.  The definition of the
  *     form is specified by the conversion.
@@ -825,7 +825,7 @@
  * <caption style="display:none">charConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'c'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'c'}
  *     <td style="vertical-align:top"> <code>'&#92;u0063'</code>
  *     <td> Formats the argument as a Unicode character as described in <a
  *     href="../lang/Character.html#unicode">Unicode Character
@@ -835,7 +835,7 @@
  *     <p> If the {@code '#'} flag is given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'C'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'C'}
  *     <td style="vertical-align:top"> <code>'&#92;u0043'</code>
  *     <td> The upper-case variant of {@code 'c'}.
  *
@@ -929,7 +929,7 @@
  * <caption style="display:none">IntConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'd'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'd'}
  *     <td style="vertical-align:top"> <code>'&#92;u0064'</code>
  *     <td> Formats the argument as a decimal integer. The <a
  *     href="#L10nAlgorithm">localization algorithm</a> is applied.
@@ -940,7 +940,7 @@
  *     <p> If the {@code '#'} flag is given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'o'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'o'}
  *     <td style="vertical-align:top"> <code>'&#92;u006f'</code>
  *     <td> Formats the argument as an integer in base eight.  No localization
  *     is applied.
@@ -962,7 +962,7 @@
  *     are given then a {@link FormatFlagsConversionMismatchException} will be
  *     thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'x'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'x'}
  *     <td style="vertical-align:top"> <code>'&#92;u0078'</code>
  *     <td> Formats the argument as an integer in base sixteen. No
  *     localization is applied.
@@ -985,7 +985,7 @@
  *     {@code ','} flags are given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'X'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'X'}
  *     <td style="vertical-align:top"> <code>'&#92;u0058'</code>
  *     <td> The upper-case variant of {@code 'x'}.  The entire string
  *     representing the number will be converted to {@linkplain
@@ -1012,7 +1012,7 @@
  * <caption style="display:none">intFlags</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code '+'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code '+'}
  *     <td style="vertical-align:top"> <code>'&#92;u002b'</code>
  *     <td> Requires the output to include a positive sign for all positive
  *     numbers.  If this flag is not given then only negative values will
@@ -1021,7 +1021,7 @@
  *     <p> If both the {@code '+'} and <code>'&nbsp;&nbsp;'</code> flags are given
  *     then an {@link IllegalFormatFlagsException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> <code>'&nbsp;&nbsp;'</code>
+ * <tr><th scope="row" style="vertical-align:top"> <code>'&nbsp;&nbsp;'</code>
  *     <td style="vertical-align:top"> <code>'&#92;u0020'</code>
  *     <td> Requires the output to include a single extra space
  *     (<code>'&#92;u0020'</code>) for non-negative values.
@@ -1029,7 +1029,7 @@
  *     <p> If both the {@code '+'} and <code>'&nbsp;&nbsp;'</code> flags are given
  *     then an {@link IllegalFormatFlagsException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code '0'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code '0'}
  *     <td style="vertical-align:top"> <code>'&#92;u0030'</code>
  *     <td> Requires the output to be padded with leading {@linkplain
  *     java.text.DecimalFormatSymbols#getZeroDigit zeros} to the minimum field
@@ -1040,14 +1040,14 @@
  *     <p> If both the {@code '-'} and {@code '0'} flags are given then an
  *     {@link IllegalFormatFlagsException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code ','}
+ * <tr><th scope="row" style="vertical-align:top"> {@code ','}
  *     <td style="vertical-align:top"> <code>'&#92;u002c'</code>
  *     <td> Requires the output to include the locale-specific {@linkplain
  *     java.text.DecimalFormatSymbols#getGroupingSeparator group separators} as
  *     described in the <a href="#L10nGroup">"group" section</a> of the
  *     localization algorithm.
  *
- * <tr><td style="vertical-align:top"> {@code '('}
+ * <tr><th scope="row" style="vertical-align:top"> {@code '('}
  *     <td style="vertical-align:top"> <code>'&#92;u0028'</code>
  *     <td> Requires the output to prepend a {@code '('}
  *     (<code>'&#92;u0028'</code>) and append a {@code ')'}
@@ -1093,7 +1093,7 @@
  * <caption style="display:none">bIntConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'd'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'd'}
  *     <td style="vertical-align:top"> <code>'&#92;u0064'</code>
  *     <td> Requires the output to be formatted as a decimal integer. The <a
  *     href="#L10nAlgorithm">localization algorithm</a> is applied.
@@ -1101,7 +1101,7 @@
  *     <p> If the {@code '#'} flag is given {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'o'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'o'}
  *     <td style="vertical-align:top"> <code>'&#92;u006f'</code>
  *     <td> Requires the output to be formatted as an integer in base eight.
  *     No localization is applied.
@@ -1124,7 +1124,7 @@
  *     <p> If the {@code ','} flag is given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'x'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'x'}
  *     <td style="vertical-align:top"> <code>'&#92;u0078'</code>
  *     <td> Requires the output to be formatted as an integer in base
  *     sixteen.  No localization is applied.
@@ -1148,7 +1148,7 @@
  *     <p> If the {@code ','} flag is given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'X'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'X'}
  *     <td style="vertical-align:top"> <code>'&#92;u0058'</code>
  *     <td> The upper-case variant of {@code 'x'}.  The entire string
  *     representing the number will be converted to {@linkplain
@@ -1190,7 +1190,7 @@
  * <caption style="display:none">floatConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'e'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'e'}
  *     <td style="vertical-align:top"> <code>'&#92;u0065'</code>
  *     <td> Requires the output to be formatted using <a
  *     id="scientific">computerized scientific notation</a>.  The <a
@@ -1238,12 +1238,12 @@
  *     <p>If the {@code ','} flag is given, then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'E'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'E'}
  *     <td style="vertical-align:top"> <code>'&#92;u0045'</code>
  *     <td> The upper-case variant of {@code 'e'}.  The exponent symbol
  *     will be {@code 'E'} (<code>'&#92;u0045'</code>).
  *
- * <tr><td style="vertical-align:top"> {@code 'g'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'g'}
  *     <td style="vertical-align:top"> <code>'&#92;u0067'</code>
  *     <td> Requires the output to be formatted in general scientific notation
  *     as described below. The <a href="#L10nAlgorithm">localization
@@ -1268,11 +1268,11 @@
  *     <p> If the {@code '#'} flag is given then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'G'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'G'}
  *     <td style="vertical-align:top"> <code>'&#92;u0047'</code>
  *     <td> The upper-case variant of {@code 'g'}.
  *
- * <tr><td style="vertical-align:top"> {@code 'f'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'f'}
  *     <td style="vertical-align:top"> <code>'&#92;u0066'</code>
  *     <td> Requires the output to be formatted using <a id="decimal">decimal
  *     format</a>.  The <a href="#L10nAlgorithm">localization algorithm</a> is
@@ -1304,7 +1304,7 @@
  *     Float#toString(float)} or {@link Double#toString(double)} as
  *     appropriate.
  *
- * <tr><td style="vertical-align:top"> {@code 'a'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'a'}
  *     <td style="vertical-align:top"> <code>'&#92;u0061'</code>
  *     <td> Requires the output to be formatted in hexadecimal exponential
  *     form.  No localization is applied.
@@ -1357,7 +1357,7 @@
  *     <p> If the {@code '('} or {@code ','} flags are given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'A'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'A'}
  *     <td style="vertical-align:top"> <code>'&#92;u0041'</code>
  *     <td> The upper-case variant of {@code 'a'}.  The entire string
  *     representing the number will be converted to upper case including the
@@ -1427,7 +1427,7 @@
  * <caption style="display:none">floatConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'e'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'e'}
  *     <td style="vertical-align:top"> <code>'&#92;u0065'</code>
  *     <td> Requires the output to be formatted using <a
  *     id="bscientific">computerized scientific notation</a>.  The <a
@@ -1469,12 +1469,12 @@
  *     <p> If the {@code ','} flag is given, then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'E'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'E'}
  *     <td style="vertical-align:top"> <code>'&#92;u0045'</code>
  *     <td> The upper-case variant of {@code 'e'}.  The exponent symbol
  *     will be {@code 'E'} (<code>'&#92;u0045'</code>).
  *
- * <tr><td style="vertical-align:top"> {@code 'g'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'g'}
  *     <td style="vertical-align:top"> <code>'&#92;u0067'</code>
  *     <td> Requires the output to be formatted in general scientific notation
  *     as described below. The <a href="#L10nAlgorithm">localization
@@ -1499,11 +1499,11 @@
  *     <p> If the {@code '#'} flag is given then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td style="vertical-align:top"> {@code 'G'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'G'}
  *     <td style="vertical-align:top"> <code>'&#92;u0047'</code>
  *     <td> The upper-case variant of {@code 'g'}.
  *
- * <tr><td style="vertical-align:top"> {@code 'f'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'f'}
  *     <td style="vertical-align:top"> <code>'&#92;u0066'</code>
  *     <td> Requires the output to be formatted using <a id="bdecimal">decimal
  *     format</a>.  The <a href="#L10nAlgorithm">localization algorithm</a> is
@@ -1554,10 +1554,10 @@
  * <caption style="display:none">DTConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 't'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 't'}
  *     <td style="vertical-align:top"> <code>'&#92;u0074'</code>
  *     <td> Prefix for date and time conversion characters.
- * <tr><td style="vertical-align:top"> {@code 'T'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'T'}
  *     <td style="vertical-align:top"> <code>'&#92;u0054'</code>
  *     <td> The upper-case variant of {@code 't'}.
  *
@@ -1577,52 +1577,52 @@
  * <caption style="display:none">time</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top"> {@code 'H'}
+ * <tr><th scope="row" style="vertical-align:top"> {@code 'H'}
  *     <td style="vertical-align:top"> <code>'&#92;u0048'</code>
  *     <td> Hour of the day for the 24-hour clock, formatted as two digits with
  *     a leading zero as necessary i.e. {@code 00 - 23}. {@code 00}
  *     corresponds to midnight.
  *
- * <tr><td style="vertical-align:top">{@code 'I'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'I'}
  *     <td style="vertical-align:top"> <code>'&#92;u0049'</code>
  *     <td> Hour for the 12-hour clock, formatted as two digits with a leading
  *     zero as necessary, i.e.  {@code 01 - 12}.  {@code 01} corresponds to
  *     one o'clock (either morning or afternoon).
  *
- * <tr><td style="vertical-align:top">{@code 'k'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'k'}
  *     <td style="vertical-align:top"> <code>'&#92;u006b'</code>
  *     <td> Hour of the day for the 24-hour clock, i.e. {@code 0 - 23}.
  *     {@code 0} corresponds to midnight.
  *
- * <tr><td style="vertical-align:top">{@code 'l'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'l'}
  *     <td style="vertical-align:top"> <code>'&#92;u006c'</code>
  *     <td> Hour for the 12-hour clock, i.e. {@code 1 - 12}.  {@code 1}
  *     corresponds to one o'clock (either morning or afternoon).
  *
- * <tr><td style="vertical-align:top">{@code 'M'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'M'}
  *     <td style="vertical-align:top"> <code>'&#92;u004d'</code>
  *     <td> Minute within the hour formatted as two digits with a leading zero
  *     as necessary, i.e.  {@code 00 - 59}.
  *
- * <tr><td style="vertical-align:top">{@code 'S'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'S'}
  *     <td style="vertical-align:top"> <code>'&#92;u0053'</code>
  *     <td> Seconds within the minute, formatted as two digits with a leading
  *     zero as necessary, i.e. {@code 00 - 60} ("{@code 60}" is a special
  *     value required to support leap seconds).
  *
- * <tr><td style="vertical-align:top">{@code 'L'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'L'}
  *     <td style="vertical-align:top"> <code>'&#92;u004c'</code>
  *     <td> Millisecond within the second formatted as three digits with
  *     leading zeros as necessary, i.e. {@code 000 - 999}.
  *
- * <tr><td style="vertical-align:top">{@code 'N'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'N'}
  *     <td style="vertical-align:top"> <code>'&#92;u004e'</code>
  *     <td> Nanosecond within the second, formatted as nine digits with leading
  *     zeros as necessary, i.e. {@code 000000000 - 999999999}.  The precision
  *     of this value is limited by the resolution of the underlying operating
  *     system or hardware.
  *
- * <tr><td style="vertical-align:top">{@code 'p'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'p'}
  *     <td style="vertical-align:top"> <code>'&#92;u0070'</code>
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getAmPmStrings morning or afternoon} marker
@@ -1632,7 +1632,7 @@
  *     GNU {@code date} and POSIX {@code strftime(3c)} which produce
  *     upper-case output.)
  *
- * <tr><td style="vertical-align:top">{@code 'z'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'z'}
  *     <td style="vertical-align:top"> <code>'&#92;u007a'</code>
  *     <td> <a href="http://www.ietf.org/rfc/rfc0822.txt">RFC&nbsp;822</a>
  *     style numeric time zone offset from GMT, e.g. {@code -0800}.  This
@@ -1641,7 +1641,7 @@
  *     the {@linkplain TimeZone#getDefault() default time zone} for this
  *     instance of the Java virtual machine.
  *
- * <tr><td style="vertical-align:top">{@code 'Z'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'Z'}
  *     <td style="vertical-align:top"> <code>'&#92;u005a'</code>
  *     <td> A string representing the abbreviation for the time zone.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
@@ -1650,13 +1650,13 @@
  *     instance of the Java virtual machine.  The Formatter's locale will
  *     supersede the locale of the argument (if any).
  *
- * <tr><td style="vertical-align:top">{@code 's'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 's'}
  *     <td style="vertical-align:top"> <code>'&#92;u0073'</code>
  *     <td> Seconds since the beginning of the epoch starting at 1 January 1970
  *     {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE/1000} to
  *     {@code Long.MAX_VALUE/1000}.
  *
- * <tr><td style="vertical-align:top">{@code 'Q'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'Q'}
  *     <td style="vertical-align:top"> <code>'&#92;u004f'</code>
  *     <td> Milliseconds since the beginning of the epoch starting at 1 January
  *     1970 {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE} to
@@ -1672,68 +1672,68 @@
  * <caption style="display:none">date</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top">{@code 'B'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'B'}
  *     <td style="vertical-align:top"> <code>'&#92;u0042'</code>
  *     <td> Locale-specific {@linkplain java.text.DateFormatSymbols#getMonths
  *     full month name}, e.g. {@code "January"}, {@code "February"}.
  *
- * <tr><td style="vertical-align:top">{@code 'b'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'b'}
  *     <td style="vertical-align:top"> <code>'&#92;u0062'</code>
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getShortMonths abbreviated month name},
  *     e.g. {@code "Jan"}, {@code "Feb"}.
  *
- * <tr><td style="vertical-align:top">{@code 'h'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'h'}
  *     <td style="vertical-align:top"> <code>'&#92;u0068'</code>
  *     <td> Same as {@code 'b'}.
  *
- * <tr><td style="vertical-align:top">{@code 'A'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'A'}
  *     <td style="vertical-align:top"> <code>'&#92;u0041'</code>
  *     <td> Locale-specific full name of the {@linkplain
  *     java.text.DateFormatSymbols#getWeekdays day of the week},
  *     e.g. {@code "Sunday"}, {@code "Monday"}
  *
- * <tr><td style="vertical-align:top">{@code 'a'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'a'}
  *     <td style="vertical-align:top"> <code>'&#92;u0061'</code>
  *     <td> Locale-specific short name of the {@linkplain
  *     java.text.DateFormatSymbols#getShortWeekdays day of the week},
  *     e.g. {@code "Sun"}, {@code "Mon"}
  *
- * <tr><td style="vertical-align:top">{@code 'C'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'C'}
  *     <td style="vertical-align:top"> <code>'&#92;u0043'</code>
  *     <td> Four-digit year divided by {@code 100}, formatted as two digits
  *     with leading zero as necessary, i.e. {@code 00 - 99}
  *
- * <tr><td style="vertical-align:top">{@code 'Y'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'Y'}
  *     <td style="vertical-align:top"> <code>'&#92;u0059'</code> <td> Year, formatted to at least
  *     four digits with leading zeros as necessary, e.g. {@code 0092} equals
  *     {@code 92} CE for the Gregorian calendar.
  *
- * <tr><td style="vertical-align:top">{@code 'y'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'y'}
  *     <td style="vertical-align:top"> <code>'&#92;u0079'</code>
  *     <td> Last two digits of the year, formatted with leading zeros as
  *     necessary, i.e. {@code 00 - 99}.
  *
- * <tr><td style="vertical-align:top">{@code 'j'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'j'}
  *     <td style="vertical-align:top"> <code>'&#92;u006a'</code>
  *     <td> Day of year, formatted as three digits with leading zeros as
  *     necessary, e.g. {@code 001 - 366} for the Gregorian calendar.
  *     {@code 001} corresponds to the first day of the year.
  *
- * <tr><td style="vertical-align:top">{@code 'm'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'm'}
  *     <td style="vertical-align:top"> <code>'&#92;u006d'</code>
  *     <td> Month, formatted as two digits with leading zeros as necessary,
  *     i.e. {@code 01 - 13}, where "{@code 01}" is the first month of the
  *     year and ("{@code 13}" is a special value required to support lunar
  *     calendars).
  *
- * <tr><td style="vertical-align:top">{@code 'd'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'd'}
  *     <td style="vertical-align:top"> <code>'&#92;u0064'</code>
  *     <td> Day of month, formatted as two digits with leading zeros as
  *     necessary, i.e. {@code 01 - 31}, where "{@code 01}" is the first day
  *     of the month.
  *
- * <tr><td style="vertical-align:top">{@code 'e'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'e'}
  *     <td style="vertical-align:top"> <code>'&#92;u0065'</code>
  *     <td> Day of month, formatted as two digits, i.e. {@code 1 - 31} where
  *     "{@code 1}" is the first day of the month.
@@ -1748,30 +1748,30 @@
  * <caption style="display:none">composites</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top">{@code 'R'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'R'}
  *     <td style="vertical-align:top"> <code>'&#92;u0052'</code>
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM"}
  *
- * <tr><td style="vertical-align:top">{@code 'T'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'T'}
  *     <td style="vertical-align:top"> <code>'&#92;u0054'</code>
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM:%tS"}.
  *
- * <tr><td style="vertical-align:top">{@code 'r'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'r'}
  *     <td style="vertical-align:top"> <code>'&#92;u0072'</code>
  *     <td> Time formatted for the 12-hour clock as {@code "%tI:%tM:%tS
  *     %Tp"}.  The location of the morning or afternoon marker
  *     ({@code '%Tp'}) may be locale-dependent.
  *
- * <tr><td style="vertical-align:top">{@code 'D'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'D'}
  *     <td style="vertical-align:top"> <code>'&#92;u0044'</code>
  *     <td> Date formatted as {@code "%tm/%td/%ty"}.
  *
- * <tr><td style="vertical-align:top">{@code 'F'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'F'}
  *     <td style="vertical-align:top"> <code>'&#92;u0046'</code>
  *     <td> <a href="http://www.w3.org/TR/NOTE-datetime">ISO&nbsp;8601</a>
  *     complete date formatted as {@code "%tY-%tm-%td"}.
  *
- * <tr><td style="vertical-align:top">{@code 'c'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'c'}
  *     <td style="vertical-align:top"> <code>'&#92;u0063'</code>
  *     <td> Date and time formatted as {@code "%ta %tb %td %tT %tZ %tY"},
  *     e.g. {@code "Sun Jul 20 16:17:00 EDT 1969"}.
@@ -1802,7 +1802,7 @@
  * <caption style="display:none">DTConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top">{@code '%'}
+ * <tr><th scope="row" style="vertical-align:top">{@code '%'}
  *     <td> The result is a literal {@code '%'} (<code>'&#92;u0025'</code>)
  *
  * <p> The width is the minimum number of characters to
@@ -1830,7 +1830,7 @@
  * <caption style="display:none">DTConv</caption>
  * <tbody>
  *
- * <tr><td style="vertical-align:top">{@code 'n'}
+ * <tr><th scope="row" style="vertical-align:top">{@code 'n'}
  *     <td> the platform-specific line separator as returned by {@link
  *     System#lineSeparator()}.
  *
--- a/src/java.base/share/classes/java/util/GregorianCalendar.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/util/GregorianCalendar.java	Mon Jul 17 09:14:23 2017 -0700
@@ -163,83 +163,83 @@
  * <caption style="display:none">GregorianCalendar default field values</caption>
  *   <thead>
  *     <tr>
- *       <th>
+ *       <th scope="col">
  *          Field
  *       </th>
- *       <th>
+ *       <th scope="col">
             Default Value
  *       </th>
  *     </tr>
  *   </thead>
  *   <tbody>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>ERA</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>AD</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>YEAR</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>1970</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>MONTH</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>JANUARY</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>DAY_OF_MONTH</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>1</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>DAY_OF_WEEK</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>the first day of week</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>WEEK_OF_MONTH</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>0</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>DAY_OF_WEEK_IN_MONTH</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>1</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>AM_PM</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>AM</code>
  *       </td>
  *     </tr>
  *     <tr>
- *       <td>
+ *       <th scope="row">
  *              <code>HOUR, HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND</code>
- *       </td>
+ *       </th>
  *       <td>
  *              <code>0</code>
  *       </td>
--- a/src/java.base/share/classes/java/util/Locale.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/util/Locale.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1590,29 +1590,29 @@
      * <table class="striped">
      * <caption style="display:none">Grandfathered tags with canonical replacements</caption>
      * <thead style="text-align:center">
-     * <tr><th style="padding: 0 2px">grandfathered tag</th><th style="padding: 0 2px">modern replacement</th></tr>
+     * <tr><th scope="col" style="padding: 0 2px">grandfathered tag</th><th scope="col" style="padding: 0 2px">modern replacement</th></tr>
      * </thead>
      * <tbody style="text-align:center">
-     * <tr><td>art-lojban</td><td>jbo</td></tr>
-     * <tr><td>i-ami</td><td>ami</td></tr>
-     * <tr><td>i-bnn</td><td>bnn</td></tr>
-     * <tr><td>i-hak</td><td>hak</td></tr>
-     * <tr><td>i-klingon</td><td>tlh</td></tr>
-     * <tr><td>i-lux</td><td>lb</td></tr>
-     * <tr><td>i-navajo</td><td>nv</td></tr>
-     * <tr><td>i-pwn</td><td>pwn</td></tr>
-     * <tr><td>i-tao</td><td>tao</td></tr>
-     * <tr><td>i-tay</td><td>tay</td></tr>
-     * <tr><td>i-tsu</td><td>tsu</td></tr>
-     * <tr><td>no-bok</td><td>nb</td></tr>
-     * <tr><td>no-nyn</td><td>nn</td></tr>
-     * <tr><td>sgn-BE-FR</td><td>sfb</td></tr>
-     * <tr><td>sgn-BE-NL</td><td>vgt</td></tr>
-     * <tr><td>sgn-CH-DE</td><td>sgg</td></tr>
-     * <tr><td>zh-guoyu</td><td>cmn</td></tr>
-     * <tr><td>zh-hakka</td><td>hak</td></tr>
-     * <tr><td>zh-min-nan</td><td>nan</td></tr>
-     * <tr><td>zh-xiang</td><td>hsn</td></tr>
+     * <tr><th scope="row">art-lojban</th><td>jbo</td></tr>
+     * <tr><th scope="row">i-ami</th><td>ami</td></tr>
+     * <tr><th scope="row">i-bnn</th><td>bnn</td></tr>
+     * <tr><th scope="row">i-hak</th><td>hak</td></tr>
+     * <tr><th scope="row">i-klingon</th><td>tlh</td></tr>
+     * <tr><th scope="row">i-lux</th><td>lb</td></tr>
+     * <tr><th scope="row">i-navajo</th><td>nv</td></tr>
+     * <tr><th scope="row">i-pwn</th><td>pwn</td></tr>
+     * <tr><th scope="row">i-tao</th><td>tao</td></tr>
+     * <tr><th scope="row">i-tay</th><td>tay</td></tr>
+     * <tr><th scope="row">i-tsu</th><td>tsu</td></tr>
+     * <tr><th scope="row">no-bok</th><td>nb</td></tr>
+     * <tr><th scope="row">no-nyn</th><td>nn</td></tr>
+     * <tr><th scope="row">sgn-BE-FR</th><td>sfb</td></tr>
+     * <tr><th scope="row">sgn-BE-NL</th><td>vgt</td></tr>
+     * <tr><th scope="row">sgn-CH-DE</th><td>sgg</td></tr>
+     * <tr><th scope="row">zh-guoyu</th><td>cmn</td></tr>
+     * <tr><th scope="row">zh-hakka</th><td>hak</td></tr>
+     * <tr><th scope="row">zh-min-nan</th><td>nan</td></tr>
+     * <tr><th scope="row">zh-xiang</th><td>hsn</td></tr>
      * </tbody>
      * </table>
      *
@@ -1622,15 +1622,15 @@
      * <table class="striped">
      * <caption style="display:none">Grandfathered tags with no modern replacement</caption>
      * <thead style="text-align:center">
-     * <tr><th style="padding: 0 2px">grandfathered tag</th><th style="padding: 0 2px">converts to</th></tr>
+     * <tr><th scope="col" style="padding: 0 2px">grandfathered tag</th><th scope="col" style="padding: 0 2px">converts to</th></tr>
      * </thead>
      * <tbody style="text-align:center">
-     * <tr><td>cel-gaulish</td><td>xtg-x-cel-gaulish</td></tr>
-     * <tr><td>en-GB-oed</td><td>en-GB-x-oed</td></tr>
-     * <tr><td>i-default</td><td>en-x-i-default</td></tr>
-     * <tr><td>i-enochian</td><td>und-x-i-enochian</td></tr>
-     * <tr><td>i-mingo</td><td>see-x-i-mingo</td></tr>
-     * <tr><td>zh-min</td><td>nan-x-zh-min</td></tr>
+     * <tr><th scope="row">cel-gaulish</th><td>xtg-x-cel-gaulish</td></tr>
+     * <tr><th scope="row">en-GB-oed</th><td>en-GB-x-oed</td></tr>
+     * <tr><th scope="row">i-default</th><td>en-x-i-default</td></tr>
+     * <tr><th scope="row">i-enochian</th><td>und-x-i-enochian</td></tr>
+     * <tr><th scope="row">i-mingo</th><td>see-x-i-mingo</td></tr>
+     * <tr><th scope="row">zh-min</th><td>nan-x-zh-min</td></tr>
      * </tbody>
      * </table>
      *
@@ -2778,16 +2778,16 @@
      * <caption>Filtering method behavior</caption>
      * <thead>
      * <tr>
-     * <th>Filtering Mode</th>
-     * <th>Language Priority List: {@code "de-DE"}</th>
-     * <th>Language Priority List: {@code "de-*-DE"}</th>
+     * <th scope="col">Filtering Mode</th>
+     * <th scope="col">Language Priority List: {@code "de-DE"}</th>
+     * <th scope="col">Language Priority List: {@code "de-*-DE"}</th>
      * </tr>
      * </thead>
      * <tbody>
      * <tr>
-     * <td style="vertical-align:top">
+     * <th scope="row" style="vertical-align:top">
      * {@link FilteringMode#AUTOSELECT_FILTERING AUTOSELECT_FILTERING}
-     * </td>
+     * </th>
      * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code "de-DE"} and
      * {@code "de-DE-1996"}.
@@ -2799,9 +2799,9 @@
      * </td>
      * </tr>
      * <tr>
-     * <td style="vertical-align:top">
+     * <th scope="row" style="vertical-align:top">
      * {@link FilteringMode#EXTENDED_FILTERING EXTENDED_FILTERING}
-     * </td>
+     * </th>
      * <td style="vertical-align:top">
      * Performs <em>extended</em> filtering and returns {@code "de-DE"},
      * {@code "de-Deva-DE"}, {@code "de-DE-1996"}, {@code "de-Latn-DE"}, and
@@ -2810,9 +2810,9 @@
      * <td style="vertical-align:top">Same as above.</td>
      * </tr>
      * <tr>
-     * <td style="vertical-align:top">
+     * <th scope="row" style="vertical-align:top">
      * {@link FilteringMode#IGNORE_EXTENDED_RANGES IGNORE_EXTENDED_RANGES}
-     * </td>
+     * </th>
      * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code "de-DE"} and
      * {@code "de-DE-1996"}.
@@ -2823,9 +2823,9 @@
      * </td>
      * </tr>
      * <tr>
-     * <td style="vertical-align:top">
+     * <th scope="row" style="vertical-align:top">
      * {@link FilteringMode#MAP_EXTENDED_RANGES MAP_EXTENDED_RANGES}
-     * </td>
+     * </th>
      * <td style="vertical-align:top">Same as above.</td>
      * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code "de-DE"} and
@@ -2834,9 +2834,9 @@
      * </td>
      * </tr>
      * <tr>
-     * <td style="vertical-align:top">
+     * <th scope="row" style="vertical-align:top">
      * {@link FilteringMode#REJECT_EXTENDED_RANGES REJECT_EXTENDED_RANGES}
-     * </td>
+     * </th>
      * <td style="vertical-align:top">Same as above.</td>
      * <td style="vertical-align:top">
      * Throws {@link IllegalArgumentException} because {@code "de-*-DE"} is
@@ -3257,6 +3257,9 @@
      * Returns a list of matching {@code Locale} instances using the filtering
      * mechanism defined in RFC 4647.
      *
+     * This filter operation on the given {@code locales} ensures that only
+     * unique matching locale(s) are returned.
+     *
      * @param priorityList user's Language Priority List in which each language
      *     tag is sorted in descending order based on priority or weight
      * @param locales {@code Locale} instances used for matching
@@ -3284,6 +3287,9 @@
      * {@link #filter(List, Collection, FilteringMode)} when {@code mode} is
      * {@link FilteringMode#AUTOSELECT_FILTERING}.
      *
+     * This filter operation on the given {@code locales} ensures that only
+     * unique matching locale(s) are returned.
+     *
      * @param priorityList user's Language Priority List in which each language
      *     tag is sorted in descending order based on priority or weight
      * @param locales {@code Locale} instances used for matching
@@ -3304,6 +3310,17 @@
      * Returns a list of matching languages tags using the basic filtering
      * mechanism defined in RFC 4647.
      *
+     * This filter operation on the given {@code tags} ensures that only
+     * unique matching tag(s) are returned with preserved case. In case of
+     * duplicate matching tags with the case difference, the first matching
+     * tag with preserved case is returned.
+     * For example, "de-ch" is returned out of the duplicate matching tags
+     * "de-ch" and "de-CH", if "de-ch" is checked first for matching in the
+     * given {@code tags}. Note that if the given {@code tags} is an unordered
+     * {@code Collection}, the returned matching tag out of duplicate tags is
+     * subject to change, depending on the implementation of the
+     * {@code Collection}.
+     *
      * @param priorityList user's Language Priority List in which each language
      *     tag is sorted in descending order based on priority or weight
      * @param tags language tags
@@ -3331,6 +3348,17 @@
      * {@link #filterTags(List, Collection, FilteringMode)} when {@code mode}
      * is {@link FilteringMode#AUTOSELECT_FILTERING}.
      *
+     * This filter operation on the given {@code tags} ensures that only
+     * unique matching tag(s) are returned with preserved case. In case of
+     * duplicate matching tags with the case difference, the first matching
+     * tag with preserved case is returned.
+     * For example, "de-ch" is returned out of the duplicate matching tags
+     * "de-ch" and "de-CH", if "de-ch" is checked first for matching in the
+     * given {@code tags}. Note that if the given {@code tags} is an unordered
+     * {@code Collection}, the returned matching tag out of duplicate tags is
+     * subject to change, depending on the implementation of the
+     * {@code Collection}.
+     *
      * @param priorityList user's Language Priority List in which each language
      *     tag is sorted in descending order based on priority or weight
      * @param tags language tags
@@ -3370,6 +3398,9 @@
      * Returns the best-matching language tag using the lookup mechanism
      * defined in RFC 4647.
      *
+     * This lookup operation on the given {@code tags} ensures that the
+     * first matching tag with preserved case is returned.
+     *
      * @param priorityList user's Language Priority List in which each language
      *     tag is sorted in descending order based on priority or weight
      * @param tags language tangs used for matching
--- a/src/java.base/share/classes/java/util/regex/Pattern.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/java/util/regex/Pattern.java	Mon Jul 17 09:14:23 2017 -0700
@@ -3887,9 +3887,13 @@
                     return next.match(matcher, i + 1, seq);
                 if (ch == 0x0D) {
                     i++;
-                    if (i < matcher.to && seq.charAt(i) == 0x0A &&
-                        next.match(matcher, i + 1, seq)) {
-                        return true;
+                    if (i < matcher.to) {
+                        if (seq.charAt(i) == 0x0A &&
+                            next.match(matcher, i + 1, seq)) {
+                            return true;
+                        }
+                    } else {
+                        matcher.hitEnd = true;
                     }
                     return next.match(matcher, i, seq);
                 }
--- a/src/java.base/share/classes/javax/net/ssl/SSLPermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/javax/net/ssl/SSLPermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -48,15 +48,15 @@
  * <caption style="display:none">permission name, what it allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  *
  * <tbody>
  * <tr>
- *   <td>setHostnameVerifier</td>
+ *   <th scope="row">setHostnameVerifier</th>
  *   <td>The ability to set a callback which can decide whether to
  * allow a mismatch between the host being connected to by
  * an HttpsURLConnection and the common name field in
@@ -70,7 +70,7 @@
  * </tr>
  *
  * <tr>
- *   <td>getSSLSessionContext</td>
+ *   <th scope="row">getSSLSessionContext</th>
  *   <td>The ability to get the SSLSessionContext of an SSLSession.
  * </td>
  *   <td>Malicious code may monitor sessions which have been established
@@ -79,7 +79,7 @@
  * </tr>
  *
  * <tr>
- *   <td>setDefaultSSLContext</td>
+ *   <th scope="row">setDefaultSSLContext</th>
  *   <td>The ability to set the default SSL context
  * </td>
  *   <td>Malicious code can set a context that monitors the opening of
--- a/src/java.base/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -26,8 +26,8 @@
 /**
  * Defines the foundational APIs of the Java SE Platform.
  *
- * <dl style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">
- * <dt class="simpleTagLabel">Providers:</dt>
+ * <dl>
+ * <dt class="simpleTagLabel" style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">Providers:</dt>
  * <dd> The JDK implementation of this module provides an implementation of
  *      the {@index jrt jrt} {@linkplain java.nio.file.spi.FileSystemProvider
  *      file system provider} to enumerate and read the class and resource
@@ -36,8 +36,8 @@
  *      {@link java.nio.file.FileSystems#newFileSystem
  *      FileSystems.newFileSystem(URI.create("jrt:/"))}.
  *      <p></dd>
- * <dt class="simpleTagLabel">Tool Guides:</dt>
- * <dd> {@extLink java_tool_reference java launcher},
+ * <dt class="simpleTagLabel" style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">Tool Guides:</dt>
+ * <dd style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif"> {@extLink java_tool_reference java launcher},
  *      {@extLink keytool_tool_reference keytool}</dd>
  * </dl>
  *
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_de.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_de.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -35,7 +35,7 @@
 unterst\u00FCtzt und verwendet,\n                  falls verf\u00FCgbar. Der nicht skalierte Bilddateiname (Beispiel: image.ext)\n                  muss immer als Argument an die Option "-splash" \u00FCbergeben werden.\n                  Das am besten geeignete angegebene skalierte Bild wird\n                  automatisch ausgew\u00E4hlt.\n                  Weitere Informationen finden Sie in der Dokumentation zur SplashScreen-API\n    @argument files\n                  Eine oder mehrere Argumentdateien mit Optionen\n    -disable-@files\n                  Verhindert die weitere Erweiterung von Argumentdateien\nUm ein Argument f\u00FCr eine lange Option anzugeben, k\u00F6nnen Sie --<Name>=<Wert> oder\n--<Name> <Wert> verwenden.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\n    -Xbatch           Deaktiviert Hintergrundkompilierung\n    -Xbootclasspath/a: <Durch {0} getrennte Verzeichnisse und ZIP-/JAR-Dateien>\n                      an Ende von Bootstrap Classpath anh\u00E4ngen\n    -Xcheck:jni       F\u00FChrt zus\u00E4tzliche Pr\u00FCfungen f\u00FCr JNI-Funktionen aus\n    -Xcomp            Erzwingt Kompilierung von Methoden beim ersten Aufruf\n    -Xdebug           Wird zur Abw\u00E4rtskompatiblit\u00E4t bereitgestellt\n    -Xdiag            Zeigt zus\u00E4tzliche Diagnosemeldungen an\n    -Xfuture          Aktiviert strengste Pr\u00FCfungen, wird als m\u00F6glicher zuk\u00FCnftiger Standardwert erwartet\n    -Xint             Nur Ausf\u00FChrung im interpretierten Modus\n    -Xinternalversion\n                      Zeigt detailliertere JVM-Versionsinformationen an als die\n                      Option "-version"\n    -Xloggc:<Datei>    Protokolliert GC-Status in einer Datei mit Zeitstempeln\n    -Xmixed           Ausf\u00FChrung im gemischten Modus (Standard)\n    -Xmn<Gr\u00F6\u00DFe>        Legt die anf\u00E4ngliche und die maximale Gr\u00F6\u00DFe (in Byte) des Heaps\n                      f\u00FCr die junge Generation (Nursery) fest\n    -Xms<Gr\u00F6\u00DFe>        Legt die anf\u00E4ngliche Java-Heap-Gr\u00F6\u00DFe fest\n    -Xmx<Gr\u00F6\u00DFe>        Legt die maximale Java-Heap-Gr\u00F6\u00DFe fest\n    -Xnoclassgc       Deaktiviert die Klassen-Garbage Collection\n    -Xprof            Gibt CPU-Profilierungsdaten aus (veraltet)\n    -Xrs              Reduziert die Verwendung von BS-Signalen durch Java/VM (siehe Dokumentation)\n    -Xshare:auto      Verwendet, wenn m\u00F6glich, freigegebene Klassendaten (Standard)\n    -Xshare:off       Versucht nicht, freigegebene Klassendaten zu verwenden\n    -Xshare:on        Erfordert die Verwendung von freigegebenen Klassendaten, verl\u00E4uft sonst nicht erfolgreich.\n    -XshowSettings    Zeigt alle Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:all\n                      Zeigt alle Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:locale\n                      Zeigt alle gebietsschemabezogenen Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:properties\n                      Zeigt alle Eigenschaftseinstellungen an und f\u00E4hrt fort\n    -XshowSettings:vm Zeigt alle VM-bezogenen Einstellungen an und f\u00E4hrt fort\n    -Xss<Gr\u00F6\u00DFe>        Legt Stack-Gr\u00F6\u00DFe des Java-Threads fest\n    -Xverify          Legt den Modus der Bytecodeverifizierung fest\n    --add-reads <Modul>=<Zielmodul>(,<Zielmodul>)*\n                      Aktualisiert <Modul>, damit <Zielmodul> ungeachtet der\n                      Moduldeklaration gelesen wird. \n                      <Zielmodul> kann ALL-UNNAMED sein, um alle unbenannten\n                      Module zu lesen.\n    --add-exports <Modul>/<Package>=<Zielmodul>(,<Zielmodul>)*\n                      Aktualisiert <Modul>, um <Package> ungeachtet der Moduldeklaration\n                        in <Zielmodul> zu exportieren.\n                      <Zielmodul> kann ALL-UNNAMED sein, um in alle \n                      unbenannten Module zu exportieren.\n    --add-opens <Modul>/<Package>=<Zielmodul>(,<Zielmodul>)*\n                      Aktualisiert <Modul>, um <Package> ungeachtet der Moduldeklaration\n                      in <Zielmodul> zu \u00F6ffnen.\n    --permit-illegal-access\n                      L\u00E4sst unzul\u00E4ssigen Zugriff f\u00FCr Mitglieder mit den Typen in den benannten Modulen\n                      nach Code in unbenannten Modulen zu. Diese Kompatibilit\u00E4tsoption wird\n                      im n\u00E4chsten Release entfernt.\n    --limit-modules <Modulname>[,<Modulname>...]\n                      Grenzt die Gesamtmenge der beobachtbaren Module ein\n   --patch-module <Modul>=<Datei>({0}<Datei>)*\n                      \u00DCberschreibt oder erweitert ein Modul in JAR-Dateien\n                      oder -Verzeichnissen mit \
+java.launcher.X.usage=\n    -Xbatch           Deaktiviert Hintergrundkompilierung\n    -Xbootclasspath/a: <Durch {0} getrennte Verzeichnisse und ZIP-/JAR-Dateien>\n                      an Ende von Bootstrap Classpath anh\u00E4ngen\n    -Xcheck:jni       F\u00FChrt zus\u00E4tzliche Pr\u00FCfungen f\u00FCr JNI-Funktionen aus\n    -Xcomp            Erzwingt Kompilierung von Methoden beim ersten Aufruf\n    -Xdebug           Wird zur Abw\u00E4rtskompatiblit\u00E4t bereitgestellt\n    -Xdiag            Zeigt zus\u00E4tzliche Diagnosemeldungen an\n    -Xfuture          Aktiviert strengste Pr\u00FCfungen, wird als m\u00F6glicher zuk\u00FCnftiger Standardwert erwartet\n    -Xint             Nur Ausf\u00FChrung im interpretierten Modus\n    -Xinternalversion\n                      Zeigt detailliertere JVM-Versionsinformationen an als die\n                      Option "-version"\n    -Xloggc:<Datei>    Protokolliert GC-Status in einer Datei mit Zeitstempeln\n    -Xmixed           Ausf\u00FChrung im gemischten Modus (Standard)\n    -Xmn<Gr\u00F6\u00DFe>        Legt die anf\u00E4ngliche und die maximale Gr\u00F6\u00DFe (in Byte) des Heaps\n                      f\u00FCr die junge Generation (Nursery) fest\n    -Xms<Gr\u00F6\u00DFe>        Legt die anf\u00E4ngliche Java-Heap-Gr\u00F6\u00DFe fest\n    -Xmx<Gr\u00F6\u00DFe>        Legt die maximale Java-Heap-Gr\u00F6\u00DFe fest\n    -Xnoclassgc       Deaktiviert die Klassen-Garbage Collection\n    -Xprof            Gibt CPU-Profilierungsdaten aus (veraltet)\n    -Xrs              Reduziert die Verwendung von BS-Signalen durch Java/VM (siehe Dokumentation)\n    -Xshare:auto      Verwendet, wenn m\u00F6glich, freigegebene Klassendaten (Standard)\n    -Xshare:off       Versucht nicht, freigegebene Klassendaten zu verwenden\n    -Xshare:on        Erfordert die Verwendung von freigegebenen Klassendaten, verl\u00E4uft sonst nicht erfolgreich.\n    -XshowSettings    Zeigt alle Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:all\n                      Zeigt alle Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:locale\n                      Zeigt alle gebietsschemabezogenen Einstellungen an und f\u00E4hrt fort\n    -XshowSettings:properties\n                      Zeigt alle Eigenschaftseinstellungen an und f\u00E4hrt fort\n    -XshowSettings:vm Zeigt alle VM-bezogenen Einstellungen an und f\u00E4hrt fort\n    -Xss<Gr\u00F6\u00DFe>        Legt Stack-Gr\u00F6\u00DFe des Java-Threads fest\n    -Xverify          Legt den Modus der Bytecodeverifizierung fest\n    --add-reads <Modul>=<Zielmodul>(,<Zielmodul>)*\n                      Aktualisiert <Modul>, damit <Zielmodul> ungeachtet der\n                      Moduldeklaration gelesen wird. \n                      <Zielmodul> kann ALL-UNNAMED sein, um alle unbenannten\n                      Module zu lesen.\n    --add-exports <Modul>/<Package>=<Zielmodul>(,<Zielmodul>)*\n                      Aktualisiert <Modul>, um <Package> ungeachtet der Moduldeklaration\n                        in <Zielmodul> zu exportieren.\n                      <Zielmodul> kann ALL-UNNAMED sein, um in alle \n                      unbenannten Module zu exportieren.\n    --add-opens <Modul>/<Package>=<Zielmodul>(,<Zielmodul>)*\n                      Aktualisiert <Modul>, um <Package> ungeachtet der Moduldeklaration\n                      in <Zielmodul> zu \u00F6ffnen.\n    --limit-modules <Modulname>[,<Modulname>...]\n                      Grenzt die Gesamtmenge der beobachtbaren Module ein\n   --patch-module <Modul>=<Datei>({0}<Datei>)*\n                      \u00DCberschreibt oder erweitert ein Modul in JAR-Dateien\n                      oder -Verzeichnissen mit \
 Klassen und Ressourcen.\n    --disable-@files  Deaktiviert die weitere Erweiterung von Argumentdateien\n\nDiese zus\u00E4tzlichen Optionen k\u00F6nnen ohne Vorank\u00FCndigung ge\u00E4ndert werden.
 
 # Translators please note do not translate the options themselves
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_es.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_es.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -35,7 +35,7 @@
          mostrar pantalla de presentaci\u00F3n con imagen especificada\n                  Las im\u00E1genes a escala HiDPI est\u00E1n soportadas y se usan autom\u00E1ticamente\n                  si est\u00E1n disponibles. El nombre de archivo de la imagen sin escala, por ejemplo, image.ext,\n                  siempre debe transmitirse como el argumento para la opci\u00F3n -splash.\n                  La imagen a escala m\u00E1s adecuada que se haya proporcionado se escoger\u00E1\n                  autom\u00E1ticamente.\n                  Consulte la documentaci\u00F3n de la API de la pantalla de presentaci\u00F3n para obtener m\u00E1s informaci\u00F3n.\n    @argument files\n                  uno o m\u00E1s archivos de argumentos que contienen opciones\n    -disable-@files\n                  evitar una mayor expansi\u00F3n del archivo de argumentos\nPara especificar un argumento para una opci\u00F3n larga, puede usar --<nombre>=<valor> o\n--<nombre> <valor>.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\    -Xbatch           desactivar compilaci\u00F3n de fondo\n    -Xbootclasspath/a:<directorios y archivos zip/jar separados por {0}>\n                      agregar al final de la ruta de la clase de inicializaci\u00F3n de datos\n    -Xcheck:jni       realizar comprobaciones adicionales para las funciones de JNI\n    -Xcomp            fuerza la compilaci\u00F3n de m\u00E9todos en la primera llamada\n    -Xdebug           se proporciona para ofrecer compatibilidad con versiones anteriores\n    -Xdiag            mostrar mensajes de diagn\u00F3stico adicionales\n    -Xfuture          activar las comprobaciones m\u00E1s estrictas, anticip\u00E1ndose al futuro valor por defecto\n    -Xint             solo ejecuci\u00F3n de modo interpretado\n    -Xinternalversion\n                      muestra una informaci\u00F3n de la versi\u00F3n de JVM m\u00E1s detallada que la\n                      opci\u00F3n -version\n    -Xloggc:<archivo>    registrar el estado de GC en un archivo con registros de hora\n    -Xmixed           ejecuci\u00F3n de modo mixto (por defecto)\n    -Xmn<size>        define el tama\u00F1o inicial y m\u00E1ximo (en bytes) de la pila\n                      para la generaci\u00F3n m\u00E1s joven (espacio infantil)\n    -Xms<size>        define el tama\u00F1o inicial de la pila de Java\n    -Xmx<size>        define el tama\u00F1o m\u00E1ximo de la pila de Java\n    -Xnoclassgc       desactivar la recolecci\u00F3n de basura de clases\n    -Xprof            datos de creaci\u00F3n de perfiles de CPU de salida (anticuados)\n    -Xrs              reducir el uso de se\u00F1ales de sistema operativo por parte de Java/VM (consulte la documentaci\u00F3n)\n    -Xshare:auto      usar datos de clase compartidos si es posible (valor por defecto)\n    -Xshare:off       no intentar usar datos de clase compartidos\n    -Xshare:on        es obligatorio el uso de datos de clase compartidos, de lo contrario se producir\u00E1 un fallo.\n    -XshowSettings    mostrar toda la configuraci\u00F3n y continuar\n    -XshowSettings:all\n                      mostrar todos los valores y continuar\n    -XshowSettings:locale\n                      mostrar todos los valores relacionados con la configuraci\u00F3n regional y continuar\n    -XshowSettings:properties\n                      mostrar todos los valores de propiedad y continuar\n    -XshowSettings:vm mostrar todos los valores relacionados con vm y continuar\n    -Xss<size>        definir tama\u00F1o de la pila del thread de Java\n    -Xverify          define el modo del verificador de c\u00F3digo de bytes\n    --add-reads <m\u00F3dulo>=<m\u00F3dulo-destino>(,<m\u00F3dulo-destino>)*\n                      actualiza <m\u00F3dulo> para leer <m\u00F3dulo-destino>, independientement\n                      de la declaraci\u00F3n del m\u00F3dulo. \n                      <m\u00F3dulo-destino> puede ser ALL-UNNAMED para leer todos los\n                      m\u00F3dulos sin nombre.\n    --add-exports <m\u00F3dulo>/<paquete>=<modulo-destino>(,<m\u00F3dulo-destino>)*\n                      actualiza <m\u00F3dulo> para exportar <paquete> en <m\u00F3dulo-destino>,\n                      independientemente de la declaraci\u00F3n del m\u00F3dulo.\n                      <m\u00F3dulo-destino> puede ser ALL-UNNAMED para exportar a todos los\n                      m\u00F3dulos sin nombre.\n    --add-opens <m\u00F3dulo>/<paquete>=<m\u00F3dulo-destino>(,<m\u00F3dulo-destino>)*\n                      actualiza <m\u00F3dulo> para abrir <paquete> en\n                      <m\u00F3dulo-destino>, independientemente de la declaraci\u00F3n del m\u00F3dulo.\n    --permit-illegal-access\n                      permitir el acceso no v\u00E1lido a miembros de tipos en m\u00F3dulos con nombre\n                      por c\u00F3digo en m\u00F3dulos sin nombre. Esta opci\u00F3n de compatibilidad\n                      se eliminar\u00E1 en la pr\u00F3xima versi\u00F3n.\n    --limit-modules <nombre \
+java.launcher.X.usage=\    -Xbatch           desactivar compilaci\u00F3n de fondo\n    -Xbootclasspath/a:<directorios y archivos zip/jar separados por {0}>\n                      agregar al final de la ruta de la clase de inicializaci\u00F3n de datos\n    -Xcheck:jni       realizar comprobaciones adicionales para las funciones de JNI\n    -Xcomp            fuerza la compilaci\u00F3n de m\u00E9todos en la primera llamada\n    -Xdebug           se proporciona para ofrecer compatibilidad con versiones anteriores\n    -Xdiag            mostrar mensajes de diagn\u00F3stico adicionales\n    -Xfuture          activar las comprobaciones m\u00E1s estrictas, anticip\u00E1ndose al futuro valor por defecto\n    -Xint             solo ejecuci\u00F3n de modo interpretado\n    -Xinternalversion\n                      muestra una informaci\u00F3n de la versi\u00F3n de JVM m\u00E1s detallada que la\n                      opci\u00F3n -version\n    -Xloggc:<archivo>    registrar el estado de GC en un archivo con registros de hora\n    -Xmixed           ejecuci\u00F3n de modo mixto (por defecto)\n    -Xmn<size>        define el tama\u00F1o inicial y m\u00E1ximo (en bytes) de la pila\n                      para la generaci\u00F3n m\u00E1s joven (espacio infantil)\n    -Xms<size>        define el tama\u00F1o inicial de la pila de Java\n    -Xmx<size>        define el tama\u00F1o m\u00E1ximo de la pila de Java\n    -Xnoclassgc       desactivar la recolecci\u00F3n de basura de clases\n    -Xprof            datos de creaci\u00F3n de perfiles de CPU de salida (anticuados)\n    -Xrs              reducir el uso de se\u00F1ales de sistema operativo por parte de Java/VM (consulte la documentaci\u00F3n)\n    -Xshare:auto      usar datos de clase compartidos si es posible (valor por defecto)\n    -Xshare:off       no intentar usar datos de clase compartidos\n    -Xshare:on        es obligatorio el uso de datos de clase compartidos, de lo contrario se producir\u00E1 un fallo.\n    -XshowSettings    mostrar toda la configuraci\u00F3n y continuar\n    -XshowSettings:all\n                      mostrar todos los valores y continuar\n    -XshowSettings:locale\n                      mostrar todos los valores relacionados con la configuraci\u00F3n regional y continuar\n    -XshowSettings:properties\n                      mostrar todos los valores de propiedad y continuar\n    -XshowSettings:vm mostrar todos los valores relacionados con vm y continuar\n    -Xss<size>        definir tama\u00F1o de la pila del thread de Java\n    -Xverify          define el modo del verificador de c\u00F3digo de bytes\n    --add-reads <m\u00F3dulo>=<m\u00F3dulo-destino>(,<m\u00F3dulo-destino>)*\n                      actualiza <m\u00F3dulo> para leer <m\u00F3dulo-destino>, independientement\n                      de la declaraci\u00F3n del m\u00F3dulo. \n                      <m\u00F3dulo-destino> puede ser ALL-UNNAMED para leer todos los\n                      m\u00F3dulos sin nombre.\n    --add-exports <m\u00F3dulo>/<paquete>=<modulo-destino>(,<m\u00F3dulo-destino>)*\n                      actualiza <m\u00F3dulo> para exportar <paquete> en <m\u00F3dulo-destino>,\n                      independientemente de la declaraci\u00F3n del m\u00F3dulo.\n                      <m\u00F3dulo-destino> puede ser ALL-UNNAMED para exportar a todos los\n                      m\u00F3dulos sin nombre.\n    --add-opens <m\u00F3dulo>/<paquete>=<m\u00F3dulo-destino>(,<m\u00F3dulo-destino>)*\n                      actualiza <m\u00F3dulo> para abrir <paquete> en\n                      <m\u00F3dulo-destino>, independientemente de la declaraci\u00F3n del m\u00F3dulo.\n    --limit-modules <nombre \
 m\u00F3dulo>[,<nombre m\u00F3dulo>...]\n                      limitar el universo de m\u00F3dulos observables\n    --patch-module <m\u00F3dulo>=<archivo>({0}<archivo>)*\n                      anular o aumentar un m\u00F3dulo con clases y recursos\n                      en directorios o archivos JAR.\n    --disable-@files  desactivar una mayor expansi\u00F3n del archivo de argumentos\n\nEstas opciones adicionales est\u00E1n sujetas a cambios sin previo aviso.\n
 
 # Translators please note do not translate the options themselves
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_fr.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -35,8 +35,7 @@
 java.lang.instrument\n    -splash:<imagepath>\n                  afficher l'\u00E9cran d'accueil avec l'image indiqu\u00E9e\n                  Les images redimensionn\u00E9es HiDPI sont automatiquement prises en charge et utilis\u00E9es\n                  si elles sont disponibles. Le nom de fichier d'une image non redimensionn\u00E9e, par ex. image.ext,\n                  doit toujours \u00EAtre transmis comme argument \u00E0 l'option -splash.\n                  L'image redimensionn\u00E9e fournie la plus appropri\u00E9e sera automatiquement\n                  s\u00E9lectionn\u00E9e.\n                  Pour plus d'informations, reportez-vous \u00E0 la documentation relative \u00E0 l'API SplashScreen\n    fichiers @argument\n                  fichiers d'arguments contenant des options\n    -disable-@files\n                  emp\u00EAcher le d\u00E9veloppement suppl\u00E9mentaire de fichiers d'arguments\nAfin d'indiquer un argument pour une option longue, vous pouvez utiliser --<name>=<value> ou\n--<name> <value>.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\n    -Xbatch           d\u00E9sactivation de la compilation en arri\u00E8re-plan\n    -Xbootclasspath/a:<r\u00E9pertoires et fichiers ZIP/JAR s\u00E9par\u00E9s par des {0}>\n                      ajout \u00E0 la fin du chemin de classe bootstrap\n    -Xcheck:jni       ex\u00E9cution de contr\u00F4les suppl\u00E9mentaires pour les fonctions JNI\n    -Xcomp            force la compilation de m\u00E9thodes au premier appel\n    -Xdebug           fourni pour la compatibilit\u00E9 amont\n    -Xdiag            affichage de messages de diagnostic suppl\u00E9mentaires\n    -Xfuture          activation des contr\u00F4les les plus stricts en vue d''anticiper la future valeur par d\u00E9faut\n    -Xint             ex\u00E9cution en mode interpr\u00E9t\u00E9 uniquement\n    -Xinternalversion\n                      affiche des informations de version JVM plus d\u00E9taill\u00E9es que\n                      l''option -version\n    -Xloggc:<file>    journalisation du statut de l''op\u00E9ration de ramasse-miette dans un fichier avec horodatage\n    -Xmixed           ex\u00E9cution en mode mixte (valeur par d\u00E9faut)\n    -Xmn<size>        d\u00E9finit les tailles initiale et maximale (en octets) de la portion de m\u00E9moire\n                      pour la jeune g\u00E9n\u00E9ration (nursery)\n    -Xms<size>        d\u00E9finition de la taille initiale des portions de m\u00E9moire Java\n    -Xmx<size>        d\u00E9finition de la taille maximale des portions de m\u00E9moire Java\n    -Xnoclassgc       d\u00E9sactivation de l''op\u00E9ration de ramasse-miette de la classe\n    -Xprof            sortie des donn\u00E9es de profilage d''UC (en phase d''abandon)\n    -Xrs              r\u00E9duction de l''utilisation des signaux OS par Java/la machine virtuelle (voir documentation)\n    -Xshare:auto      utilisation des donn\u00E9es de classe partag\u00E9es si possible (valeur par d\u00E9faut)\n    -Xshare:off       aucune tentative d''utilisation des donn\u00E9es de classe partag\u00E9es\n    -Xshare:on         utilisation des donn\u00E9es de classe partag\u00E9es obligatoire ou \u00E9chec de l''op\u00E9ration.\n    -XshowSettings    affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:all\n                      affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:locale\n                      affichage de tous les param\u00E8tres d''environnement local et poursuite de l''op\u00E9ration\n    -XshowSettings:properties\n                      affichage de tous les param\u00E8tres de propri\u00E9t\u00E9 et poursuite de l''op\u00E9ration\n    -XshowSettings:vm affichage de tous les param\u00E8tres de machine virtuelle et poursuite de l''op\u00E9ration\n    -Xss<size>        d\u00E9finition de la taille de pile de threads Java\n    -Xverify          d\u00E9finit le mode du v\u00E9rificateur de code ex\u00E9cutable\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      met \u00E0 jour <module> pour lire <target-module>, sans tenir compte\n                      de la d\u00E9claration de module. \n                      <target-module> peut \u00EAtre ALL-UNNAMED pour lire tous les modules\n                      sans nom.\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      met \u00E0 jour <module> pour exporter <package> vers <target-module>,\n                      sans tenir compte de la d\u00E9claration de module.\n                      <target-module> peut \u00EAtre ALL-UNNAMED pour exporter tous les\n                      modules sans nom.\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      met \u00E0 jour <module> pour ouvrir <package> dans\n                      <target-module>, sans tenir compte de la d\u00E9claration de module.\n    --permit-illegal-access\n                      autoriser l''acc\u00E8s non autoris\u00E9 \u00E0 des \
-membres de types dans des modules nomm\u00E9s\n                      par code dans des modules sans nom. Cette option de compatibilit\u00E9 sera\n                      enlev\u00E9e dans la prochaine version.\n    --limit-modules <nom de module>[,<nom de module>...]\n                      limiter l''univers de modules observables\n    --patch-module <module>=<file>({0}<file>)*\n                      Remplacement ou augmentation d''un module avec des classes et des ressources\n                      dans des fichiers ou des r\u00E9pertoires JAR.\n    --disable-@files  d\u00E9sactivation d''autres d\u00E9veloppements de fichier d''argument\n\nCes options suppl\u00E9mentaires peuvent \u00EAtre modifi\u00E9es sans pr\u00E9avis.\n
+java.launcher.X.usage=\n    -Xbatch           d\u00E9sactivation de la compilation en arri\u00E8re-plan\n    -Xbootclasspath/a:<r\u00E9pertoires et fichiers ZIP/JAR s\u00E9par\u00E9s par des {0}>\n                      ajout \u00E0 la fin du chemin de classe bootstrap\n    -Xcheck:jni       ex\u00E9cution de contr\u00F4les suppl\u00E9mentaires pour les fonctions JNI\n    -Xcomp            force la compilation de m\u00E9thodes au premier appel\n    -Xdebug           fourni pour la compatibilit\u00E9 amont\n    -Xdiag            affichage de messages de diagnostic suppl\u00E9mentaires\n    -Xfuture          activation des contr\u00F4les les plus stricts en vue d''anticiper la future valeur par d\u00E9faut\n    -Xint             ex\u00E9cution en mode interpr\u00E9t\u00E9 uniquement\n    -Xinternalversion\n                      affiche des informations de version JVM plus d\u00E9taill\u00E9es que\n                      l''option -version\n    -Xloggc:<file>    journalisation du statut de l''op\u00E9ration de ramasse-miette dans un fichier avec horodatage\n    -Xmixed           ex\u00E9cution en mode mixte (valeur par d\u00E9faut)\n    -Xmn<size>        d\u00E9finit les tailles initiale et maximale (en octets) de la portion de m\u00E9moire\n                      pour la jeune g\u00E9n\u00E9ration (nursery)\n    -Xms<size>        d\u00E9finition de la taille initiale des portions de m\u00E9moire Java\n    -Xmx<size>        d\u00E9finition de la taille maximale des portions de m\u00E9moire Java\n    -Xnoclassgc       d\u00E9sactivation de l''op\u00E9ration de ramasse-miette de la classe\n    -Xprof            sortie des donn\u00E9es de profilage d''UC (en phase d''abandon)\n    -Xrs              r\u00E9duction de l''utilisation des signaux OS par Java/la machine virtuelle (voir documentation)\n    -Xshare:auto      utilisation des donn\u00E9es de classe partag\u00E9es si possible (valeur par d\u00E9faut)\n    -Xshare:off       aucune tentative d''utilisation des donn\u00E9es de classe partag\u00E9es\n    -Xshare:on         utilisation des donn\u00E9es de classe partag\u00E9es obligatoire ou \u00E9chec de l''op\u00E9ration.\n    -XshowSettings    affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:all\n                      affichage de tous les param\u00E8tres et poursuite de l''op\u00E9ration\n    -XshowSettings:locale\n                      affichage de tous les param\u00E8tres d''environnement local et poursuite de l''op\u00E9ration\n    -XshowSettings:properties\n                      affichage de tous les param\u00E8tres de propri\u00E9t\u00E9 et poursuite de l''op\u00E9ration\n    -XshowSettings:vm affichage de tous les param\u00E8tres de machine virtuelle et poursuite de l''op\u00E9ration\n    -Xss<size>        d\u00E9finition de la taille de pile de threads Java\n    -Xverify          d\u00E9finit le mode du v\u00E9rificateur de code ex\u00E9cutable\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      met \u00E0 jour <module> pour lire <target-module>, sans tenir compte\n                      de la d\u00E9claration de module. \n                      <target-module> peut \u00EAtre ALL-UNNAMED pour lire tous les modules\n                      sans nom.\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      met \u00E0 jour <module> pour exporter <package> vers <target-module>,\n                      sans tenir compte de la d\u00E9claration de module.\n                      <target-module> peut \u00EAtre ALL-UNNAMED pour exporter tous les\n                      modules sans nom.\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      met \u00E0 jour <module> pour ouvrir <package> dans\n                      <target-module>, sans tenir compte de la d\u00E9claration de module.\n    --limit-modules <nom de module>[,<nom de module>...]\n                      limiter l''univers de modules observables\n    --patch-module <module>=<file>({0}<file>)*\n                      Remplacement ou augmentation d''un module avec des classes et des ressources\n                      dans des fichiers ou des r\u00E9pertoires JAR.\n    --disable-@files  d\u00E9sactivation d''autres d\u00E9veloppements de fichier d''argument\n\nCes options suppl\u00E9mentaires peuvent \u00EAtre modifi\u00E9es sans pr\u00E9avis.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\nLes options suivantes sont propres \u00E0 Mac OS X :\n    -XstartOnFirstThread\n                      ex\u00E9cute la m\u00E9thode main() sur le premier thread (AppKit)\n    -Xdock:name=<nom d'application>\n                      remplace le nom d'application par d\u00E9faut affich\u00E9 dans l'ancrage\n    -Xdock:icon=<chemin vers le fichier d'ic\u00F4ne>\n                      remplace l'ic\u00F4ne par d\u00E9faut affich\u00E9e dans l'ancrage\n\n
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_it.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_it.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -35,7 +35,7 @@
 automaticamente\n                  se disponibili. I nomi file delle immagini non ridimensionate, ad esempio image.ext,\n                  devono essere sempre passati come argomenti all'opzione -splash.\n                  Verr\u00E0 scelta automaticamente l'immagine ridimensionata pi\u00F9 appropriata\n                  fornita.\n                  Per ulteriori informazioni, vedere la documentazione relativa all'API SplashScreen\n    @file argomenti\n                  Uno o pi\u00F9 file argomenti contenenti opzioni\n    -disable-@files\n                  Impedisce l'ulteriore espansione di file argomenti\nPer specificare un argomento per un'opzione lunga, \u00E8 possibile usare --<nome>=<valore> oppure\n--<nome> <valore>.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\n    -Xbatch           Disabilita la compilazione in background.\n    -Xbootclasspath/a:<directory e file zip/jar separati da {0}>\n                      Aggiunge alla fine del classpath di bootstrap.\n   -Xcheck:jni       Esegue controlli aggiuntivi per le funzioni JNI.\n    -Xcomp            Forza la compilazione dei metodi al primo richiamo.\n    -Xdebug           Fornito per la compatibilit\u00E0 con le versioni precedenti.\n    -Xdiag            Mostra ulteriori messaggi diagnostici.\n    -Xfuture          Abilita i controlli pi\u00F9 limitativi anticipando le impostazioni predefinite future.\n    -Xint             Esecuzione solo in modalit\u00E0 convertita.\n    -Xinternalversion\n                      Visualizza informazioni pi\u00F9 dettagliate sulla versione JVM rispetto\n                      all''opzione -version.\n    -Xloggc:<file>    Registra lo stato GC in un file con indicatori orari.\n    -Xmixed           Esecuzione in modalit\u00E0 mista (impostazione predefinita).\n    -Xmn<dimensione>        Imposta le dimensioni iniziale e massima (in byte) dell''heap\n                      per la young generation (nursery).\n    -Xms<dimensione>        Imposta la dimensione heap Java iniziale.\n    -Xmx<dimensione>        Imposta la dimensione heap Java massima.\n    -Xnoclassgc       Disabilta la garbage collection della classe.\n    -Xprof            Visualizza i dati di profilo della CPU (non pi\u00F9 valida).\n    -Xrs              Riduce l''uso di segnali del sistema operativo da Java/VM (vedere la documentazione).\n    -Xshare:auto      Utilizza i dati di classe condivisi se possibile (impostazione predefinita).\n     -Xshare:off       Non tenta di utilizzare i dati di classe condivisi.\n    -Xshare:on        Richiede l''uso dei dati di classe condivisi, altrimenti l''esecuzione non riesce.\n    -XshowSettings    Mostra tutte le impostazioni e continua.\n    -XshowSettings:all\n                      Mostra tutte le impostazioni e continua.\n    -XshowSettings:locale\n                      Mostra tutte le impostazioni correlate alle impostazioni nazionali e continua.\n    -XshowSettings:properties\n                      Mostra tutte le impostazioni delle propriet\u00E0 e continua.\n    -XshowSettings:vm Mostra tutte le impostazioni correlate alla VM e continua.\n    -Xss<dimensione>        Imposta la dimensione dello stack di thread Java.\n     -Xverify          Imposta la modalit\u00E0 del verificatore bytecode.\n    --add-reads:<modulo>=<modulo destinazione>(,<modulo destinazione>)*\n                      Aggiorna <modulo> per leggere <modulo destinazione>, indipendentemente\n                      dalla dichiarazione del modulo.\n                      <modulo destinazione> pu\u00F2 essere ALL-UNNAMED per leggere tutti i\n                      moduli senza nome.\n   -add-exports:<modulo>/<package>=<modulo destinazione>(,<modulo destinazione>)*\n                      Aggiorna <modulo> per esportare <package> in <modulo destinazione>,\n                      indipendentemente dalla dichiarazione del modulo.\n                      <modulo destinazione> pu\u00F2 essere ALL-UNNAMED per esportare tutti i\n                      moduli senza nome.\n    --add-opens <modulo>/<package>=<modulo destinazione>(,<modulo destinazione>)*\n                      Aggiorna <modulo> per aprire <package> in\n                      <modulo destinazione>, indipendentemente dalla dichiarazione del modulo.\n    --permit-illegal-access\n                      Permette l''accesso non consentito ai membri dei tipi nei moduli denominati\n                      mediante codice in moduli senza nome. Questa opzione di compatibilit\u00E0 verr\u00E0\n                      rimossa nella release successiva.\n    --limit-modules <nome modulo>[,<nome modulo>...]\n                      Limita l''universo di moduli osservabili\n    -patch-module <modulo>=<file>({0}<file>)*\n                      Sostituisce o migliora un modulo con \
+java.launcher.X.usage=\n    -Xbatch           Disabilita la compilazione in background.\n    -Xbootclasspath/a:<directory e file zip/jar separati da {0}>\n                      Aggiunge alla fine del classpath di bootstrap.\n   -Xcheck:jni       Esegue controlli aggiuntivi per le funzioni JNI.\n    -Xcomp            Forza la compilazione dei metodi al primo richiamo.\n    -Xdebug           Fornito per la compatibilit\u00E0 con le versioni precedenti.\n    -Xdiag            Mostra ulteriori messaggi diagnostici.\n    -Xfuture          Abilita i controlli pi\u00F9 limitativi anticipando le impostazioni predefinite future.\n    -Xint             Esecuzione solo in modalit\u00E0 convertita.\n    -Xinternalversion\n                      Visualizza informazioni pi\u00F9 dettagliate sulla versione JVM rispetto\n                      all''opzione -version.\n    -Xloggc:<file>    Registra lo stato GC in un file con indicatori orari.\n    -Xmixed           Esecuzione in modalit\u00E0 mista (impostazione predefinita).\n    -Xmn<dimensione>        Imposta le dimensioni iniziale e massima (in byte) dell''heap\n                      per la young generation (nursery).\n    -Xms<dimensione>        Imposta la dimensione heap Java iniziale.\n    -Xmx<dimensione>        Imposta la dimensione heap Java massima.\n    -Xnoclassgc       Disabilta la garbage collection della classe.\n    -Xprof            Visualizza i dati di profilo della CPU (non pi\u00F9 valida).\n    -Xrs              Riduce l''uso di segnali del sistema operativo da Java/VM (vedere la documentazione).\n    -Xshare:auto      Utilizza i dati di classe condivisi se possibile (impostazione predefinita).\n     -Xshare:off       Non tenta di utilizzare i dati di classe condivisi.\n    -Xshare:on        Richiede l''uso dei dati di classe condivisi, altrimenti l''esecuzione non riesce.\n    -XshowSettings    Mostra tutte le impostazioni e continua.\n    -XshowSettings:all\n                      Mostra tutte le impostazioni e continua.\n    -XshowSettings:locale\n                      Mostra tutte le impostazioni correlate alle impostazioni nazionali e continua.\n    -XshowSettings:properties\n                      Mostra tutte le impostazioni delle propriet\u00E0 e continua.\n    -XshowSettings:vm Mostra tutte le impostazioni correlate alla VM e continua.\n    -Xss<dimensione>        Imposta la dimensione dello stack di thread Java.\n     -Xverify          Imposta la modalit\u00E0 del verificatore bytecode.\n    --add-reads:<modulo>=<modulo destinazione>(,<modulo destinazione>)*\n                      Aggiorna <modulo> per leggere <modulo destinazione>, indipendentemente\n                      dalla dichiarazione del modulo.\n                      <modulo destinazione> pu\u00F2 essere ALL-UNNAMED per leggere tutti i\n                      moduli senza nome.\n   -add-exports:<modulo>/<package>=<modulo destinazione>(,<modulo destinazione>)*\n                      Aggiorna <modulo> per esportare <package> in <modulo destinazione>,\n                      indipendentemente dalla dichiarazione del modulo.\n                      <modulo destinazione> pu\u00F2 essere ALL-UNNAMED per esportare tutti i\n                      moduli senza nome.\n    --add-opens <modulo>/<package>=<modulo destinazione>(,<modulo destinazione>)*\n                      Aggiorna <modulo> per aprire <package> in\n                      <modulo destinazione>, indipendentemente dalla dichiarazione del modulo.\n    --limit-modules <nome modulo>[,<nome modulo>...]\n                      Limita l''universo di moduli osservabili\n    -patch-module <modulo>=<file>({0}<file>)*\n                      Sostituisce o migliora un modulo con \
 classi e risorse\n                      in file JAR o directory.\n    --disable-@files  Disabilita l''ulteriore espansione di file argomenti.\n\nQueste opzioni non standard sono soggette a modifiche senza preavviso.\n
 
 # Translators please note do not translate the options themselves
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_ja.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -37,7 +37,7 @@
 
 # Translators please note do not translate the options themselves
 java.launcher.X.usage=\n    -Xbatch           \u30D0\u30C3\u30AF\u30B0\u30E9\u30A6\u30F3\u30C9\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u3092\u7121\u52B9\u306B\u3059\u308B\n    -Xbootclasspath/a:<{0}\u3067\u533A\u5207\u3089\u308C\u305F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304A\u3088\u3073zip/jar\u30D5\u30A1\u30A4\u30EB>\n                      \u30D6\u30FC\u30C8\u30B9\u30C8\u30E9\u30C3\u30D7\u30FB\u30AF\u30E9\u30B9\u30FB\u30D1\u30B9\u306E\u6700\u5F8C\u306B\u8FFD\u52A0\u3059\u308B\n    -Xcheck:jni       JNI\u95A2\u6570\u306B\u5BFE\u3059\u308B\u8FFD\u52A0\u306E\u30C1\u30A7\u30C3\u30AF\u3092\u5B9F\u884C\u3059\u308B\n    -Xcomp            \u521D\u56DE\u547C\u51FA\u3057\u6642\u306B\u30E1\u30BD\u30C3\u30C9\u306E\u30B3\u30F3\u30D1\u30A4\u30EB\u3092\u5F37\u5236\u3059\u308B\n    -Xdebug           \u4E0B\u4F4D\u4E92\u63DB\u6027\u306E\u305F\u3081\u306B\u63D0\u4F9B\n    -Xdiag            \u8FFD\u52A0\u306E\u8A3A\u65AD\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8868\u793A\u3059\u308B\n    -Xfuture          \u5C06\u6765\u306E\u30C7\u30D5\u30A9\u30EB\u30C8\u3092\u898B\u8D8A\u3057\u3066\u3001\u6700\u3082\u53B3\u5BC6\u306A\u30C1\u30A7\u30C3\u30AF\u3092\u6709\u52B9\u306B\u3059\u308B\n    -Xint             \u30A4\u30F3\u30BF\u30D7\u30EA\u30BF\u30FB\u30E2\u30FC\u30C9\u306E\u5B9F\u884C\u306E\u307F\n    -Xinternalversion\n                      -version\u30AA\u30D7\u30B7\u30E7\u30F3\u3088\u308A\u8A73\u7D30\u306AJVM\u30D0\u30FC\u30B8\u30E7\u30F3\u60C5\u5831\u3092\n                       \u8868\u793A\u3059\u308B\n    -Xloggc:<file>    \u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u4ED8\u3044\u305F\u30D5\u30A1\u30A4\u30EB\u306BGC\u30B9\u30C6\u30FC\u30BF\u30B9\u306E\u30ED\u30B0\u3092\u8A18\u9332\u3059\u308B\n    -Xmixed           \u6DF7\u5408\u30E2\u30FC\u30C9\u306E\u5B9F\u884C(\u30C7\u30D5\u30A9\u30EB\u30C8)\n    -Xmn<size>        \u82E5\u3044\u4E16\u4EE3(\u30CA\u30FC\u30B5\u30EA)\u306E\u30D2\u30FC\u30D7\u306E\u521D\u671F\u304A\u3088\u3073\u6700\u5927\u30B5\u30A4\u30BA(\u30D0\u30A4\u30C8\u5358\u4F4D)\n                      \u3092\u8A2D\u5B9A\u3059\u308B\n    -Xms<size>        Java\u306E\u521D\u671F\u30D2\u30FC\u30D7\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xmx<size>        Java\u306E\u6700\u5927\u30D2\u30FC\u30D7\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xnoclassgc       \u30AF\u30E9\u30B9\u306E\u30AC\u30D9\u30FC\u30B8\u30FB\u30B3\u30EC\u30AF\u30B7\u30E7\u30F3\u3092\u7121\u52B9\u306B\u3059\u308B\n    -Xprof            CPU\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u30FB\u30C7\u30FC\u30BF\u3092\u51FA\u529B\u3059\u308B\n    -Xrs              Java/VM\u306B\u3088\u308BOS\u30B7\u30B0\u30CA\u30EB\u306E\u4F7F\u7528\u3092\u524A\u6E1B\u3059\u308B(\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u3092\u53C2\u7167)\n    -Xshare:auto      \u53EF\u80FD\u3067\u3042\u308C\u3070\u5171\u6709\u30AF\u30E9\u30B9\u306E\u30C7\u30FC\u30BF\u3092\u4F7F\u7528\u3059\u308B(\u30C7\u30D5\u30A9\u30EB\u30C8)\n    -Xshare:off       \u5171\u6709\u30AF\u30E9\u30B9\u306E\u30C7\u30FC\u30BF\u3092\u4F7F\u7528\u3057\u3088\u3046\u3068\u3057\u306A\u3044\n    -Xshare:on        \u5171\u6709\u30AF\u30E9\u30B9\u30FB\u30C7\u30FC\u30BF\u306E\u4F7F\u7528\u3092\u5FC5\u9808\u306B\u3057\u3001\u3067\u304D\u306A\u3051\u308C\u3070\u5931\u6557\u3059\u308B\u3002\n    -XshowSettings    \u3059\u3079\u3066\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:all\n                      \u3059\u3079\u3066\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:locale\n                      \u3059\u3079\u3066\u306E\u30ED\u30B1\u30FC\u30EB\u95A2\u9023\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:properties\n                      \u3059\u3079\u3066\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    -XshowSettings:vm \u3059\u3079\u3066\u306EVM\u95A2\u9023\u306E\u8A2D\u5B9A\u3092\u8868\u793A\u3057\u3066\u7D9A\u884C\u3059\u308B\n    \
--Xss<size>        Java\u306E\u30B9\u30EC\u30C3\u30C9\u30FB\u30B9\u30BF\u30C3\u30AF\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xverify          \u30D0\u30A4\u30C8\u30B3\u30FC\u30C9\u691C\u8A3C\u6A5F\u80FD\u306E\u30E2\u30FC\u30C9\u3092\u8A2D\u5B9A\u3059\u308B\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001<module>\u3092\u66F4\u65B0\u3057\u3066<target-module>\n                      \u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059\u3002 \n                      <target-module>\u3092ALL-UNNAMED\u306B\u8A2D\u5B9A\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\n                      \u8AAD\u307F\u53D6\u308C\u307E\u3059\u3002\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001<module>\u3092\u66F4\u65B0\u3057\u3066<package>\u3092<target-module>\u306B\n                      \u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002\n                      <target-module>\u3092ALL-UNNAMED\u306B\u8A2D\u5B9A\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\n                      \u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3067\u304D\u307E\u3059\u3002\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001<module>\u3092\u66F4\u65B0\u3057\u3066\n                      <package>\u3092<target-module>\u306B\u958B\u304D\u307E\u3059\u3002\n    --permit-illegal-access\n                      \u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u5185\u306E\u30B3\u30FC\u30C9\u306B\u3088\u308B\u3001\u540D\u524D\u306E\u3042\u308B\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5185\u306E\u30BF\u30A4\u30D7\u306E\u30E1\u30F3\u30D0\u30FC\u3078\u306E\u4E0D\u6B63\u30A2\u30AF\u30BB\u30B9\u3092\n                      \u8A31\u53EF\u3057\u307E\u3059\u3002\u3053\u306E\u4E92\u63DB\u6027\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u3001\u6B21\u306E\u30EA\u30EA\u30FC\u30B9\u3067\u524A\u9664\u3055\u308C\u307E\u3059\u3002\n    --limit-modules <module name>[,<module name>...]\n                      \u53C2\u7167\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u9818\u57DF\u3092\u5236\u9650\u3057\u307E\u3059\n    --patch-module <module>=<file>({0}<file>)*\n                      JAR\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30EA\u30BD\u30FC\u30B9\u3067\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u307E\u305F\u306F\u62E1\u5F35\u3057\u307E\u3059\n    --disable-@files  \u3055\u3089\u306A\u308B\u30D5\u30A1\u30A4\u30EB\u62E1\u5F35\u3092\u7121\u52B9\u306B\u3057\u307E\u3059\n\n\u3053\u308C\u3089\u306E\u8FFD\u52A0\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u4E88\u544A\u306A\u304F\u5909\u66F4\u3055\u308C\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002\n
+-Xss<size>        Java\u306E\u30B9\u30EC\u30C3\u30C9\u30FB\u30B9\u30BF\u30C3\u30AF\u30FB\u30B5\u30A4\u30BA\u3092\u8A2D\u5B9A\u3059\u308B\n    -Xverify          \u30D0\u30A4\u30C8\u30B3\u30FC\u30C9\u691C\u8A3C\u6A5F\u80FD\u306E\u30E2\u30FC\u30C9\u3092\u8A2D\u5B9A\u3059\u308B\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001<module>\u3092\u66F4\u65B0\u3057\u3066<target-module>\n                      \u3092\u8AAD\u307F\u53D6\u308A\u307E\u3059\u3002 \n                      <target-module>\u3092ALL-UNNAMED\u306B\u8A2D\u5B9A\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u3092\n                      \u8AAD\u307F\u53D6\u308C\u307E\u3059\u3002\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001<module>\u3092\u66F4\u65B0\u3057\u3066<package>\u3092<target-module>\u306B\n                      \u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002\n                      <target-module>\u3092ALL-UNNAMED\u306B\u8A2D\u5B9A\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u540D\u524D\u306E\u306A\u3044\u30E2\u30B8\u30E5\u30FC\u30EB\u306B\n                      \u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3067\u304D\u307E\u3059\u3002\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u5BA3\u8A00\u306B\u95A2\u4FC2\u306A\u304F\u3001<module>\u3092\u66F4\u65B0\u3057\u3066\n                      <package>\u3092<target-module>\u306B\u958B\u304D\u307E\u3059\u3002\n    --limit-modules <module name>[,<module name>...]\n                      \u53C2\u7167\u53EF\u80FD\u306A\u30E2\u30B8\u30E5\u30FC\u30EB\u306E\u9818\u57DF\u3092\u5236\u9650\u3057\u307E\u3059\n    --patch-module <module>=<file>({0}<file>)*\n                      JAR\u30D5\u30A1\u30A4\u30EB\u307E\u305F\u306F\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30EA\u30BD\u30FC\u30B9\u3067\n                      \u30E2\u30B8\u30E5\u30FC\u30EB\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u307E\u305F\u306F\u62E1\u5F35\u3057\u307E\u3059\n    --disable-@files  \u3055\u3089\u306A\u308B\u30D5\u30A1\u30A4\u30EB\u62E1\u5F35\u3092\u7121\u52B9\u306B\u3057\u307E\u3059\n\n\u3053\u308C\u3089\u306E\u8FFD\u52A0\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u4E88\u544A\u306A\u304F\u5909\u66F4\u3055\u308C\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u306FMac OS X\u56FA\u6709\u3067\u3059:\n    -XstartOnFirstThread\n                      main()\u30E1\u30BD\u30C3\u30C9\u3092\u6700\u521D(AppKit)\u306E\u30B9\u30EC\u30C3\u30C9\u3067\u5B9F\u884C\u3059\u308B\n    -Xdock:name=<application name>\n                      Dock\u306B\u8868\u793A\u3055\u308C\u308B\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u540D\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n    -Xdock:icon=<path to icon file>\n                      Dock\u306B\u8868\u793A\u3055\u308C\u308B\u30C7\u30D5\u30A9\u30EB\u30C8\u30FB\u30A2\u30A4\u30B3\u30F3\u3092\u30AA\u30FC\u30D0\u30FC\u30E9\u30A4\u30C9\u3059\u308B\n\n
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_ko.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -36,7 +36,7 @@
 
 # Translators please note do not translate the options themselves
 java.launcher.X.usage=\n    -Xbatch           \uBC31\uADF8\uB77C\uC6B4\uB4DC \uCEF4\uD30C\uC77C\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xbootclasspath/a:<{0}(\uC73C)\uB85C \uAD6C\uBD84\uB41C \uB514\uB809\uD1A0\uB9AC \uBC0F zip/jar \uD30C\uC77C>\n                      \uBD80\uD2B8\uC2A4\uD2B8\uB7A9 \uD074\uB798\uC2A4 \uACBD\uB85C \uB05D\uC5D0 \uCD94\uAC00\uD569\uB2C8\uB2E4.\n    -Xcheck:jni       JNI \uD568\uC218\uC5D0 \uB300\uD55C \uCD94\uAC00 \uAC80\uC0AC\uB97C \uC218\uD589\uD569\uB2C8\uB2E4.\n    -Xcomp            \uCCAB\uBC88\uC9F8 \uD638\uCD9C\uC5D0\uC11C \uBA54\uC18C\uB4DC \uCEF4\uD30C\uC77C\uC744 \uAC15\uC81C\uD569\uB2C8\uB2E4.\n    -Xdebug           \uC5ED \uD638\uD658\uC131\uC744 \uC704\uD574 \uC81C\uACF5\uB418\uC5C8\uC2B5\uB2C8\uB2E4.\n    -Xdiag            \uCD94\uAC00 \uC9C4\uB2E8 \uBA54\uC2DC\uC9C0\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n    -Xfuture          \uBBF8\uB798 \uAE30\uBCF8\uAC12\uC744 \uC608\uCE21\uD558\uC5EC \uAC00\uC7A5 \uC5C4\uACA9\uD55C \uAC80\uC0AC\uB97C \uC0AC\uC6A9\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xint             \uD574\uC11D\uB41C \uBAA8\uB4DC\uB9CC \uC2E4\uD589\uD569\uB2C8\uB2E4.\n    -Xinternalversion\n                      -version \uC635\uC158\uBCF4\uB2E4 \uC0C1\uC138\uD55C JVM \uBC84\uC804 \uC815\uBCF4\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4.\n    -Xloggc:<\uD30C\uC77C>    \uC2DC\uAC04 \uAE30\uB85D\uACFC \uD568\uAED8 \uD30C\uC77C\uC5D0 GC \uC0C1\uD0DC\uB97C \uAE30\uB85D\uD569\uB2C8\uB2E4.\n    -Xmixed           \uD63C\uD569 \uBAA8\uB4DC\uB97C \uC2E4\uD589\uD569\uB2C8\uB2E4(\uAE30\uBCF8\uAC12).\n    -Xmn<\uD06C\uAE30>        \uC80A\uC740 \uC138\uB300(Nursery)\uB97C \uC704\uD574 \uD799\uC758 \uCD08\uAE30 \uBC0F \uCD5C\uB300\n                      \uD06C\uAE30(\uBC14\uC774\uD2B8)\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xms<\uD06C\uAE30>        \uCD08\uAE30 Java \uD799 \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xmx<\uD06C\uAE30>        \uCD5C\uB300 Java \uD799 \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xnoclassgc       \uD074\uB798\uC2A4\uC758 \uBD88\uD544\uC694\uD55C \uC815\uBCF4 \uBAA8\uC74C\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xprof            CPU \uD504\uB85C\uD30C\uC77C \uC791\uC131 \uB370\uC774\uD130\uB97C \uCD9C\uB825\uD569\uB2C8\uB2E4(\uC0AC\uC6A9\uB418\uC9C0 \uC54A\uC74C).\n    -Xrs              Java/VM\uC5D0 \uC758\uD55C OS \uC2E0\uD638 \uC0AC\uC6A9\uC744 \uC904\uC785\uB2C8\uB2E4(\uC124\uBA85\uC11C \uCC38\uC870).\n    -Xshare:auto      \uAC00\uB2A5\uD55C \uACBD\uC6B0 \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uD569\uB2C8\uB2E4(\uAE30\uBCF8\uAC12).\n    -Xshare:off       \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130 \uC0AC\uC6A9\uC744 \uC2DC\uB3C4\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.\n    -Xshare:on        \uACF5\uC720 \uD074\uB798\uC2A4 \uB370\uC774\uD130\uB97C \uC0AC\uC6A9\uD574\uC57C \uD569\uB2C8\uB2E4. \uADF8\uB807\uC9C0 \uC54A\uC744 \uACBD\uC6B0 \uC2E4\uD328\uD569\uB2C8\uB2E4.\n    -XshowSettings    \uBAA8\uB4E0 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:all\n                      \uBAA8\uB4E0 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:locale\n                      \uBAA8\uB4E0 \uB85C\uCF00\uC77C \uAD00\uB828 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:properties\n                      \uBAA8\uB4E0 \uC18D\uC131 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -XshowSettings:vm \uBAA8\uB4E0 VM \uAD00\uB828 \uC124\uC815\uC744 \uD45C\uC2DC\uD55C \uD6C4 \uACC4\uC18D\uD569\uB2C8\uB2E4.\n    -Xss<\uD06C\uAE30>        Java \uC2A4\uB808\uB4DC \uC2A4\uD0DD \uD06C\uAE30\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n    -Xverify          \uBC14\uC774\uD2B8\uCF54\uB4DC \uAC80\uC99D\uC790\uC758 \uBAA8\uB4DC\uB97C \uC124\uC815\uD569\uB2C8\uB2E4.\n  \
-  --add-reads <\uBAA8\uB4C8>=<\uB300\uC0C1-\uBAA8\uB4C8>(,<\uB300\uC0C1-\uBAA8\uB4C8>)*\n                      \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774 <\uB300\uC0C1-\uBAA8\uB4C8>\uC744 \uC77D\uB3C4\uB85D\n                      <\uBAA8\uB4C8>\uC744 \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n                      <\uB300\uC0C1-\uBAA8\uB4C8>\uC740 \uC774\uB984\uC774 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC740 \uBAA8\uB4E0 \uBAA8\uB4C8\uC744 \uC77D\uC744 \uC218 \uC788\uB294\n                      ALL-UNNAMED\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n    --add-exports <\uBAA8\uB4C8>/<\uD328\uD0A4\uC9C0>=<\uB300\uC0C1-\uBAA8\uB4C8>(,<\uB300\uC0C1-\uBAA8\uB4C8>)*\n                      \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774 <\uD328\uD0A4\uC9C0>\uB97C <\uB300\uC0C1-\uBAA8\uB4C8>\uB85C \uC775\uC2A4\uD3EC\uD2B8\uD558\uB3C4\uB85D\n                      <\uBAA8\uB4C8>\uC744 \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n                      <\uB300\uC0C1-\uBAA8\uB4C8>\uC740 \uC774\uB984\uC774 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC740 \uBAA8\uB4E0 \uBAA8\uB4C8\uB85C \uC775\uC2A4\uD3EC\uD2B8\uD560 \uC218 \uC788\uB294\n                      ALL-UNNAMED\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n    --add-opens <\uBAA8\uB4C8>/<\uD328\uD0A4\uC9C0>=<\uB300\uC0C1-\uBAA8\uB4C8>(,<\uB300\uC0C1-\uBAA8\uB4C8>)*\n                      \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774 <\uD328\uD0A4\uC9C0>\uB97C <\uB300\uC0C1-\uBAA8\uB4C8>\uB85C \uC5F4\uB3C4\uB85D\n                      <\uBAA8\uB4C8>\uC744 \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n    --permit-illegal-access\n                      \uC774\uB984\uC774 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC740 \uBAA8\uB4C8\uC758 \uCF54\uB4DC\uB97C \uC0AC\uC6A9\uD558\uC5EC \uC774\uB984\uC774 \uC9C0\uC815\uB41C\n                      \uBAA8\uB4C8\uC758 \uC720\uD615 \uBA64\uBC84\uC5D0 \uB300\uD55C \uC798\uBABB\uB41C \uC561\uC138\uC2A4\uB97C \uD5C8\uC6A9\uD569\uB2C8\uB2E4. \uC774 \uD638\uD658\uC131\n                      \uC635\uC158\uC740 \uB2E4\uC74C \uB9B4\uB9AC\uC2A4\uC5D0\uC11C \uC81C\uAC70\uB429\uB2C8\uB2E4.\n    --limit-modules <\uBAA8\uB4C8 \uC774\uB984>[,<\uBAA8\uB4C8 \uC774\uB984>...]\n                      \uAD00\uCC30 \uAC00\uB2A5\uD55C \uBAA8\uB4C8\uC758 \uACF5\uC6A9\uC744 \uC81C\uD55C\uD569\uB2C8\uB2E4.\n    --patch-module <\uBAA8\uB4C8>=<\uD30C\uC77C>({0}<\uD30C\uC77C>)*\n                      JAR \uD30C\uC77C \uB610\uB294 \uB514\uB809\uD1A0\uB9AC\uC758 \uD074\uB798\uC2A4\uC640 \uB9AC\uC18C\uC2A4\uB85C\n                      \uBAA8\uB4C8\uC744 \uBB34\uD6A8\uD654\uD558\uAC70\uB098 \uC778\uC218\uD654\uD569\uB2C8\uB2E4.\n    --disable-@files  \uCD94\uAC00 \uC778\uC218 \uD30C\uC77C \uD655\uC7A5\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n\n\uC774\uB7EC\uD55C \uCD94\uAC00 \uC635\uC158\uC740 \uD1B5\uC9C0 \uC5C6\uC774 \uBCC0\uACBD\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n
+  --add-reads <\uBAA8\uB4C8>=<\uB300\uC0C1-\uBAA8\uB4C8>(,<\uB300\uC0C1-\uBAA8\uB4C8>)*\n                      \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774 <\uB300\uC0C1-\uBAA8\uB4C8>\uC744 \uC77D\uB3C4\uB85D\n                      <\uBAA8\uB4C8>\uC744 \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n                      <\uB300\uC0C1-\uBAA8\uB4C8>\uC740 \uC774\uB984\uC774 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC740 \uBAA8\uB4E0 \uBAA8\uB4C8\uC744 \uC77D\uC744 \uC218 \uC788\uB294\n                      ALL-UNNAMED\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n    --add-exports <\uBAA8\uB4C8>/<\uD328\uD0A4\uC9C0>=<\uB300\uC0C1-\uBAA8\uB4C8>(,<\uB300\uC0C1-\uBAA8\uB4C8>)*\n                      \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774 <\uD328\uD0A4\uC9C0>\uB97C <\uB300\uC0C1-\uBAA8\uB4C8>\uB85C \uC775\uC2A4\uD3EC\uD2B8\uD558\uB3C4\uB85D\n                      <\uBAA8\uB4C8>\uC744 \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n                      <\uB300\uC0C1-\uBAA8\uB4C8>\uC740 \uC774\uB984\uC774 \uC9C0\uC815\uB418\uC9C0 \uC54A\uC740 \uBAA8\uB4E0 \uBAA8\uB4C8\uB85C \uC775\uC2A4\uD3EC\uD2B8\uD560 \uC218 \uC788\uB294\n                      ALL-UNNAMED\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n    --add-opens <\uBAA8\uB4C8>/<\uD328\uD0A4\uC9C0>=<\uB300\uC0C1-\uBAA8\uB4C8>(,<\uB300\uC0C1-\uBAA8\uB4C8>)*\n                      \uBAA8\uB4C8 \uC120\uC5B8\uC5D0 \uAD00\uACC4\uC5C6\uC774 <\uD328\uD0A4\uC9C0>\uB97C <\uB300\uC0C1-\uBAA8\uB4C8>\uB85C \uC5F4\uB3C4\uB85D\n                      <\uBAA8\uB4C8>\uC744 \uC5C5\uB370\uC774\uD2B8\uD569\uB2C8\uB2E4.\n    --limit-modules <\uBAA8\uB4C8 \uC774\uB984>[,<\uBAA8\uB4C8 \uC774\uB984>...]\n                      \uAD00\uCC30 \uAC00\uB2A5\uD55C \uBAA8\uB4C8\uC758 \uACF5\uC6A9\uC744 \uC81C\uD55C\uD569\uB2C8\uB2E4.\n    --patch-module <\uBAA8\uB4C8>=<\uD30C\uC77C>({0}<\uD30C\uC77C>)*\n                      JAR \uD30C\uC77C \uB610\uB294 \uB514\uB809\uD1A0\uB9AC\uC758 \uD074\uB798\uC2A4\uC640 \uB9AC\uC18C\uC2A4\uB85C\n                      \uBAA8\uB4C8\uC744 \uBB34\uD6A8\uD654\uD558\uAC70\uB098 \uC778\uC218\uD654\uD569\uB2C8\uB2E4.\n    --disable-@files  \uCD94\uAC00 \uC778\uC218 \uD30C\uC77C \uD655\uC7A5\uC744 \uC0AC\uC6A9 \uC548\uD568\uC73C\uB85C \uC124\uC815\uD569\uB2C8\uB2E4.\n\n\uC774\uB7EC\uD55C \uCD94\uAC00 \uC635\uC158\uC740 \uD1B5\uC9C0 \uC5C6\uC774 \uBCC0\uACBD\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4.\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\uB2E4\uC74C\uC740 Mac OS X\uC5D0 \uD2B9\uC815\uB41C \uC635\uC158\uC785\uB2C8\uB2E4.\n    -XstartOnFirstThread\n                      \uCCAB\uBC88\uC9F8 (AppKit) \uC2A4\uB808\uB4DC\uC5D0 main() \uBA54\uC18C\uB4DC\uB97C \uC2E4\uD589\uD569\uB2C8\uB2E4.\n    -Xdock:name=<application name>\n                      \uACE0\uC815\uC73C\uB85C \uD45C\uC2DC\uB41C \uAE30\uBCF8 \uC560\uD50C\uB9AC\uCF00\uC774\uC158 \uC774\uB984\uC744 \uBB34\uD6A8\uD654\uD569\uB2C8\uB2E4.\n    -Xdock:icon=<path to icon file>\n                      \uACE0\uC815\uC73C\uB85C \uD45C\uC2DC\uB41C \uAE30\uBCF8 \uC544\uC774\uCF58\uC744 \uBB34\uD6A8\uD654\uD569\uB2C8\uB2E4.\n\n
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_pt_BR.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -35,7 +35,7 @@
 mostra a tela inicial com a imagem especificada\n                  Imagens HiDPI dimensionadas s\u00E3o suportadas automaticamente e utilizadas,\n                  se dispon\u00EDveis. O nome do arquivo de imagem n\u00E3o dimensionada, por exemplo, image.ext,\n                  deve ser informado sempre como argumento para a op\u00E7\u00E3o -splash.\n                  A imagem dimensionada mais apropriada fornecida ser\u00E1 selecionada\n                  automaticamente.\n                  Consulte a documenta\u00E7\u00E3o da API de Tela Inicial para obter mais informa\u00E7\u00F5es\n    @arquivos de argumento\n                  Um ou mais arquivos de argumentos que cont\u00EAm op\u00E7\u00F5es\n    -disable-@files\n                  impede expans\u00E3o adicional de arquivo de argumentos\nnPara especificar um argumento para uma op\u00E7\u00E3o longa, voc\u00EA pode usar --<name>=<value> ou\n--<name> <value>.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\n    -Xbatch           desativa compila\u00E7\u00E3o em segundo plano\n    -Xbootclasspath/a:<diret\u00F3rios e arquivos zip/jar separados por {0}>\n                      anexa ao final do caminho de classe de bootstrap\n    -Xcheck:jni       executa verifica\u00E7\u00F5es adicionais de fun\u00E7\u00F5es JNI\n    -Xcomp            for\u00E7a a compila\u00E7\u00E3o de m\u00E9todos na primeira chamada\n    -Xdebug           fornecido para compatibilidade reversa\n    -Xdiag            mostra mensagens adicionais de diagn\u00F3stico\n        -Xfuture          ativa verifica\u00E7\u00F5es de n\u00EDvel m\u00E1ximo, antecipando padr\u00E3o futuro\n    -Xint             somente execu\u00E7\u00E3o de modo interpretado\n    -Xinternalversion\n                      exibe informa\u00E7\u00F5es mais detalhadas da vers\u00E3o da JVM do que a\n                      op\u00E7\u00E3o -version\n    -Xloggc:<file>    registra status de GC em um arquivo com timestamps\n    -Xmixed           execu\u00E7\u00E3o em modo misto (padr\u00E3o)\n    -Xmn<size>        define o tamanho inicial e m\u00E1ximo (em bytes) do heap\n                      para a gera\u00E7\u00E3o jovem (infantil)\n    -Xms<size>        define tamanho inicial do heap Java\n    -Xmx<size>        define tamanho m\u00E1ximo do heap Java\n    -Xnoclassgc       desativa coleta de lixo de classe\n    -Xprof            gera dados de perfil de cpu (obsoleto)\n    -Xrs              reduz uso de sinais do SO por Java/VM (ver documenta\u00E7\u00E3o)\n    -Xshare:auto      usa dados de classe compartilhados se poss\u00EDvel (padr\u00E3o)\n    -Xshare:off       n\u00E3o tenta usar dados de classe compartilhados\n    -Xshare:on        exige o uso de dados de classe compartilhados; caso contr\u00E1rio, falhar\u00E1.\n    -XshowSettings    mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:all\n                      mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:locale\n                      mostra todas as defini\u00E7\u00F5es relacionadas \u00E0 configura\u00E7\u00E3o regional e continua\n    -XshowSettings:properties\n                      mostra todas as defini\u00E7\u00F5es de propriedade e continua\n    -XshowSettings:vm mostra todas as defini\u00E7\u00F5es relacionadas a vm e continua\n    -Xss<size>        define o tamanho da pilha de thread java\n    -Xverify          define o modo do verificador de c\u00F3digo de byte\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      atualiza <module> para ler <target-module>, independentemente\n                      da declara\u00E7\u00E3o de m\u00F3dulo. \n                      <target-module> pode ser ALL-UNNAMED para ler todos os m\u00F3dulos\n                      sem nome.\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      atualiza <module> para exportar <package> para <target-module>,\n                      independentemente da declara\u00E7\u00E3o de m\u00F3dulo.\n                      <target-module> pode ser ALL-UNNAMED para exportar todos os\n                      m\u00F3dulos sem nome.\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      atualiza <module> para abrir <package> para\n                      <target-module>, independentemente da declara\u00E7\u00E3o de m\u00F3dulo.\n    --permit-illegal-access\n                      permite acesso inv\u00E1lido aos membros dos tipos nos m\u00F3dulos com nome\n                     por c\u00F3digo nos m\u00F3dulos sem nomes. Esta op\u00E7\u00E3o de compatibilidade ser\u00E1\n                      removida na pr\u00F3xima release.\n    --limit-modules <module name>[,<module name>...]\n                      limita o universo de m\u00F3dulos observ\u00E1veis\n--patch-module <module>=<file>({0}<file>)*\n                      substitui ou amplia um m\u00F3dulo com classes e recursos\n                      em arquivos ou \
+java.launcher.X.usage=\n    -Xbatch           desativa compila\u00E7\u00E3o em segundo plano\n    -Xbootclasspath/a:<diret\u00F3rios e arquivos zip/jar separados por {0}>\n                      anexa ao final do caminho de classe de bootstrap\n    -Xcheck:jni       executa verifica\u00E7\u00F5es adicionais de fun\u00E7\u00F5es JNI\n    -Xcomp            for\u00E7a a compila\u00E7\u00E3o de m\u00E9todos na primeira chamada\n    -Xdebug           fornecido para compatibilidade reversa\n    -Xdiag            mostra mensagens adicionais de diagn\u00F3stico\n        -Xfuture          ativa verifica\u00E7\u00F5es de n\u00EDvel m\u00E1ximo, antecipando padr\u00E3o futuro\n    -Xint             somente execu\u00E7\u00E3o de modo interpretado\n    -Xinternalversion\n                      exibe informa\u00E7\u00F5es mais detalhadas da vers\u00E3o da JVM do que a\n                      op\u00E7\u00E3o -version\n    -Xloggc:<file>    registra status de GC em um arquivo com timestamps\n    -Xmixed           execu\u00E7\u00E3o em modo misto (padr\u00E3o)\n    -Xmn<size>        define o tamanho inicial e m\u00E1ximo (em bytes) do heap\n                      para a gera\u00E7\u00E3o jovem (infantil)\n    -Xms<size>        define tamanho inicial do heap Java\n    -Xmx<size>        define tamanho m\u00E1ximo do heap Java\n    -Xnoclassgc       desativa coleta de lixo de classe\n    -Xprof            gera dados de perfil de cpu (obsoleto)\n    -Xrs              reduz uso de sinais do SO por Java/VM (ver documenta\u00E7\u00E3o)\n    -Xshare:auto      usa dados de classe compartilhados se poss\u00EDvel (padr\u00E3o)\n    -Xshare:off       n\u00E3o tenta usar dados de classe compartilhados\n    -Xshare:on        exige o uso de dados de classe compartilhados; caso contr\u00E1rio, falhar\u00E1.\n    -XshowSettings    mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:all\n                      mostra todas as defini\u00E7\u00F5es e continua\n    -XshowSettings:locale\n                      mostra todas as defini\u00E7\u00F5es relacionadas \u00E0 configura\u00E7\u00E3o regional e continua\n    -XshowSettings:properties\n                      mostra todas as defini\u00E7\u00F5es de propriedade e continua\n    -XshowSettings:vm mostra todas as defini\u00E7\u00F5es relacionadas a vm e continua\n    -Xss<size>        define o tamanho da pilha de thread java\n    -Xverify          define o modo do verificador de c\u00F3digo de byte\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      atualiza <module> para ler <target-module>, independentemente\n                      da declara\u00E7\u00E3o de m\u00F3dulo. \n                      <target-module> pode ser ALL-UNNAMED para ler todos os m\u00F3dulos\n                      sem nome.\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      atualiza <module> para exportar <package> para <target-module>,\n                      independentemente da declara\u00E7\u00E3o de m\u00F3dulo.\n                      <target-module> pode ser ALL-UNNAMED para exportar todos os\n                      m\u00F3dulos sem nome.\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      atualiza <module> para abrir <package> para\n                      <target-module>, independentemente da declara\u00E7\u00E3o de m\u00F3dulo.\n    --limit-modules <module name>[,<module name>...]\n                      limita o universo de m\u00F3dulos observ\u00E1veis\n--patch-module <module>=<file>({0}<file>)*\n                      substitui ou amplia um m\u00F3dulo com classes e recursos\n                      em arquivos ou \
 diret\u00F3rios JAR.\n\nEssas op\u00E7\u00F5es extras est\u00E3o sujeitas a altera\u00E7\u00E3o sem aviso.\n
 
 # Translators please note do not translate the options themselves
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_sv.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -35,7 +35,7 @@
            tillg\u00E4ngliga. Filnamnet p\u00E5 den oskal\u00E4ndrade bilden, t.ex. image.ext,\n                  ska alltid \u00F6verf\u00F6ras som argument till alternativet -splash.\n                  Den l\u00E4mpligaste skal\u00E4ndrade bilden v\u00E4ljs\n                  automatiskt.\n                  Mer information finns i dokumentationen f\u00F6r API:t SplashScreen\n    @argument filer\n                  en eller flera argumentfiler som inneh\u00E5ller alternativ\n    -disable-@files\n                  f\u00F6rhindra ytterligare ut\u00F6kning av argumentfiler\nOm du vill ange ett argument f\u00F6r ett l\u00E5ngt alternativ kan du anv\u00E4nda --<namn>=<v\u00E4rde> eller\n--<namn> <v\u00E4rde>.\n
 
 # Translators please note do not translate the options themselves
-java.launcher.X.usage=\n    -Xbatch           avaktivera bakgrundskompilering\n    -Xbootclasspath/a:<kataloger och zip-/jar-filer avgr\u00E4nsade med {0}>\n                      l\u00E4gg till sist i klass\u00F6kv\u00E4gen f\u00F6r programladdning\n    -Xcheck:jni       utf\u00F6r fler kontroller f\u00F6r JNI-funktioner\n    -Xcomp            tvingar kompilering av metoder vid det f\u00F6rsta anropet\n    -Xdebug           tillhandah\u00E5lls f\u00F6r bak\u00E5tkompatibilitet\n    -Xdiag            visa fler diagnostiska meddelanden\n    -Xfuture          aktivera str\u00E4ngaste kontroller, f\u00F6rv\u00E4ntad framtida standard\n    -Xint             endast exekvering i tolkat l\u00E4ge\n    -Xinternalversion\n                      visar mer detaljerad information om JVM-version \u00E4n\n                      alternativet -version\n    -Xloggc:<fil>    logga GC-status till en fil med tidsst\u00E4mplar\n    -Xmixed           exekvering i blandat l\u00E4ge (standard)\n    -Xmn<storlek>     anger ursprunglig och maximal storlek (i byte) f\u00F6r h\u00F6gen f\u00F6r\n                      generationen med nyare objekt (h\u00F6gen f\u00F6r tilldelning av nya objekt)\n    -Xms<storlek>     ange ursprunglig storlek f\u00F6r Java-heap-utrymmet\n    -Xmx<storlek>     ange st\u00F6rsta storlek f\u00F6r Java-heap-utrymmet\n    -Xnoclassgc       avaktivera klasskr\u00E4pinsamling\n    -Xprof            utdata f\u00F6r processorprofilering (inaktuellt)\n    -Xrs              minska operativsystemssignalanv\u00E4ndning f\u00F6r Java/VM (se dokumentationen)\n    -Xshare:auto      anv\u00E4nd delade klassdata om m\u00F6jligt (standard)\n    -Xshare:off       f\u00F6rs\u00F6k inte anv\u00E4nda delade klassdata\n    -Xshare:on        kr\u00E4v anv\u00E4ndning av delade klassdata, utf\u00F6r inte i annat fall.\n    -XshowSettings    visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:all\n                      visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:locale\n                      visa alla spr\u00E5kkonventionsrelaterade inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:properties\n                      visa alla egenskapsinst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:vm visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n    -Xss<storlek>     ange storlek f\u00F6r java-tr\u00E5dsstacken\n    -Xverify          anger l\u00E4ge f\u00F6r bytekodverifieraren\n    --add-reads <modul>=<m\u00E5lmodul>(,<m\u00E5lmodul>)*\n                      uppdaterar <modul> f\u00F6r att l\u00E4sa <m\u00E5lmodul>, oavsett\n                      moduldeklarationen. \n                      <m\u00E5lmodul> kan vara ALL-UNNAMED f\u00F6r att l\u00E4sa alla\n                      ej namngivna moduler.\n    --add-exports <modul>/<paket>=<m\u00E5lmodul>(,<m\u00E5lmodul>)*\n                      uppdaterar <modul> f\u00F6r att exportera <paket> till <m\u00E5lmodul>,\n                      oavsett moduldeklarationen.\n                      <m\u00E5lmodul> kan vara ALL-UNNAMED f\u00F6r att exportera till alla\n                      ej namngivna moduler.\n    --add-opens <modul>/<paket>=<m\u00E5lmodul>(,<m\u00E5lmodul>)*\n                      uppdaterar <modul> f\u00F6r att \u00F6ppna <paket> till\n                      <m\u00E5lmodul>, oavsett moduldeklarationen.\n    --permit-illegal-access\n                      till\u00E5t otill\u00E5ten \u00E5tkomst till medlemmar av typer i namngivna\n                      moduler av kod i ej namngivna moduler. Det h\u00E4r \n                      kompatibilitetsalternativet tas bort i n\u00E4sta utg\u00E5va.\n    --limit-modules <modulnamn>[,<modulnamn>...]\n                      begr\u00E4nsar universumet med observerbara moduler\n    --patch-module <modul>=<fil>({0}<fil>)*\n                      \u00E5sidos\u00E4tt eller ut\u00F6ka en modul med klasser och resurser\n                      i JAR-filer eller kataloger.\n    --disable-@files  avaktivera ytterligare \
+java.launcher.X.usage=\n    -Xbatch           avaktivera bakgrundskompilering\n    -Xbootclasspath/a:<kataloger och zip-/jar-filer avgr\u00E4nsade med {0}>\n                      l\u00E4gg till sist i klass\u00F6kv\u00E4gen f\u00F6r programladdning\n    -Xcheck:jni       utf\u00F6r fler kontroller f\u00F6r JNI-funktioner\n    -Xcomp            tvingar kompilering av metoder vid det f\u00F6rsta anropet\n    -Xdebug           tillhandah\u00E5lls f\u00F6r bak\u00E5tkompatibilitet\n    -Xdiag            visa fler diagnostiska meddelanden\n    -Xfuture          aktivera str\u00E4ngaste kontroller, f\u00F6rv\u00E4ntad framtida standard\n    -Xint             endast exekvering i tolkat l\u00E4ge\n    -Xinternalversion\n                      visar mer detaljerad information om JVM-version \u00E4n\n                      alternativet -version\n    -Xloggc:<fil>    logga GC-status till en fil med tidsst\u00E4mplar\n    -Xmixed           exekvering i blandat l\u00E4ge (standard)\n    -Xmn<storlek>     anger ursprunglig och maximal storlek (i byte) f\u00F6r h\u00F6gen f\u00F6r\n                      generationen med nyare objekt (h\u00F6gen f\u00F6r tilldelning av nya objekt)\n    -Xms<storlek>     ange ursprunglig storlek f\u00F6r Java-heap-utrymmet\n    -Xmx<storlek>     ange st\u00F6rsta storlek f\u00F6r Java-heap-utrymmet\n    -Xnoclassgc       avaktivera klasskr\u00E4pinsamling\n    -Xprof            utdata f\u00F6r processorprofilering (inaktuellt)\n    -Xrs              minska operativsystemssignalanv\u00E4ndning f\u00F6r Java/VM (se dokumentationen)\n    -Xshare:auto      anv\u00E4nd delade klassdata om m\u00F6jligt (standard)\n    -Xshare:off       f\u00F6rs\u00F6k inte anv\u00E4nda delade klassdata\n    -Xshare:on        kr\u00E4v anv\u00E4ndning av delade klassdata, utf\u00F6r inte i annat fall.\n    -XshowSettings    visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:all\n                      visa alla inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:locale\n                      visa alla spr\u00E5kkonventionsrelaterade inst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:properties\n                      visa alla egenskapsinst\u00E4llningar och forts\u00E4tt\n    -XshowSettings:vm visa alla vm-relaterade inst\u00E4llningar och forts\u00E4tt\n    -Xss<storlek>     ange storlek f\u00F6r java-tr\u00E5dsstacken\n    -Xverify          anger l\u00E4ge f\u00F6r bytekodverifieraren\n    --add-reads <modul>=<m\u00E5lmodul>(,<m\u00E5lmodul>)*\n                      uppdaterar <modul> f\u00F6r att l\u00E4sa <m\u00E5lmodul>, oavsett\n                      moduldeklarationen. \n                      <m\u00E5lmodul> kan vara ALL-UNNAMED f\u00F6r att l\u00E4sa alla\n                      ej namngivna moduler.\n    --add-exports <modul>/<paket>=<m\u00E5lmodul>(,<m\u00E5lmodul>)*\n                      uppdaterar <modul> f\u00F6r att exportera <paket> till <m\u00E5lmodul>,\n                      oavsett moduldeklarationen.\n                      <m\u00E5lmodul> kan vara ALL-UNNAMED f\u00F6r att exportera till alla\n                      ej namngivna moduler.\n    --add-opens <modul>/<paket>=<m\u00E5lmodul>(,<m\u00E5lmodul>)*\n                      uppdaterar <modul> f\u00F6r att \u00F6ppna <paket> till\n                      <m\u00E5lmodul>, oavsett moduldeklarationen.\n    --limit-modules <modulnamn>[,<modulnamn>...]\n                      begr\u00E4nsar universumet med observerbara moduler\n    --patch-module <modul>=<fil>({0}<fil>)*\n                      \u00E5sidos\u00E4tt eller ut\u00F6ka en modul med klasser och resurser\n                      i JAR-filer eller kataloger.\n    --disable-@files  avaktivera ytterligare \
 argumentfilsut\u00F6kning\n\nDe h\u00E4r extraalternativen kan \u00E4ndras utan f\u00F6reg\u00E5ende meddelande.\n
 
 # Translators please note do not translate the options themselves
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_zh_CN.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -36,7 +36,7 @@
 
 # Translators please note do not translate the options themselves
 java.launcher.X.usage=\n    -Xbatch           \u7981\u7528\u540E\u53F0\u7F16\u8BD1\n    -Xbootclasspath/a:<\u7528 {0} \u5206\u9694\u7684\u76EE\u5F55\u548C zip/jar \u6587\u4EF6>\n                      \u9644\u52A0\u5728\u5F15\u5BFC\u7C7B\u8DEF\u5F84\u672B\u5C3E\n    -Xcheck:jni       \u5BF9 JNI \u51FD\u6570\u6267\u884C\u5176\u4ED6\u68C0\u67E5\n    -Xcomp            \u5728\u9996\u6B21\u8C03\u7528\u65F6\u5F3A\u5236\u4F7F\u7528\u7684\u7F16\u8BD1\u65B9\u6CD5\n    -Xdebug           \u4E3A\u5B9E\u73B0\u5411\u540E\u517C\u5BB9\u800C\u63D0\u4F9B\n    -Xdiag            \u663E\u793A\u9644\u52A0\u8BCA\u65AD\u6D88\u606F\n    -Xfuture          \u542F\u7528\u6700\u4E25\u683C\u7684\u68C0\u67E5, \u9884\u671F\u5C06\u6765\u7684\u9ED8\u8BA4\u503C\n    -Xint             \u4EC5\u89E3\u91CA\u6A21\u5F0F\u6267\u884C\n    -Xinternalversion\n                      \u663E\u793A\u6BD4 -version \u9009\u9879\u66F4\u8BE6\u7EC6\u7684 JVM\n                      \u7248\u672C\u4FE1\u606F\n    -Xloggc:<\u6587\u4EF6>    \u5C06 GC \u72B6\u6001\u8BB0\u5F55\u5728\u6587\u4EF6\u4E2D (\u5E26\u65F6\u95F4\u6233)\n    -Xmixed           \u6DF7\u5408\u6A21\u5F0F\u6267\u884C (\u9ED8\u8BA4\u503C)\n    -Xmn<\u5927\u5C0F>        \u4E3A\u5E74\u8F7B\u4EE3 (\u65B0\u751F\u4EE3) \u8BBE\u7F6E\u521D\u59CB\u548C\u6700\u5927\u5806\u5927\u5C0F\n                      (\u4EE5\u5B57\u8282\u4E3A\u5355\u4F4D)\n    -Xms<\u5927\u5C0F>        \u8BBE\u7F6E\u521D\u59CB Java \u5806\u5927\u5C0F\n    -Xmx<\u5927\u5C0F>        \u8BBE\u7F6E\u6700\u5927 Java \u5806\u5927\u5C0F\n    -Xnoclassgc       \u7981\u7528\u7C7B\u5783\u573E\u6536\u96C6\n    -Xprof            \u8F93\u51FA cpu \u5206\u6790\u6570\u636E (\u5DF2\u8FC7\u65F6)\n    -Xrs              \u51CF\u5C11 Java/VM \u5BF9\u64CD\u4F5C\u7CFB\u7EDF\u4FE1\u53F7\u7684\u4F7F\u7528 (\u8BF7\u53C2\u9605\u6587\u6863)\n    -Xshare:auto      \u5728\u53EF\u80FD\u7684\u60C5\u51B5\u4E0B\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E (\u9ED8\u8BA4\u503C)\n    -Xshare:off       \u4E0D\u5C1D\u8BD5\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E\n    -Xshare:on        \u8981\u6C42\u4F7F\u7528\u5171\u4EAB\u7C7B\u6570\u636E, \u5426\u5219\u5C06\u5931\u8D25\u3002\n    -XshowSettings    \u663E\u793A\u6240\u6709\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:all\n                      \u663E\u793A\u6240\u6709\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:locale\n                      \u663E\u793A\u6240\u6709\u4E0E\u533A\u57DF\u8BBE\u7F6E\u76F8\u5173\u7684\u8BBE\u7F6E\u5E76\u7EE7\u7EEDe\n    -XshowSettings:properties\n                      \u663E\u793A\u6240\u6709\u5C5E\u6027\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -XshowSettings:vm \u663E\u793A\u6240\u6709\u4E0E vm \u76F8\u5173\u7684\u8BBE\u7F6E\u5E76\u7EE7\u7EED\n    -Xss<\u5927\u5C0F>        \u8BBE\u7F6E Java \u7EBF\u7A0B\u5806\u6808\u5927\u5C0F\n    -Xverify          \u8BBE\u7F6E\u5B57\u8282\u7801\u9A8C\u8BC1\u5668\u7684\u6A21\u5F0F\n    --add-reads <\u6A21\u5757>=<\u76EE\u6807\u6A21\u5757>(,<\u76EE\u6807\u6A21\u5757>)*\n                      \u66F4\u65B0 <\u6A21\u5757> \u4EE5\u8BFB\u53D6 <\u76EE\u6807\u6A21\u5757>,\n                      \u800C\u65E0\u8BBA\u6A21\u5757\u58F0\u660E\u5982\u4F55\u3002\n                      <\u76EE\u6807\u6A21\u5757> \u53EF\u4EE5\u662F ALL-UNNAMED \u4EE5\u8BFB\u53D6\u6240\u6709\u672A\u547D\u540D\n                      \u6A21\u5757\u3002\n    --add-exports <\u6A21\u5757>/<\u7A0B\u5E8F\u5305>=<\u76EE\u6807\u6A21\u5757>(,<\u76EE\u6807\u6A21\u5757>)*\n                      \u66F4\u65B0 <\u6A21\u5757> \u4EE5\u5C06 <\u7A0B\u5E8F\u5305> \u5BFC\u51FA\u5230 <\u76EE\u6807\u6A21\u5757>,\n                      \u800C\u65E0\u8BBA\u6A21\u5757\u58F0\u660E\u5982\u4F55\u3002\n                      <\u76EE\u6807\u6A21\u5757> \u53EF\u4EE5\u662F ALL-UNNAMED \u4EE5\u5BFC\u51FA\u5230\u6240\u6709\n                      \u672A\u547D\u540D\u6A21\u5757\u3002\n    --add-opens <\u6A21\u5757>/<\u7A0B\u5E8F\u5305>=<\u76EE\u6807\u6A21\u5757>(,<\u76EE\u6807\u6A21\u5757>)*\n                      \u66F4\u65B0 <\u6A21\u5757> \
-\u4EE5\u5728 <\u76EE\u6807\u6A21\u5757> \u4E2D\n                      \u6253\u5F00 <\u7A0B\u5E8F\u5305>, \u800C\u65E0\u8BBA\u6A21\u5757\u58F0\u660E\u5982\u4F55\u3002\n    --permit-illegal-access\n                      \u5141\u8BB8\u901A\u8FC7\u672A\u547D\u540D\u6A21\u5757\u4E2D\u7684\u4EE3\u7801\u5BF9\u547D\u540D\u6A21\u5757\u4E2D\u7684\n                      \u7C7B\u578B\u6210\u5458\u8FDB\u884C\u975E\u6CD5\u8BBF\u95EE\u3002\u5C06\u5728\u4E0B\u4E00\u4E2A\u53D1\u884C\u7248\u4E2D\n                      \u5220\u9664\u6B64\u517C\u5BB9\u6027\u9009\u9879\u3002\n    --limit-modules <\u6A21\u5757\u540D\u79F0>[,<\u6A21\u5757\u540D\u79F0>...]\n                      \u9650\u5236\u53EF\u89C2\u5BDF\u6A21\u5757\u7684\u9886\u57DF\n    --patch-module <\u6A21\u5757>=<\u6587\u4EF6>({0}<\u6587\u4EF6>)*\n                      \u4F7F\u7528 JAR \u6587\u4EF6\u6216\u76EE\u5F55\u4E2D\u7684\u7C7B\u548C\u8D44\u6E90\n                      \u8986\u76D6\u6216\u589E\u5F3A\u6A21\u5757\u3002\n    --disable-@files  \u7981\u6B62\u8FDB\u4E00\u6B65\u6269\u5C55\u53C2\u6570\u6587\u4EF6\n\n\u8FD9\u4E9B\u989D\u5916\u9009\u9879\u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
+\u4EE5\u5728 <\u76EE\u6807\u6A21\u5757> \u4E2D\n                      \u6253\u5F00 <\u7A0B\u5E8F\u5305>, \u800C\u65E0\u8BBA\u6A21\u5757\u58F0\u660E\u5982\u4F55\u3002\n    --limit-modules <\u6A21\u5757\u540D\u79F0>[,<\u6A21\u5757\u540D\u79F0>...]\n                      \u9650\u5236\u53EF\u89C2\u5BDF\u6A21\u5757\u7684\u9886\u57DF\n    --patch-module <\u6A21\u5757>=<\u6587\u4EF6>({0}<\u6587\u4EF6>)*\n                      \u4F7F\u7528 JAR \u6587\u4EF6\u6216\u76EE\u5F55\u4E2D\u7684\u7C7B\u548C\u8D44\u6E90\n                      \u8986\u76D6\u6216\u589E\u5F3A\u6A21\u5757\u3002\n    --disable-@files  \u7981\u6B62\u8FDB\u4E00\u6B65\u6269\u5C55\u53C2\u6570\u6587\u4EF6\n\n\u8FD9\u4E9B\u989D\u5916\u9009\u9879\u5982\u6709\u66F4\u6539, \u6055\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\u4EE5\u4E0B\u9009\u9879\u4E3A Mac OS X \u7279\u5B9A\u7684\u9009\u9879:\n    -XstartOnFirstThread\n                      \u5728\u7B2C\u4E00\u4E2A (AppKit) \u7EBF\u7A0B\u4E0A\u8FD0\u884C main() \u65B9\u6CD5\n    -Xdock:name=<\u5E94\u7528\u7A0B\u5E8F\u540D\u79F0>\n                      \u8986\u76D6\u505C\u9760\u680F\u4E2D\u663E\u793A\u7684\u9ED8\u8BA4\u5E94\u7528\u7A0B\u5E8F\u540D\u79F0\n    -Xdock:icon=<\u56FE\u6807\u6587\u4EF6\u7684\u8DEF\u5F84>\n                      \u8986\u76D6\u505C\u9760\u680F\u4E2D\u663E\u793A\u7684\u9ED8\u8BA4\u56FE\u6807\n\n
--- a/src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/launcher/resources/launcher_zh_TW.properties	Mon Jul 17 09:14:23 2017 -0700
@@ -36,7 +36,7 @@
 
 # Translators please note do not translate the options themselves
 java.launcher.X.usage=\n    -Xbatch           \u505C\u7528\u80CC\u666F\u7DE8\u8B6F\n    -Xbootclasspath/a:<\u4EE5 {0} \u5340\u9694\u7684\u76EE\u9304\u548C zip/jar \u6A94\u6848>\n                      \u9644\u52A0\u81F3\u555F\u52D5\u5B89\u88DD\u985E\u5225\u8DEF\u5F91\u7684\u7D50\u5C3E\n    -Xcheck:jni       \u57F7\u884C\u984D\u5916\u7684 JNI \u51FD\u6578\u6AA2\u67E5\n    -Xcomp            \u5F37\u5236\u7DE8\u8B6F\u7B2C\u4E00\u500B\u547C\u53EB\u7684\u65B9\u6CD5\n    -Xdebug           \u91DD\u5C0D\u56DE\u6EAF\u76F8\u5BB9\u6027\u63D0\u4F9B\n    -Xdiag            \u986F\u793A\u984D\u5916\u7684\u8A3A\u65B7\u8A0A\u606F\n    -Xfuture          \u555F\u7528\u6700\u56B4\u683C\u7684\u6AA2\u67E5\uFF0C\u9810\u5148\u4F5C\u70BA\u5C07\u4F86\u7684\u9810\u8A2D\n    -Xint             \u50C5\u9650\u89E3\u8B6F\u6A21\u5F0F\u57F7\u884C\n    -Xinternalversion\n                      \u986F\u793A\u6BD4 -version \u9078\u9805\u66F4\u70BA\u8A73\u7D30\u7684\n                      JVM \u7248\u672C\u8CC7\u8A0A\n    -Xloggc:<file>    \u5C07 GC \u72C0\u614B\u8A18\u9304\u81F3\u6A94\u6848\u4E14\u9023\u540C\u6642\u6233\n    -Xmixed           \u6DF7\u5408\u6A21\u5F0F\u57F7\u884C (\u9810\u8A2D)\n    -Xmn<size>        \u8A2D\u5B9A\u65B0\u751F\u4EE3 (\u990A\u6210\u5340) \u4E4B\u5806\u96C6\u7684\u8D77\u59CB\u5927\u5C0F\u548C\n                      \u5927\u5C0F\u4E0A\u9650 (\u4F4D\u5143\u7D44)\n    -Xms<size>        \u8A2D\u5B9A\u8D77\u59CB Java \u5806\u96C6\u5927\u5C0F\n    -Xmx<size>        \u8A2D\u5B9A Java \u5806\u96C6\u5927\u5C0F\u4E0A\u9650\n    -Xnoclassgc       \u505C\u7528\u985E\u5225\u8CC7\u6E90\u56DE\u6536\n    -Xprof            \u8F38\u51FA cpu \u5206\u6790\u8CC7\u6599 (\u5DF2\u4E0D\u518D\u4F7F\u7528)\n    -Xrs              \u6E1B\u5C11 Java/VM \u4F7F\u7528\u7684\u4F5C\u696D\u7CFB\u7D71\u4FE1\u865F (\u8ACB\u53C3\u95B1\u6587\u4EF6)\n    -Xshare:auto      \u5728\u53EF\u80FD\u7684\u60C5\u6CC1\u4E0B\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599 (\u9810\u8A2D)\n    -Xshare:off       \u4E0D\u5617\u8A66\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599\n    -Xshare:on        \u9700\u8981\u4F7F\u7528\u5171\u7528\u985E\u5225\u8CC7\u6599\uFF0C\u5426\u5247\u6703\u5931\u6557\u3002\n    -XshowSettings    \u986F\u793A\u6240\u6709\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\u9032\u884C\u4F5C\u696D\n    -XshowSettings:all\n                      \u986F\u793A\u6240\u6709\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\u9032\u884C\u4F5C\u696D\n    -XshowSettings:locale\n                      \u986F\u793A\u6240\u6709\u5730\u5340\u8A2D\u5B9A\u76F8\u95DC\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\u9032\u884C\u4F5C\u696D\n    -XshowSettings:properties\n                      \u986F\u793A\u6240\u6709\u5C6C\u6027\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\u9032\u884C\u4F5C\u696D\n    -XshowSettings:vm \u986F\u793A\u6240\u6709 VM \u76F8\u95DC\u8A2D\u5B9A\u503C\u4E26\u7E7C\u7E8C\u9032\u884C\u4F5C\u696D\n    -Xss<size>        \u8A2D\u5B9A Java \u57F7\u884C\u7DD2\u5806\u758A\u5927\u5C0F\n    -Xverify          \u8A2D\u5B9A Bytecode \u9A57\u8B49\u7A0B\u5F0F\u7684\u6A21\u5F0F\n    --add-reads <module>=<target-module>(,<target-module>)*\n                      \u66F4\u65B0 <module> \u4EE5\u8B80\u53D6 <target-module>\uFF0C\u4E0D\u8AD6\n                      \u6A21\u7D44\u5BA3\u544A\u70BA\u4F55\u3002\n                      \u53EF\u5C07 <target-module> \u8A2D\u70BA ALL-UNNAMED \u4EE5\u8B80\u53D6\u6240\u6709\u672A\u547D\u540D\u7684\n                      \u6A21\u7D44\u3002\n    --add-exports <module>/<package>=<target-module>(,<target-module>)*\n                      \u66F4\u65B0 <module> \u4EE5\u4FBF\u5C07 <package> \u532F\u51FA\u81F3 <target-module>\uFF0C\n                      \u4E0D\u8AD6\u6A21\u7D44\u5BA3\u544A\u70BA\u4F55\u3002\n                      \u53EF\u5C07 <target-module> \u8A2D\u70BA ALL-UNNAMED \u4EE5\u532F\u51FA\u81F3\u6240\u6709\n                      \u672A\u547D\u540D\u7684\u6A21\u7D44\u3002\n    --add-opens <module>/<package>=<target-module>(,<target-module>)*\n                      \u66F4\u65B0 <module> \
-\u4EE5\u4FBF\u5C07 <package> \u958B\u555F\u81F3\n                      <target-module>\uFF0C\u4E0D\u8AD6\u6A21\u7D44\u5BA3\u544A\u70BA\u4F55\u3002\n    --permit-illegal-access\n                      \u5141\u8A31\u672A\u547D\u540D\u6A21\u7D44\u4E2D\u7684\u7A0B\u5F0F\u78BC\u5C0D\u5DF2\u547D\u540D\u6A21\u7D44\u4E2D\u7684\n                      \u985E\u578B\u6210\u54E1\u9032\u884C\u975E\u6CD5\u5B58\u53D6\u3002\u6B64\u76F8\u5BB9\u6027\u9078\u9805\u5C07\u5728\n                      \u4E0B\u4E00\u500B\u7248\u672C\u4E2D\u79FB\u9664\u3002\n    --limit-modules <module name>[,<module name>...]\n                      \u9650\u5236\u53EF\u76E3\u6E2C\u6A21\u7D44\u7684\u7BC4\u570D\n    --patch-module <module>=<file>({0}<file>)*\n                      \u8986\u5BEB\u6216\u52A0\u5F37\u542B\u6709 JAR \u6A94\u6848\u6216\u76EE\u9304\u4E2D\n                      \u985E\u5225\u548C\u8CC7\u6E90\u7684\u6A21\u7D44\u3002\n    --disable-@files  \u505C\u7528\u9032\u4E00\u6B65\u7684\u5F15\u6578\u6A94\u6848\u64F4\u5145\n\n\u4E0A\u8FF0\u7684\u984D\u5916\u9078\u9805\u82E5\u6709\u8B8A\u66F4\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
+\u4EE5\u4FBF\u5C07 <package> \u958B\u555F\u81F3\n                      <target-module>\uFF0C\u4E0D\u8AD6\u6A21\u7D44\u5BA3\u544A\u70BA\u4F55\u3002\n    --limit-modules <module name>[,<module name>...]\n                      \u9650\u5236\u53EF\u76E3\u6E2C\u6A21\u7D44\u7684\u7BC4\u570D\n    --patch-module <module>=<file>({0}<file>)*\n                      \u8986\u5BEB\u6216\u52A0\u5F37\u542B\u6709 JAR \u6A94\u6848\u6216\u76EE\u9304\u4E2D\n                      \u985E\u5225\u548C\u8CC7\u6E90\u7684\u6A21\u7D44\u3002\n    --disable-@files  \u505C\u7528\u9032\u4E00\u6B65\u7684\u5F15\u6578\u6A94\u6848\u64F4\u5145\n\n\u4E0A\u8FF0\u7684\u984D\u5916\u9078\u9805\u82E5\u6709\u8B8A\u66F4\u4E0D\u53E6\u884C\u901A\u77E5\u3002\n
 
 # Translators please note do not translate the options themselves
 java.launcher.X.macosx.usage=\n\u4E0B\u5217\u662F Mac OS X \u7279\u5B9A\u9078\u9805:\n    -XstartOnFirstThread\n                      \u5728\u7B2C\u4E00\u500B (AppKit) \u57F7\u884C\u7DD2\u57F7\u884C main() \u65B9\u6CD5\n    -Xdock:name=<application name>\n                      \u8986\u5BEB\u7D50\u5408\u8AAA\u660E\u756B\u9762\u4E2D\u986F\u793A\u7684\u9810\u8A2D\u61C9\u7528\u7A0B\u5F0F\u540D\u7A31\n    -Xdock:icon=<path to icon file>\n                      \u8986\u5BEB\u7D50\u5408\u8AAA\u660E\u756B\u9762\u4E2D\u986F\u793A\u7684\u9810\u8A2D\u5716\u793A\n\n
--- a/src/java.base/share/classes/sun/security/provider/certpath/AlgorithmChecker.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/security/provider/certpath/AlgorithmChecker.java	Mon Jul 17 09:14:23 2017 -0700
@@ -270,7 +270,7 @@
 
         AlgorithmParameters currSigAlgParams = algorithmId.getParameters();
         PublicKey currPubKey = cert.getPublicKey();
-        String currSigAlg = ((X509Certificate)cert).getSigAlgName();
+        String currSigAlg = x509Cert.getSigAlgName();
 
         // Check the signature algorithm and parameters against constraints.
         if (!constraints.permits(SIGNATURE_PRIMITIVE_SET, currSigAlg,
--- a/src/java.base/share/classes/sun/security/tools/keytool/Main.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/security/tools/keytool/Main.java	Mon Jul 17 09:14:23 2017 -0700
@@ -302,6 +302,8 @@
         Command.IMPORTPASS.setAltName("-importpassword");
     }
 
+    // If an option is allowed multiple times, remember to record it
+    // in the optionsSet.contains() block in parseArgs().
     enum Option {
         ALIAS("alias", "<alias>", "alias.name.of.the.entry.to.process"),
         DESTALIAS("destalias", "<alias>", "destination.alias"),
@@ -423,9 +425,31 @@
 
         String confFile = null;
 
+        // Records all commands and options set. Used to check dups.
+        Set<String> optionsSet = new HashSet<>();
+
         for (i=0; i < args.length; i++) {
             String flags = args[i];
             if (flags.startsWith("-")) {
+                String lowerFlags = flags.toLowerCase(Locale.ROOT);
+                if (optionsSet.contains(lowerFlags)) {
+                    switch (lowerFlags) {
+                        case "-ext":
+                        case "-id":
+                        case "-provider":
+                        case "-addprovider":
+                        case "-providerclass":
+                        case "-providerarg":
+                            // These options are allowed multiple times
+                            break;
+                        default:
+                            weakWarnings.add(String.format(
+                                    rb.getString("option.1.set.twice"),
+                                    lowerFlags));
+                    }
+                } else {
+                    optionsSet.add(lowerFlags);
+                }
                 if (collator.compare(flags, "-conf") == 0) {
                     if (i == args.length - 1) {
                         errorNeedArgument(flags);
@@ -433,7 +457,15 @@
                     confFile = args[++i];
                 } else {
                     Command c = Command.getCommand(flags);
-                    if (c != null) command = c;
+                    if (c != null) {
+                        if (command == null) {
+                            command = c;
+                        } else {
+                            throw new Exception(String.format(
+                                    rb.getString("multiple.commands.1.2"),
+                                    command.name, c.name));
+                        }
+                    }
                 }
             }
         }
--- a/src/java.base/share/classes/sun/security/tools/keytool/Resources.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/security/tools/keytool/Resources.java	Mon Jul 17 09:14:23 2017 -0700
@@ -42,6 +42,8 @@
         // keytool: Help part
         {".OPTION.", " [OPTION]..."},
         {"Options.", "Options:"},
+        {"option.1.set.twice", "The %s option is specified multiple times. All except the last one will be ignored."},
+        {"multiple.commands.1.2", "Only one command is allowed: both %1$s and %2$s were specified."},
         {"Use.keytool.help.for.all.available.commands",
                  "Use \"keytool -help\" for all available commands"},
         {"Key.and.Certificate.Management.Tool",
--- a/src/java.base/share/classes/sun/security/util/AuthResources.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/security/util/AuthResources.java	Mon Jul 17 09:14:23 2017 -0700
@@ -103,6 +103,7 @@
         {"COLON", ": "},
         {".error.adding.Permission.", ": error adding Permission "},
         {"SPACE", " "},
+        {"NEWLINE", "\n"},
         {".error.adding.Entry.", ": error adding Entry "},
         {"LPARAM", "("},
         {"RPARAM", ")"},
--- a/src/java.base/share/classes/sun/security/util/ECUtil.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/security/util/ECUtil.java	Mon Jul 17 09:14:23 2017 -0700
@@ -130,7 +130,7 @@
         return (ECPrivateKey)keyFactory.generatePrivate(keySpec);
     }
 
-    private static AlgorithmParameters getECParameters(Provider p) {
+    public static AlgorithmParameters getECParameters(Provider p) {
         try {
             if (p != null) {
                 return AlgorithmParameters.getInstance("EC", p);
--- a/src/java.base/share/classes/sun/security/util/Resources.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/security/util/Resources.java	Mon Jul 17 09:14:23 2017 -0700
@@ -115,6 +115,7 @@
                 "unable to perform substitution on alias, {0}"},
         {"substitution.value.prefix.unsupported",
                 "substitution value, {0}, unsupported"},
+        {"SPACE", " "},
         {"LPARAM", "("},
         {"RPARAM", ")"},
         {"type.can.t.be.null","type can't be null"},
--- a/src/java.base/share/classes/sun/util/locale/LocaleMatcher.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.base/share/classes/sun/util/locale/LocaleMatcher.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -34,6 +34,9 @@
 import static java.util.Locale.FilteringMode.*;
 import static java.util.Locale.LanguageRange.*;
 import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.stream.Collectors;
 
 /**
  * Implementation for BCP47 Locale matching
@@ -126,12 +129,16 @@
                 return new ArrayList<String>(tags);
             } else {
                 for (String tag : tags) {
-                    tag = tag.toLowerCase(Locale.ROOT);
-                    if (tag.startsWith(range)) {
+                    // change to lowercase for case-insensitive matching
+                    String lowerCaseTag = tag.toLowerCase(Locale.ROOT);
+                    if (lowerCaseTag.startsWith(range)) {
                         int len = range.length();
-                        if ((tag.length() == len || tag.charAt(len) == '-')
-                            && !list.contains(tag)
-                            && !shouldIgnoreFilterBasicMatch(zeroRanges, tag)) {
+                        if ((lowerCaseTag.length() == len
+                                || lowerCaseTag.charAt(len) == '-')
+                            && !caseInsensitiveMatch(list, lowerCaseTag)
+                            && !shouldIgnoreFilterBasicMatch(zeroRanges,
+                                    lowerCaseTag)) {
+                            // preserving the case of the input tag
                             list.add(tag);
                         }
                     }
@@ -152,14 +159,17 @@
     private static Collection<String> removeTagsMatchingBasicZeroRange(
             List<LanguageRange> zeroRange, Collection<String> tags) {
         if (zeroRange.isEmpty()) {
+            tags = removeDuplicates(tags);
             return tags;
         }
 
         List<String> matchingTags = new ArrayList<>();
         for (String tag : tags) {
-            tag = tag.toLowerCase(Locale.ROOT);
-            if (!shouldIgnoreFilterBasicMatch(zeroRange, tag)) {
-                matchingTags.add(tag);
+            // change to lowercase for case-insensitive matching
+            String lowerCaseTag = tag.toLowerCase(Locale.ROOT);
+            if (!shouldIgnoreFilterBasicMatch(zeroRange, lowerCaseTag)
+                    && !caseInsensitiveMatch(matchingTags, lowerCaseTag)) {
+                matchingTags.add(tag); // preserving the case of the input tag
             }
         }
 
@@ -167,6 +177,26 @@
     }
 
     /**
+     * Remove duplicate tags from the given {@code tags} by
+     * ignoring case considerations.
+     */
+    private static Collection<String> removeDuplicates(
+            Collection<String> tags) {
+        Set<String> distinctTags = new TreeSet<>(String.CASE_INSENSITIVE_ORDER);
+        return tags.stream().filter(x -> distinctTags.add(x))
+                .collect(Collectors.toList());
+    }
+
+    /**
+     * Returns true if the given {@code list} contains an element which matches
+     * with the given {@code tag} ignoring case considerations.
+     */
+    private static boolean caseInsensitiveMatch(List<String> list, String tag) {
+        return list.stream().anyMatch((element)
+                -> (element.equalsIgnoreCase(tag)));
+    }
+
+    /**
      * The tag which is falling in the basic exclusion range(s) should not
      * be considered as the matching tag. Ignores the tag matching with the
      * non-zero ranges, if the tag also matches with one of the basic exclusion
@@ -216,8 +246,9 @@
             }
             String[] rangeSubtags = range.split("-");
             for (String tag : tags) {
-                tag = tag.toLowerCase(Locale.ROOT);
-                String[] tagSubtags = tag.split("-");
+                // change to lowercase for case-insensitive matching
+                String lowerCaseTag = tag.toLowerCase(Locale.ROOT);
+                String[] tagSubtags = lowerCaseTag.split("-");
                 if (!rangeSubtags[0].equals(tagSubtags[0])
                     && !rangeSubtags[0].equals("*")) {
                     continue;
@@ -225,9 +256,11 @@
 
                 int rangeIndex = matchFilterExtendedSubtags(rangeSubtags,
                         tagSubtags);
-                if (rangeSubtags.length == rangeIndex && !list.contains(tag)
-                        && !shouldIgnoreFilterExtendedMatch(zeroRanges, tag)) {
-                    list.add(tag);
+                if (rangeSubtags.length == rangeIndex
+                        && !caseInsensitiveMatch(list, lowerCaseTag)
+                        && !shouldIgnoreFilterExtendedMatch(zeroRanges,
+                                lowerCaseTag)) {
+                    list.add(tag); // preserve the case of the input tag
                 }
             }
         }
@@ -245,14 +278,17 @@
     private static Collection<String> removeTagsMatchingExtendedZeroRange(
             List<LanguageRange> zeroRange, Collection<String> tags) {
         if (zeroRange.isEmpty()) {
+            tags = removeDuplicates(tags);
             return tags;
         }
 
         List<String> matchingTags = new ArrayList<>();
         for (String tag : tags) {
-            tag = tag.toLowerCase(Locale.ROOT);
-            if (!shouldIgnoreFilterExtendedMatch(zeroRange, tag)) {
-                matchingTags.add(tag);
+            // change to lowercase for case-insensitive matching
+            String lowerCaseTag = tag.toLowerCase(Locale.ROOT);
+            if (!shouldIgnoreFilterExtendedMatch(zeroRange, lowerCaseTag)
+                    && !caseInsensitiveMatch(matchingTags, lowerCaseTag)) {
+                matchingTags.add(tag); // preserve the case of the input tag
             }
         }
 
@@ -368,10 +404,11 @@
             String rangeForRegex = range.replace("*", "\\p{Alnum}*");
             while (rangeForRegex.length() > 0) {
                 for (String tag : tags) {
-                    tag = tag.toLowerCase(Locale.ROOT);
-                    if (tag.matches(rangeForRegex)
-                            && !shouldIgnoreLookupMatch(zeroRanges, tag)) {
-                        return tag;
+                    // change to lowercase for case-insensitive matching
+                    String lowerCaseTag = tag.toLowerCase(Locale.ROOT);
+                    if (lowerCaseTag.matches(rangeForRegex)
+                            && !shouldIgnoreLookupMatch(zeroRanges, lowerCaseTag)) {
+                        return tag; // preserve the case of the input tag
                     }
                 }
 
--- a/src/java.management.rmi/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.management.rmi/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -27,16 +27,16 @@
  * Defines the {@linkplain javax.management.remote.rmi RMI connector}
  * for the Java Management Extensions (JMX) Remote API.
  *
- * <dl style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">
- * <dt class="simpleTagLabel">Providers:</dt>
- * <dd>This module provides
- * {@link javax.management.remote.JMXConnectorProvider} service
- * that creates the JMX connector clients using RMI protocol.
+ * <dl>
+ * <dt class="simpleTagLabel" style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">Providers:</dt>
+ * <dd>This module provides the
+ * {@link javax.management.remote.JMXConnectorProvider} service,
+ * which creates JMX connector clients using the RMI protocol.
  * Instances of {@code JMXConnector} can be obtained via the
  * {@link javax.management.remote.JMXConnectorFactory#newJMXConnector
  * JMXConnectorFactory.newJMXConnector} factory method.
- * It also provides {@link javax.management.remote.JMXConnectorServerProvider} service
- * that creates the JMX connector servers using RMI protocol.
+ * It also provides the {@link javax.management.remote.JMXConnectorServerProvider} service,
+ * which creates JMX connector servers using the RMI protocol.
  * Instances of {@code JMXConnectorServer} can be obtained via the
  * {@link javax.management.remote.JMXConnectorServerFactory#newJMXConnectorServer
  * JMXConnectorServerFactory.newJMXConnectorServer} factory method.
--- a/src/java.se.ee/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.se.ee/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -26,8 +26,9 @@
 /**
  * Defines the full API of the Java SE Platform.
  * <P>
- * This module requires {@code java.se} and supplements it with modules
- * that define CORBA and Java EE APIs. These modules are upgradeable.
+ * This module requires the <a href="java.se-summary.html">{@code java.se}</a>
+ * module and supplements it with modules that define the CORBA and Java EE
+ * APIs. These modules are upgradeable.
  *
  * @moduleGraph
  * @since 9
--- a/src/java.se/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.se/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -26,11 +26,12 @@
 /**
  * Defines the core Java SE API.
  * <P>
- * The modules defining CORBA and Java EE APIs are not required by
- * this module, but they are required by {@code java.se.ee}.
+ * The modules defining the CORBA and Java EE APIs are not required by
+ * this module, but they are required by the
+ * <a href="java.se.ee-summary.html">{@code java.se.ee}</a> module.
  *
- * <dl style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">
- * <dt class="simpleTagLabel">Optional for Java SE Platform:</dt>
+ * <dl>
+ * <dt class="simpleTagLabel" style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">Optional for the Java SE Platform:</dt>
  * <dd>
  *   <a href="../specs/jni/index.html">Java Native Interface (JNI)</a><br>
  *   <a href="../specs/jvmti.html">Java Virtual Machine Tool Interface (JVM TI)</a><br>
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/package.html	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/package.html	Mon Jul 17 09:14:23 2017 -0700
@@ -177,13 +177,13 @@
 	<caption>Features in <code>BaseRowSet</code></caption>
           <thead>
             <tr>
-              <th>Feature</th>
-              <th>Details</th>
+              <th scope="col">Feature</th>
+              <th scope="col">Details</th>
             </tr>
           </thead>
           <tbody>
             <tr>
-              <td>Properties</td>
+              <th scope="row">Properties</th>
               <td>Provides standard JavaBeans property manipulation
 mechanisms to allow applications to get and set <code>RowSet</code> command and
 property  values. Refer to the   documentation of the <code>javax.sql.RowSet</code>
@@ -191,7 +191,7 @@
 the standard  <code>RowSet</code> properties.</td>
             </tr>
             <tr>
-              <td>Event notification</td>
+              <th scope="row">Event notification</th>
               <td>Provides standard JavaBeans event notifications
 to registered event listeners. Refer to the documentation of <code>javax.sql.RowSetEvent</code>
 interface (available in the JDBC 3.0 specification) for
@@ -199,12 +199,12 @@
 by  compliant implementations.</td>
             </tr>
             <tr>
-              <td>Setters for a RowSet object's command</td>
+              <th scope="row">Setters for a RowSet object's command</th>
               <td>Provides a complete set of setter methods
                  for setting RowSet command parameters.</td>
             </tr>
             <tr>
-              <td>Streams</td>
+              <th scope="row">Streams</th>
               <td>Provides fields for storing of stream instances
   in addition to providing a set of constants for stream type designation.</td>
             </tr>
--- a/src/java.sql/share/classes/java/sql/Connection.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.sql/share/classes/java/sql/Connection.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1523,7 +1523,7 @@
      *
      * @implSpec
      * The default implementation is a no-op.
-     * <p>
+     *
      * @apiNote
      * This method is to be used by Connection pooling managers.
      * <p>
--- a/src/java.sql/share/classes/java/sql/DriverManager.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.sql/share/classes/java/sql/DriverManager.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -63,7 +63,6 @@
  * via the {@linkplain ServiceLoader#load service-provider loading} mechanism.
  *</ul>
  *
- *<P>
  * @implNote
  * {@code DriverManager} initialization is done lazily and looks up service
  * providers using the thread context class loader.  The drivers loaded and
--- a/src/java.sql/share/classes/java/sql/SQLPermission.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.sql/share/classes/java/sql/SQLPermission.java	Mon Jul 17 09:14:23 2017 -0700
@@ -62,29 +62,29 @@
  * <caption style="display:none">permission target name, what the permission allows, and associated risks</caption>
  * <thead>
  * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
+ * <th scope="col">Permission Target Name</th>
+ * <th scope="col">What the Permission Allows</th>
+ * <th scope="col">Risks of Allowing this Permission</th>
  * </tr>
  * </thead>
  *
  * <tbody>
  * <tr>
- *   <td>setLog</td>
+ *   <th scope="row">setLog</th>
  *   <td>Setting of the logging stream</td>
  *   <td>This is a dangerous permission to grant.
  * The contents of the log may contain usernames and passwords,
  * SQL statements, and SQL data.</td>
  * </tr>
  * <tr>
- * <td>callAbort</td>
+ * <th scope="row">callAbort</th>
  *   <td>Allows the invocation of the {@code Connection} method
  *   {@code abort}</td>
  *   <td>Permits an application to terminate a physical connection to a
  *  database.</td>
  * </tr>
  * <tr>
- * <td>setSyncFactory</td>
+ * <th scope="row">setSyncFactory</th>
  *   <td>Allows the invocation of the {@code SyncFactory} methods
  *   {@code setJNDIContext} and {@code setLogger}</td>
  *   <td>Permits an application to specify the JNDI context from which the
@@ -93,7 +93,7 @@
  * </tr>
  *
  * <tr>
- * <td>setNetworkTimeout</td>
+ * <th scope="row">setNetworkTimeout</th>
  *   <td>Allows the invocation of the {@code Connection} method
  *   {@code setNetworkTimeout}</td>
  *   <td>Permits an application to specify the maximum period a
@@ -101,7 +101,7 @@
  * objects created from the <code>Connection</code>
  * will wait for the database to reply to any one request.</td>
  * <tr>
- * <td>deregisterDriver</td>
+ * <th scope="row">deregisterDriver</th>
  *   <td>Allows the invocation of the {@code DriverManager}
  * method {@code deregisterDriver}</td>
  *   <td>Permits an application to remove a JDBC driver from the list of
--- a/src/java.sql/share/classes/java/sql/Statement.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.sql/share/classes/java/sql/Statement.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1379,17 +1379,17 @@
      * single quote within the string will be replaced by two single quotes.
      *
      * <blockquote>
-     * <table class="striped" >
+     * <table class="striped">
      * <caption>Examples of the conversion:</caption>
      * <thead>
-     * <tr><th>Value</th><th>Result</th></tr>
+     * <tr><th scope="col">Value</th><th scope="col">Result</th></tr>
      * </thead>
      * <tbody style="text-align:center">
-     * <tr> <td>Hello</td> <td>'Hello'</td> </tr>
-     * <tr> <td>G'Day</td> <td>'G''Day'</td> </tr>
-     * <tr> <td>'G''Day'</td>
+     * <tr> <th scope="row">Hello</th> <td>'Hello'</td> </tr>
+     * <tr> <th scope="row">G'Day</th> <td>'G''Day'</td> </tr>
+     * <tr> <th scope="row">'G''Day'</th>
      * <td>'''G''''Day'''</td> </tr>
-     * <tr> <td>I'''M</td> <td>'I''''''M'</td>
+     * <tr> <th scope="row">I'''M</th> <td>'I''''''M'</td>
      * </tr>
      *
      * </tbody>
@@ -1454,48 +1454,48 @@
      * <caption>Examples of the conversion:</caption>
      * <thead>
      * <tr>
-     * <th>identifier</th>
-     * <th>alwaysQuote</th>
-     * <th>Result</th></tr>
+     * <th scope="col">identifier</th>
+     * <th scope="col">alwaysQuote</th>
+     * <th scope="col">Result</th></tr>
      * </thead>
      * <tbody>
      * <tr>
-     * <td>Hello</td>
+     * <th scope="row">Hello</th>
      * <td>false</td>
      * <td>Hello</td>
      * </tr>
      * <tr>
-     * <td>Hello</td>
+     * <th scope="row">Hello</th>
      * <td>true</td>
      * <td>"Hello"</td>
      * </tr>
      * <tr>
-     * <td>G'Day</td>
+     * <th scope="row">G'Day</th>
      * <td>false</td>
      * <td>"G'Day"</td>
      * </tr>
      * <tr>
-     * <td>"Bruce Wayne"</td>
+     * <th scope="row">"Bruce Wayne"</th>
      * <td>false</td>
      * <td>"Bruce Wayne"</td>
      * </tr>
      * <tr>
-     * <td>"Bruce Wayne"</td>
+     * <th scope="row">"Bruce Wayne"</th>
      * <td>true</td>
      * <td>"Bruce Wayne"</td>
      * </tr>
      * <tr>
-     * <td>GoodDay$</td>
+     * <th scope="row">GoodDay$</th>
      * <td>false</td>
      * <td>"GoodDay$"</td>
      * </tr>
      * <tr>
-     * <td>Hello"World</td>
+     * <th scope="row">Hello"World</th>
      * <td>false</td>
      * <td>SQLException</td>
      * </tr>
      * <tr>
-     * <td>"Hello"World"</td>
+     * <th scope="row">"Hello"World"</th>
      * <td>false</td>
      * <td>SQLException</td>
      * </tr>
@@ -1554,33 +1554,33 @@
      * <caption>Examples of the conversion:</caption>
      * <thead>
      * <tr>
-     * <th>identifier</th>
-     * <th>Simple Identifier</th>
+     * <th scope="col">identifier</th>
+     * <th scope="col">Simple Identifier</th>
      * </thead>
      *
      * <tbody>
      * <tr>
-     * <td>Hello</td>
+     * <th scope="row">Hello</th>
      * <td>true</td>
      * </tr>
      * <tr>
-     * <td>G'Day</td>
+     * <th scope="row">G'Day</th>
      * <td>false</td>
      * </tr>
      * <tr>
-     * <td>"Bruce Wayne"</td>
+     * <th scope="row">"Bruce Wayne"</th>
      * <td>false</td>
      * </tr>
      * <tr>
-     * <td>GoodDay$</td>
+     * <th scope="row">GoodDay$</th>
      * <td>false</td>
      * </tr>
      * <tr>
-     * <td>Hello"World</td>
+     * <th scope="row">Hello"World</th>
      * <td>false</td>
      * </tr>
      * <tr>
-     * <td>"Hello"World"</td>
+     * <th scope="row">"Hello"World"</th>
      * <td>false</td>
      * </tr>
      * </tbody>
@@ -1613,17 +1613,17 @@
     * <caption>Examples of the conversion:</caption>
     * <thead>
     * <tr>
-    * <th>Value</th>
-    * <th>Result</th>
+    * <th scope="col">Value</th>
+    * <th scope="col">Result</th>
     * </tr>
     * </thead>
     * <tbody>
-    * <tr> <td>Hello</td> <td>N'Hello'</td> </tr>
-    * <tr> <td>G'Day</td> <td>N'G''Day'</td> </tr>
-    * <tr> <td>'G''Day'</td>
+    * <tr> <th scope="row">Hello</th> <td>N'Hello'</td> </tr>
+    * <tr> <th scope="row">G'Day</th> <td>N'G''Day'</td> </tr>
+    * <tr> <th scope="row">'G''Day'</th>
     * <td>N'''G''''Day'''</td> </tr>
-    * <tr> <td>I'''M</td> <td>N'I''''''M'</td>
-    * <tr> <td>N'Hello'</td> <td>N'N''Hello'''</td> </tr>
+    * <tr> <th scope="row">I'''M</th> <td>N'I''''''M'</td>
+    * <tr> <th scope="row">N'Hello'</th> <td>N'N''Hello'''</td> </tr>
     *
     * </tbody>
     * </table>
--- a/src/java.sql/share/classes/javax/sql/package.html	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.sql/share/classes/javax/sql/package.html	Mon Jul 17 09:14:23 2017 -0700
@@ -280,7 +280,6 @@
 The <code>RowSet</code> interface may be implemented in any number of
 ways, and anyone may write an implementation. Developers are encouraged 
 to use their imaginations in coming up with new ways to use rowsets.
-<P>
 
 
 <h2>Package Specification</h2>
--- a/src/java.transaction/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/java.transaction/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -24,10 +24,10 @@
  */
 
 /**
- * Defines a subset of the Java Transaction API (JTA) to support CORBA interop.
+ * Defines a subset of the Java Transaction API (JTA) to support CORBA interoperation.
  * <P>
  * The subset consists of RMI exception types which are mapped to CORBA system
- * exceptions by the 'Java Language to IDL Mapping Specification'.
+ * exceptions by the <em>Java Language to IDL Mapping Specification</em>.
  *
  * @moduleGraph
  * @since 9
--- a/src/jdk.crypto.ec/share/classes/sun/security/ec/ECKeyPairGenerator.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.crypto.ec/share/classes/sun/security/ec/ECKeyPairGenerator.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -25,12 +25,14 @@
 
 package sun.security.ec;
 
+import java.io.IOException;
 import java.math.BigInteger;
 import java.security.*;
 import java.security.spec.AlgorithmParameterSpec;
 import java.security.spec.ECGenParameterSpec;
 import java.security.spec.ECParameterSpec;
 import java.security.spec.ECPoint;
+import java.security.spec.InvalidParameterSpecException;
 
 import sun.security.ec.ECPrivateKeyImpl;
 import sun.security.ec.ECPublicKeyImpl;
@@ -85,17 +87,19 @@
     public void initialize(AlgorithmParameterSpec params, SecureRandom random)
             throws InvalidAlgorithmParameterException {
 
+        ECParameterSpec ecSpec = null;
+
         if (params instanceof ECParameterSpec) {
-            this.params = ECUtil.getECParameterSpec(null,
+            ecSpec = ECUtil.getECParameterSpec(null,
                                                     (ECParameterSpec)params);
-            if (this.params == null) {
+            if (ecSpec == null) {
                 throw new InvalidAlgorithmParameterException(
                     "Unsupported curve: " + params);
             }
         } else if (params instanceof ECGenParameterSpec) {
             String name = ((ECGenParameterSpec)params).getName();
-            this.params = ECUtil.getECParameterSpec(null, name);
-            if (this.params == null) {
+            ecSpec = ECUtil.getECParameterSpec(null, name);
+            if (ecSpec == null) {
                 throw new InvalidAlgorithmParameterException(
                     "Unknown curve name: " + name);
             }
@@ -103,11 +107,36 @@
             throw new InvalidAlgorithmParameterException(
                 "ECParameterSpec or ECGenParameterSpec required for EC");
         }
+
+        // Not all known curves are supported by the native implementation
+        ensureCurveIsSupported(ecSpec);
+        this.params = ecSpec;
+
         this.keySize =
             ((ECParameterSpec)this.params).getCurve().getField().getFieldSize();
         this.random = random;
     }
 
+    private static void ensureCurveIsSupported(ECParameterSpec ecSpec)
+        throws InvalidAlgorithmParameterException {
+
+        AlgorithmParameters ecParams = ECUtil.getECParameters(null);
+        byte[] encodedParams;
+        try {
+            ecParams.init(ecSpec);
+            encodedParams = ecParams.getEncoded();
+        } catch (InvalidParameterSpecException ex) {
+            throw new InvalidAlgorithmParameterException(
+                "Unsupported curve: " + ecSpec.toString());
+        } catch (IOException ex) {
+            throw new RuntimeException(ex);
+        }
+        if (!isCurveSupported(encodedParams)) {
+            throw new InvalidAlgorithmParameterException(
+                "Unsupported curve: " + ecParams.toString());
+        }
+    }
+
     // generate the keypair. See JCA doc
     @Override
     public KeyPair generateKeyPair() {
@@ -159,6 +188,17 @@
         this.keySize = keySize;
     }
 
+    /**
+     * Checks whether the curve in the encoded parameters is supported by the
+     * native implementation.
+     *
+     * @param encodedParams encoded parameters in the same form accepted
+     *    by generateECKeyPair
+     * @return true if and only if generateECKeyPair will succeed for
+     *    the supplied parameters
+     */
+    private static native boolean isCurveSupported(byte[] encodedParams);
+
     /*
      * Generates the keypair and returns a 2-element array of encoding bytes.
      * The first one is for the private key, the second for the public key.
--- a/src/jdk.crypto.ec/share/native/libsunec/ECC_JNI.cpp	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.crypto.ec/share/native/libsunec/ECC_JNI.cpp	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -90,6 +90,50 @@
 
 /*
  * Class:     sun_security_ec_ECKeyPairGenerator
+ * Method:    isCurveSupported
+ * Signature: ([B)Z
+ */
+JNIEXPORT jboolean
+JNICALL Java_sun_security_ec_ECKeyPairGenerator_isCurveSupported
+  (JNIEnv *env, jclass clazz, jbyteArray encodedParams)
+{
+    SECKEYECParams params_item;
+    ECParams *ecparams = NULL;
+    jboolean result = JNI_FALSE;
+
+    // The curve is supported if we can get parameters for it
+    params_item.len = env->GetArrayLength(encodedParams);
+    params_item.data =
+        (unsigned char *) env->GetByteArrayElements(encodedParams, 0);
+    if (params_item.data == NULL) {
+        goto cleanup;
+    }
+
+    // Fill a new ECParams using the supplied OID
+    if (EC_DecodeParams(&params_item, &ecparams, 0) != SECSuccess) {
+        /* bad curve OID */
+        goto cleanup;
+    }
+
+    // If we make it to here, then the curve is supported
+    result = JNI_TRUE;
+
+cleanup:
+    {
+        if (params_item.data) {
+            env->ReleaseByteArrayElements(encodedParams,
+                (jbyte *) params_item.data, JNI_ABORT);
+        }
+        if (ecparams) {
+            FreeECParams(ecparams, true);
+        }
+    }
+
+    return result;
+}
+
+/*
+ * Class:     sun_security_ec_ECKeyPairGenerator
  * Method:    generateECKeyPair
  * Signature: (I[B[B)[[B
  */
--- a/src/jdk.httpserver/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.httpserver/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -24,7 +24,7 @@
  */
 
 /**
- * Defines the JDK-specific API for HTTP server.
+ * Defines the JDK-specific HTTP server API.
  *
  * @uses com.sun.net.httpserver.spi.HttpServerProvider
  *
--- a/src/jdk.jartool/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.jartool/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -32,7 +32,7 @@
  * <em>jar</em> via the {@link java.util.spi.ToolProvider ToolProvider} SPI.
  * Instances of the tool can be obtained by calling
  * {@link java.util.spi.ToolProvider#findFirst ToolProvider.findFirst}
- * or the {@link java.util.ServiceLoader service loader} with the name
+ * or the {@linkplain java.util.ServiceLoader service loader} with the name
  * {@code "jar"}.
  *
  * <dl style="font-family:'DejaVu Sans', Arial, Helvetica, sans serif">
--- a/src/jdk.management.agent/share/classes/sun/management/jdp/JdpController.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.management.agent/share/classes/sun/management/jdp/JdpController.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@
 import java.lang.management.RuntimeMXBean;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
+import java.lang.UnsupportedOperationException;
 import sun.management.VMManagement;
 
 /**
@@ -132,19 +133,11 @@
     }
 
     // Get the process id of the current running Java process
-    private static Integer getProcessId() {
+    private static Long getProcessId() {
         try {
-            // Get the current process id using a reflection hack
-            RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
-            Field jvm = runtime.getClass().getDeclaredField("jvm");
-            jvm.setAccessible(true);
-
-            VMManagement mgmt = (sun.management.VMManagement) jvm.get(runtime);
-            Method pid_method = mgmt.getClass().getDeclaredMethod("getProcessId");
-            pid_method.setAccessible(true);
-            Integer pid = (Integer) pid_method.invoke(mgmt);
-            return pid;
-        } catch(Exception ex) {
+            // Get the current process id
+            return ProcessHandle.current().pid();
+        } catch(UnsupportedOperationException ex) {
             return null;
         }
     }
@@ -206,7 +199,7 @@
         packet.setBroadcastInterval(Integer.toString(pause));
 
         // Set process id
-        Integer pid = getProcessId();
+        Long pid = getProcessId();
         if (pid != null) {
            packet.setProcessId(pid.toString());
         }
--- a/src/jdk.management/share/classes/com/sun/management/package-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.management/share/classes/com/sun/management/package-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -24,10 +24,10 @@
  */
 
 /**
- * This package contains Oracle Corporation's platform extension to
- * the implementation of the
+ * This package contains the JDK's extension to
+ * the standard implementation of the
  * {@link java.lang.management} API and also defines the management
- * interface for some other components for the platform.
+ * interface for some other components of the platform.
  *
  * <p>
  * All platform MBeans are registered in the <em>platform MBeanServer</em>
--- a/src/jdk.management/share/classes/module-info.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.management/share/classes/module-info.java	Mon Jul 17 09:14:23 2017 -0700
@@ -24,7 +24,7 @@
  */
 
 /**
- * Defines the JDK-specific Management Interfaces for JVM.
+ * Defines JDK-specific management interfaces for the JVM.
  *
  * @moduleGraph
  * @since 9
--- a/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -59,65 +59,70 @@
  * {@link #setOption(SctpSocketOption,Object) setOption} method. An SCTP
  * channel support the following options:
  * <blockquote>
- * <table class="striped"><caption style="display:none">Socket options</caption>
+ * <table class="striped">
+ *   <caption style="display:none">Socket options</caption>
+ *   <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
+ *   </thead>
+ *   <tbody>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_DISABLE_FRAGMENTS
- *                                          SCTP_DISABLE_FRAGMENTS} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_DISABLE_FRAGMENTS
+ *                                          SCTP_DISABLE_FRAGMENTS} </th>
  *     <td> Enables or disables message fragmentation </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_EXPLICIT_COMPLETE
- *                                          SCTP_EXPLICIT_COMPLETE} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_EXPLICIT_COMPLETE
+ *                                          SCTP_EXPLICIT_COMPLETE} </th>
  *     <td> Enables or disables explicit message completion </td>
  *   </tr>
  *    <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_FRAGMENT_INTERLEAVE
- *                                          SCTP_FRAGMENT_INTERLEAVE} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_FRAGMENT_INTERLEAVE
+ *                                          SCTP_FRAGMENT_INTERLEAVE} </th>
  *     <td> Controls how the presentation of messages occur for the message
  *          receiver </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_INIT_MAXSTREAMS
- *                                          SCTP_INIT_MAXSTREAMS} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_INIT_MAXSTREAMS
+ *                                          SCTP_INIT_MAXSTREAMS} </th>
  *     <td> The maximum number of streams requested by the local endpoint during
  *          association initialization </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_NODELAY SCTP_NODELAY} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_NODELAY SCTP_NODELAY} </th>
  *     <td> Enables or disable a Nagle-like algorithm </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_PRIMARY_ADDR
- *                                          SCTP_PRIMARY_ADDR} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_PRIMARY_ADDR
+ *                                          SCTP_PRIMARY_ADDR} </th>
  *     <td> Requests that the local SCTP stack use the given peer address as the
  *          association primary </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_SET_PEER_PRIMARY_ADDR
- *                                          SCTP_SET_PEER_PRIMARY_ADDR} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_SET_PEER_PRIMARY_ADDR
+ *                                          SCTP_SET_PEER_PRIMARY_ADDR} </th>
  *     <td> Requests that the peer mark the enclosed address as the association
  *          primary </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SO_SNDBUF
- *                                          SO_SNDBUF} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SO_SNDBUF
+ *                                          SO_SNDBUF} </th>
  *     <td> The size of the socket send buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SO_RCVBUF
- *                                          SO_RCVBUF} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SO_RCVBUF
+ *                                          SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SO_LINGER
- *                                          SO_LINGER} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SO_LINGER
+ *                                          SO_LINGER} </th>
  *     <td> Linger on close if data is present (when configured in blocking mode
  *          only) </td>
  *   </tr>
+ *   </tbody>
  * </table>
  * </blockquote>
  * Additional (implementation specific) options may also be supported. The list
--- a/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -63,65 +63,70 @@
  * {@link #setOption(SctpSocketOption,Object,Association) setOption} method. An
  * {@code SctpMultiChannel} supports the following options:
  * <blockquote>
- * <table class="striped"><caption style="display:none">Socket options</caption>
+ * <table class="striped">
+ *   <caption style="display:none">Socket options</caption>
+ *   <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
+ *   </thead>
+ *   <tbody>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_DISABLE_FRAGMENTS
- *                                          SCTP_DISABLE_FRAGMENTS} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_DISABLE_FRAGMENTS
+ *                                          SCTP_DISABLE_FRAGMENTS} </th>
  *     <td> Enables or disables message fragmentation </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_EXPLICIT_COMPLETE
- *                                          SCTP_EXPLICIT_COMPLETE} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_EXPLICIT_COMPLETE
+ *                                          SCTP_EXPLICIT_COMPLETE} </th>
  *     <td> Enables or disables explicit message completion </td>
  *   </tr>
  *    <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_FRAGMENT_INTERLEAVE
- *                                          SCTP_FRAGMENT_INTERLEAVE} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_FRAGMENT_INTERLEAVE
+ *                                          SCTP_FRAGMENT_INTERLEAVE} </th>
  *     <td> Controls how the presentation of messages occur for the message
  *          receiver </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_INIT_MAXSTREAMS
- *                                          SCTP_INIT_MAXSTREAMS} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_INIT_MAXSTREAMS
+ *                                          SCTP_INIT_MAXSTREAMS} </th>
  *     <td> The maximum number of streams requested by the local endpoint during
  *          association initialization </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_NODELAY SCTP_NODELAY} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_NODELAY SCTP_NODELAY} </th>
  *     <td> Enables or disable a Nagle-like algorithm </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_PRIMARY_ADDR
- *                                          SCTP_PRIMARY_ADDR} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_PRIMARY_ADDR
+ *                                          SCTP_PRIMARY_ADDR} </th>
  *     <td> Requests that the local SCTP stack use the given peer address as the
  *          association primary </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_SET_PEER_PRIMARY_ADDR
- *                                          SCTP_SET_PEER_PRIMARY_ADDR} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_SET_PEER_PRIMARY_ADDR
+ *                                          SCTP_SET_PEER_PRIMARY_ADDR} </th>
  *     <td> Requests that the peer mark the enclosed address as the association
  *          primary </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SO_SNDBUF
- *                                          SO_SNDBUF} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SO_SNDBUF
+ *                                          SO_SNDBUF} </th>
  *     <td> The size of the socket send buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SO_RCVBUF
- *                                          SO_RCVBUF} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SO_RCVBUF
+ *                                          SO_RCVBUF} </th>
  *     <td> The size of the socket receive buffer </td>
  *   </tr>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SO_LINGER
- *                                          SO_LINGER} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SO_LINGER
+ *                                          SO_LINGER} </th>
  *     <td> Linger on close if data is present (when configured in blocking mode
  *          only) </td>
  *   </tr>
+ *   </tbody>
  * </table>
  * </blockquote>
  * Additional (implementation specific) options may also be supported. The list
--- a/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java	Mon Jul 17 09:14:23 2017 -0700
@@ -47,17 +47,22 @@
  * {@link #setOption(SctpSocketOption,Object) setOption} method. SCTP server socket
  * channels support the following options:
  * <blockquote>
- * <table><caption style="display:none">Socket options</caption>
+ * <table class="striped">
+ *   <caption style="display:none">Socket options</caption>
+ *   <thead>
  *   <tr>
- *     <th>Option Name</th>
- *     <th>Description</th>
+ *     <th scope="col">Option Name</th>
+ *     <th scope="col">Description</th>
  *   </tr>
+ *   </thead>
+ *   <tbody>
  *   <tr>
- *     <td> {@link SctpStandardSocketOptions#SCTP_INIT_MAXSTREAMS
- *                                          SCTP_INIT_MAXSTREAMS} </td>
+ *     <th scope="row"> {@link SctpStandardSocketOptions#SCTP_INIT_MAXSTREAMS
+ *                                          SCTP_INIT_MAXSTREAMS} </th>
  *     <td> The maximum number of streams requested by the local endpoint during
  *          association initialization </td>
  *   </tr>
+ *   </tbody>
  * </table>
  * </blockquote>
  * Additional (implementation specific) options may also be supported. The list
--- a/test/ProblemList.txt	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/ProblemList.txt	Mon Jul 17 09:14:23 2017 -0700
@@ -262,9 +262,6 @@
 tools/jimage/JImageListTest.java                                8170120 generic-all
 tools/jimage/JImageVerifyTest.java                              8170120 generic-all
 
-tools/schemagen/MultiReleaseJarTest.java                        8174692 generic-all
-tools/wsgen/MultiReleaseJarTest.java                            8174692 generic-all
-
 ############################################################################
 
 # jdk_jdi
--- a/test/com/sun/crypto/provider/Cipher/DES/PerformanceTest.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/com/sun/crypto/provider/Cipher/DES/PerformanceTest.java	Mon Jul 17 09:14:23 2017 -0700
@@ -58,11 +58,15 @@
         (byte)0xfe,(byte)0xdc,(byte)0xba,(byte)0x98,
         (byte)0x76,(byte)0x54,(byte)0x32,(byte)0x10};
 
-    public static byte[] plain_data = "Isaiah, a little boy is dead. He fell from the roof of an apartment house, just a few days before Christmas. The only person who truly grieves for the boy is Smilla Jasperson, a polar researcher. Smilla was Isaiah's only friend. Isaiah came with his alcoholic mother from Greenland but never really got used to life in Copenhagen. Smilla's mother was also from Greenland. Smilla feels a particular affinity to the arctic landscape. She knows a lot about the snow and how to read its movements and is convinced that the boy's death was not accidental.".getBytes();
-
-    // The codemgrtool won't let me checkin this line, so I had to break it up.
-
-    /* Smilla decides to embark upon her own investigations but soon finds  herself running up against a brick wall. Isaiah's mother, Juliane, mistrusts her and the authorities also make life difficult for Smilla. But she won't let go. Then there's this mechanic  a reticent, inscrutable sort of guy  who lives in the same apartment building. He also knew the boy and even constructed a workbench for him in his cellar workshop. The mechanic tells Smilla that he'd like to help her, but then again, he may just be one of those who seem to want to dog her heels. End ".getBytes();*/
+    public static byte[] plain_data =
+            ("Isaiah, a little boy is dead. He fell from the roof of an apartment house, "
+            + "just a few days before Christmas. The only person who truly grieves for "
+            + "the boy is Smilla Jasperson, a polar researcher. Smilla was Isaiah's "
+            + "only friend. Isaiah came with his alcoholic mother from Greenland but "
+            + "never really got used to life in Copenhagen. Smilla's mother was also "
+            + "from Greenland. Smilla feels a particular affinity to the arctic landscape. "
+            + "She knows a lot about the snow and how to read its movements and is "
+            + "convinced that the boy's death was not accidental.").getBytes();
 
     static int[] dataSizes = {1024, 8192};
     static String[] crypts = {"DES", "DESede"};
--- a/test/java/lang/System/MacEncoding/ExpectedEncoding.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/java/lang/System/MacEncoding/ExpectedEncoding.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -43,9 +43,9 @@
         if ("skip".equals(expectFileEnc)) {
             System.err.println("Expected file.encoding is \"skip\", ignoring");
         } else {
-            System.err.println("Expected file.encoding: " + expectFileEnc);
-            System.err.println("Actual file.encoding: " + fileEnc);
             if (fileEnc == null || !fileEnc.equals(expectFileEnc)) {
+                System.err.println("Expected file.encoding: " + expectFileEnc);
+                System.err.println("Actual file.encoding: " + fileEnc);
                 failed = true;
             }
         }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/lang/System/MacEncoding/MacJNUEncoding.java	Mon Jul 17 09:14:23 2017 -0700
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8003228
+ * @summary Test the value of sun.jnu.encoding on Mac
+ * @requires (os.family == "mac")
+ * @library /test/lib
+ * @build jdk.test.lib.process.*
+ *        ExpectedEncoding
+ * @run main MacJNUEncoding US-ASCII UTF-8 C
+ * @run main MacJNUEncoding UTF-8    UTF-8 en_US.UTF-8
+ */
+
+import java.util.Map;
+
+import jdk.test.lib.process.ProcessTools;
+
+public class MacJNUEncoding {
+
+    public static void main(String[] args) throws Exception {
+        if (args.length != 3) {
+            System.out.println("Usage:");
+            System.out.println("  java MacJNUEncoding"
+                    + " <expected file.encoding> <expected sun.jnu.encoding> <locale>");
+            throw new IllegalArgumentException("missing arguments");
+        }
+
+        final String locale = args[2];
+        System.out.println("Running test for locale: " + locale);
+        ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(true,
+                ExpectedEncoding.class.getName(), args[0], args[1]);
+        Map<String, String> env = pb.environment();
+        env.put("LANG", locale);
+        env.put("LC_ALL", locale);
+        ProcessTools.executeProcess(pb)
+                    .outputTo(System.out)
+                    .errorTo(System.err)
+                    .shouldHaveExitValue(0);
+    }
+}
--- a/test/java/lang/System/MacEncoding/MacJNUEncoding.sh	Mon Jul 17 14:18:35 2017 +0530
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-#!/bin/sh
-
-#
-# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# This code is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-# version 2 for more details (a copy is included in the LICENSE file that
-# accompanied this code).
-#
-# You should have received a copy of the GNU General Public License version
-# 2 along with this work; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
-# or visit www.oracle.com if you need additional information or have any
-# questions.
-
-# @test
-# @bug 8003228
-# @summary Test the value of sun.jnu.encoding on Mac
-# @author Brent Christian
-#
-# @run shell MacJNUEncoding.sh
-
-# Only run test on Mac
-OS=`uname -s`
-case "$OS" in
-  Darwin )  ;;
-  * )
-    exit 0
-    ;;
-esac
-
-if [ "${TESTJAVA}" = "" ]
-then
-  echo "TESTJAVA not set.  Test cannot execute.  Failed."
-  exit 1
-fi
-
-if [ "${COMPILEJAVA}" = "" ]; then
-  COMPILEJAVA="${TESTJAVA}"
-fi
-
-
-if [ "${TESTSRC}" = "" ]
-then
-  echo "TESTSRC not set.  Test cannot execute.  Failed."
-  exit 1
-fi
-
-if [ "${TESTCLASSES}" = "" ]
-then
-  echo "TESTCLASSES not set.  Test cannot execute.  Failed."
-  exit 1
-fi
-
-JAVAC="${COMPILEJAVA}"/bin/javac
-JAVA="${TESTJAVA}"/bin/java
-
-echo "Building test classes..."
-"$JAVAC" ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} -d "${TESTCLASSES}" "${TESTSRC}"/ExpectedEncoding.java 
-
-echo ""
-echo "Running test for C locale"
-export LANG=C
-export LC_ALL=C
-"${JAVA}" ${TESTVMOPTS} -classpath "${TESTCLASSES}" ExpectedEncoding US-ASCII UTF-8
-result1=$?
-
-echo ""
-echo "Running test for en_US.UTF-8 locale"
-export LANG=en_US.UTF-8
-export LC_ALL=en_US.UTF-8
-"${JAVA}" ${TESTVMOPTS} -classpath "${TESTCLASSES}" ExpectedEncoding UTF-8 UTF-8
-result2=$?
-
-echo ""
-echo "Cleanup"
-rm ${TESTCLASSES}/ExpectedEncoding.class
-
-if [ ${result1} -ne 0 ] ; then
-    echo "Test failed for C locale"
-    echo "  LANG=\"${LANG}\""
-    echo "  LC_ALL=\"${LC_ALL}\""
-    exit ${result1}
-fi
-if [ ${result2} -ne 0 ] ; then
-    echo "Test failed for en_US.UTF-8 locale"
-    echo "  LANG=\"${LANG}\""
-    echo "  LC_ALL=\"${LC_ALL}\""
-    exit ${result2}
-fi
-exit 0
-
--- a/test/java/nio/channels/DatagramChannel/Disconnect.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/java/nio/channels/DatagramChannel/Disconnect.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
 
 /* @test
  * @bug 7132924
+ * @key intermittent
  * @summary Test DatagramChannel.disconnect when DatagramChannel is connected to an IPv4 socket
  * @run main Disconnect
  * @run main/othervm -Djava.net.preferIPv4Stack=true Disconnect
--- a/test/java/util/Locale/Bug7069824.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/java/util/Locale/Bug7069824.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -23,7 +23,7 @@
 
 /*
  * @test
- * @bug 7069824 8042360
+ * @bug 7069824 8042360 8032842 8175539
  * @summary Verify implementation for Locale matching.
  * @run main Bug7069824
  */
@@ -747,7 +747,7 @@
         priorityList = LanguageRange.parse(ranges);
         tagList = generateLanguageTags(tags);
         actualTags = showLanguageTags(Locale.filterTags(priorityList, tagList));
-        expectedTags = "ja-jp-hepburn, en";
+        expectedTags = "ja-JP-hepburn, en";
 
         if (!expectedTags.equals(actualTags)) {
             error = true;
@@ -763,7 +763,7 @@
         priorityList = LanguageRange.parse(ranges);
         tagList = generateLanguageTags(tags);
         actualTags = showLanguageTags(Locale.filterTags(priorityList, tagList, mode));
-        expectedTags = "de-de, de-de-x-goethe";
+        expectedTags = "de-DE, de-DE-x-goethe";
 
         if (!expectedTags.equals(actualTags)) {
             error = true;
@@ -779,8 +779,8 @@
         priorityList = LanguageRange.parse(ranges);
         tagList = generateLanguageTags(tags);
         actualTags = showLanguageTags(Locale.filterTags(priorityList, tagList, mode));
-        expectedTags = "de-de, de-latn-de, de-latf-de, de-de-x-goethe, "
-                       + "de-latn-de-1996, de-deva-de";
+        expectedTags = "de-DE, de-Latn-DE, de-Latf-DE, de-DE-x-goethe, "
+                       + "de-Latn-DE-1996, de-Deva-DE";
 
         if (!expectedTags.equals(actualTags)) {
             error = true;
@@ -796,8 +796,8 @@
         priorityList = LanguageRange.parse(ranges);
         tagList = generateLanguageTags(tags);
         actualTags = showLanguageTags(Locale.filterTags(priorityList, tagList, mode));
-        expectedTags = "de-de, de-latn-de, de-latf-de, de-de-x-goethe, "
-                       + "de-latn-de-1996, de-deva-de";
+        expectedTags = "de-DE, de-Latn-DE, de-Latf-DE, de-DE-x-goethe, "
+                       + "de-Latn-DE-1996, de-Deva-DE";
 
         if (!expectedTags.equals(actualTags)) {
             error = true;
@@ -884,7 +884,7 @@
         priorityList = LanguageRange.parse(ranges);
         tagList = generateLanguageTags(tags);
         actualTag = Locale.lookupTag(priorityList, tagList);
-        expectedTag = "fr-jp";
+        expectedTag = "fr-JP";
 
         if (!expectedTag.equals(actualTag)) {
             error = true;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/java/util/Locale/Bug8032842.java	Mon Jul 17 09:14:23 2017 -0700
@@ -0,0 +1,99 @@
+/*
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+/*
+ * @test
+ * @bug 8032842 8175539
+ * @summary Checks that the filterTags() and lookup() methods
+ *          preserve the case of matching language tag(s).
+ *          Before 8032842 fix these methods return the matching
+ *          language tag(s) in lowercase.
+ *          Also, checks the filterTags() to return only unique
+ *          (ignoring case considerations) matching tags.
+ *
+ */
+
+import java.util.List;
+import java.util.Locale;
+import java.util.Locale.FilteringMode;
+import java.util.Locale.LanguageRange;
+
+public class Bug8032842 {
+
+    public static void main(String[] args) {
+
+        // test filterBasic() for preserving the case of matching tags for
+        // the language range '*', with no duplicates in the matching tags
+        testFilter("*", List.of("de-CH", "hi-in", "En-GB", "ja-Latn-JP",
+                "JA-JP", "en-GB"),
+                List.of("de-CH", "hi-in", "En-GB", "ja-Latn-JP", "JA-JP"),
+                FilteringMode.AUTOSELECT_FILTERING);
+
+        // test filterBasic() for preserving the case of matching tags for
+        // basic ranges other than *, with no duplicates in the matching tags
+        testFilter("mtm-RU, en-GB", List.of("En-Gb", "mTm-RU", "en-US",
+                "en-latn", "en-GB"),
+                List.of("mTm-RU", "En-Gb"), FilteringMode.AUTOSELECT_FILTERING);
+
+        // test filterExtended() for preserving the case of matching tags for
+        // the language range '*', with no duplicates in the matching tags
+        testFilter("*", List.of("de-CH", "hi-in", "En-GB", "hi-IN",
+                "ja-Latn-JP", "JA-JP"),
+                List.of("de-CH", "hi-in", "En-GB", "ja-Latn-JP", "JA-JP"),
+                FilteringMode.EXTENDED_FILTERING);
+
+        // test filterExtended() for preserving the case of matching tags for
+        // extended ranges other than *, with no duplicates in the matching tags
+        testFilter("*-ch;q=0.5, *-Latn;q=0.4", List.of("fr-CH", "de-Ch",
+                "en-latn", "en-US", "en-Latn"),
+                List.of("fr-CH", "de-Ch", "en-latn"),
+                FilteringMode.EXTENDED_FILTERING);
+
+        // test lookupTag() for preserving the case of matching tag
+        testLookup("*-ch;q=0.5", List.of("en", "fR-cH"), "fR-cH");
+
+    }
+
+    public static void testFilter(String ranges, List<String> tags,
+            List<String> expected, FilteringMode mode) {
+        List<LanguageRange> priorityList = LanguageRange.parse(ranges);
+        List<String> actual = Locale.filterTags(priorityList, tags, mode);
+        if (!actual.equals(expected)) {
+            throw new RuntimeException("[filterTags() failed for the language"
+                    + " range: " + ranges + ", Expected: " + expected
+                    + ", Found: " + actual + "]");
+        }
+    }
+
+    public static void testLookup(String ranges, List<String> tags,
+            String expected) {
+        List<LanguageRange> priorityList = LanguageRange.parse(ranges);
+        String actual = Locale.lookupTag(priorityList, tags);
+        if (!actual.equals(expected)) {
+            throw new RuntimeException("[lookupTag() failed for the language"
+                    + " range: " + ranges + ", Expected: " + expected
+                    + ", Found: " + actual + "]");
+        }
+    }
+
+}
+
--- a/test/java/util/regex/RegExTest.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/java/util/regex/RegExTest.java	Mon Jul 17 09:14:23 2017 -0700
@@ -33,9 +33,8 @@
  * 6350801 6676425 6878475 6919132 6931676 6948903 6990617 7014645 7039066
  * 7067045 7014640 7189363 8007395 8013252 8013254 8012646 8023647 6559590
  * 8027645 8035076 8039124 8035975 8074678 6854417 8143854 8147531 7071819
- * 8151481 4867170 7080302 6728861 6995635 6736245 4916384
- * 6328855 6192895 6345469 6988218 6693451 7006761 8140212 8143282 8158482
- * 8176029
+ * 8151481 4867170 7080302 6728861 6995635 6736245 4916384 6328855 6192895
+ * 6345469 6988218 6693451 7006761 8140212 8143282 8158482 8176029 8184706
  *
  * @library /test/lib
  * @build jdk.test.lib.RandomFactory
@@ -470,7 +469,25 @@
         m.find();
         if (!m.hitEnd())
             failCount++;
-        report("hitEnd from a Slice");
+
+        // 8184706: Matching u+0d at EOL against \R should hit-end
+        p = Pattern.compile("...\\R");
+        m = p.matcher("cat" + (char)0x0a);
+        m.find();
+        if (m.hitEnd())
+            failCount++;
+
+        m = p.matcher("cat" + (char)0x0d);
+        m.find();
+        if (!m.hitEnd())
+            failCount++;
+
+        m = p.matcher("cat" + (char)0x0d + (char)0x0a);
+        m.find();
+        if (m.hitEnd())
+            failCount++;
+
+        report("hitEnd");
     }
 
     // This is for bug 4997476
--- a/test/sun/management/jdp/JdpOnTestCase.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/sun/management/jdp/JdpOnTestCase.java	Mon Jul 17 09:14:23 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,6 +31,7 @@
 
 import java.net.SocketTimeoutException;
 import java.util.Map;
+import static jdk.testlibrary.Asserts.assertNotEquals;
 
 public class JdpOnTestCase extends JdpTestCase {
 
@@ -58,6 +59,7 @@
         final String jdpName = payload.get("INSTANCE_NAME");
         log.fine("Received correct JDP packet #" + String.valueOf(receivedJDPpackets) +
                 ", jdp.name=" + jdpName);
+        assertNotEquals(null, payload.get("PROCESS_ID"), "Expected payload.get(\"PROCESS_ID\") to be not null.");
     }
 
     /**
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/security/ec/InvalidCurve.java	Mon Jul 17 09:14:23 2017 -0700
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8182999
+ * @summary Ensure that SunEC behaves correctly for unsupported curves.
+ * @run main InvalidCurve
+ */
+
+import java.security.*;
+import java.security.spec.*;
+import java.math.*;
+
+public class InvalidCurve {
+
+    public static void main(String[] args) {
+
+        KeyPairGenerator keyGen;
+        try {
+            keyGen = KeyPairGenerator.getInstance("EC", "SunEC");
+            ECGenParameterSpec brainpoolSpec =
+                new ECGenParameterSpec("brainpoolP256r1");
+            keyGen.initialize(brainpoolSpec);
+        } catch (InvalidAlgorithmParameterException ex) {
+            System.out.println(ex.getMessage());
+            // this is expected
+            return;
+        } catch (NoSuchAlgorithmException | NoSuchProviderException ex) {
+            throw new RuntimeException(ex);
+        }
+
+        keyGen.generateKeyPair();
+
+        // If we make it to here, then the test is not working correctly.
+        throw new RuntimeException("The expected exception was not thrown.");
+
+    }
+
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test/sun/security/tools/keytool/DupCommands.java	Mon Jul 17 09:14:23 2017 -0700
@@ -0,0 +1,66 @@
+/*
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8183509
+ * @summary keytool should not allow multiple commands
+ * @library /test/lib
+ * @build jdk.test.lib.SecurityTools
+ *        jdk.test.lib.Utils
+ *        jdk.test.lib.Asserts
+ *        jdk.test.lib.JDKToolFinder
+ *        jdk.test.lib.JDKToolLauncher
+ *        jdk.test.lib.Platform
+ *        jdk.test.lib.process.*
+ * @run main/othervm DupCommands
+ */
+
+import jdk.test.lib.SecurityTools;
+import jdk.test.lib.process.OutputAnalyzer;
+
+public class DupCommands {
+
+    public static void main(String[] args) throws Throwable {
+
+        kt("-list -printcert")
+                .shouldHaveExitValue(1)
+                .shouldContain("Only one command is allowed");
+
+        kt("-import -importcert") // command with different names
+                .shouldHaveExitValue(1)
+                .shouldContain("Only one command is allowed");
+
+        kt("-help -v -v")
+                .shouldHaveExitValue(0)
+                .shouldContain("The -v option is specified multiple times.");
+
+        kt("-help -id 1 -id 2") // some options are allowed multiple times
+                .shouldHaveExitValue(0)
+                .shouldNotContain("specified multiple times.");
+    }
+
+    static OutputAnalyzer kt(String arg) throws Exception {
+        return SecurityTools.keytool(arg);
+    }
+}
--- a/test/sun/security/tools/keytool/WeakAlg.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/sun/security/tools/keytool/WeakAlg.java	Mon Jul 17 09:14:23 2017 -0700
@@ -571,7 +571,7 @@
 
     static OutputAnalyzer genkeypair(String alias, String options) {
         return kt("-genkeypair -alias " + alias + " -dname CN=" + alias
-                + " -keyalg RSA -storetype JKS " + options);
+                + " -storetype JKS " + options);
     }
 
     static OutputAnalyzer certreq(String alias, String options) {
--- a/test/tools/schemagen/MultiReleaseJarTest.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/tools/schemagen/MultiReleaseJarTest.java	Mon Jul 17 09:14:23 2017 -0700
@@ -56,7 +56,7 @@
 
     @DataProvider(name = "jarFiles")
     public Object[][] jarFiles() {
-        return new Object[][]{{"MV_BOTH.jar", 9},
+        return new Object[][]{{"MV_BOTH.jar", Math.min(10, Runtime.version().major())},
                 {"MV_ONLY_9.jar", 9},
                 {"NON_MV.jar", 8}};
     }
--- a/test/tools/wsgen/MultiReleaseJarTest.java	Mon Jul 17 14:18:35 2017 +0530
+++ b/test/tools/wsgen/MultiReleaseJarTest.java	Mon Jul 17 09:14:23 2017 -0700
@@ -56,7 +56,7 @@
 
     @DataProvider(name = "jarFiles")
     public Object[][] jarFiles() {
-        return new Object[][]{{"MV_BOTH.jar", 9},
+        return new Object[][]{{"MV_BOTH.jar", Math.min(10, Runtime.version().major())},
                 {"MV_ONLY_9.jar", 9},
                 {"NON_MV.jar", 8}};
     }