Merge
authorprr
Tue, 09 May 2017 12:19:08 -0700
changeset 45342 1164ed6b9b8e
parent 45341 b7cc7f639ecf (current diff)
parent 45031 cd369ee4d4bc (diff)
child 45343 b0b8f2d6584e
Merge
jdk/test/ProblemList.txt
jdk/test/sample/TEST.properties
jdk/test/sample/chatserver/ChatTest.java
jdk/test/sample/mergesort/MergeSortTest.java
--- a/jdk/src/java.base/macosx/native/libnet/DefaultProxySelector.c	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/macosx/native/libnet/DefaultProxySelector.c	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
  * Copyright (c) 2017 SAP SE. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
--- a/jdk/src/java.base/share/classes/com/sun/crypto/provider/GCTR.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/classes/com/sun/crypto/provider/GCTR.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2017 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
--- a/jdk/src/java.base/share/classes/java/io/OutputStreamWriter.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/io/OutputStreamWriter.java	Tue May 09 12:19:08 2017 -0700
@@ -40,10 +40,8 @@
  *
  * <p> Each invocation of a write() method causes the encoding converter to be
  * invoked on the given character(s).  The resulting bytes are accumulated in a
- * buffer before being written to the underlying output stream.  The size of
- * this buffer may be specified, but by default it is large enough for most
- * purposes.  Note that the characters passed to the write() methods are not
- * buffered.
+ * buffer before being written to the underlying output stream.  Note that the
+ * characters passed to the write() methods are not buffered.
  *
  * <p> For top efficiency, consider wrapping an OutputStreamWriter within a
  * BufferedWriter so as to avoid frequent converter invocations.  For example:
--- a/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/MethodHandles.java	Tue May 09 12:19:08 2017 -0700
@@ -113,6 +113,19 @@
     }
 
     /**
+     * This reflected$lookup method is the alternate implementation of
+     * the lookup method when being invoked by reflection.
+     */
+    @CallerSensitive
+    private static Lookup reflected$lookup() {
+        Class<?> caller = Reflection.getCallerClass();
+        if (caller.getClassLoader() == null) {
+            throw newIllegalArgumentException("illegal lookupClass: "+caller);
+        }
+        return new Lookup(caller);
+    }
+
+    /**
      * Returns a {@link Lookup lookup object} which is trusted minimally.
      * The lookup has the {@code PUBLIC} and {@code UNCONDITIONAL} modes.
      * It can only be used to create method handles to public members of
@@ -747,7 +760,7 @@
         Lookup(Class<?> lookupClass) {
             this(lookupClass, FULL_POWER_MODES);
             // make sure we haven't accidentally picked up a privileged class:
-            checkUnprivilegedlookupClass(lookupClass, FULL_POWER_MODES);
+            checkUnprivilegedlookupClass(lookupClass);
         }
 
         private Lookup(Class<?> lookupClass, int allowedModes) {
@@ -827,7 +840,7 @@
                 newModes = 0;
             }
 
-            checkUnprivilegedlookupClass(requestedLookupClass, newModes);
+            checkUnprivilegedlookupClass(requestedLookupClass);
             return new Lookup(requestedLookupClass, newModes);
         }
 
@@ -979,25 +992,10 @@
          */
         static final Lookup PUBLIC_LOOKUP = new Lookup(Object.class, (PUBLIC|UNCONDITIONAL));
 
-        private static void checkUnprivilegedlookupClass(Class<?> lookupClass, int allowedModes) {
+        private static void checkUnprivilegedlookupClass(Class<?> lookupClass) {
             String name = lookupClass.getName();
             if (name.startsWith("java.lang.invoke."))
                 throw newIllegalArgumentException("illegal lookupClass: "+lookupClass);
-
-            // For caller-sensitive MethodHandles.lookup() disallow lookup from
-            // restricted packages.  This a fragile and blunt approach.
-            // TODO replace with a more formal and less fragile mechanism
-            // that does not bluntly restrict classes under packages within
-            // java.base from looking up MethodHandles or VarHandles.
-            if (allowedModes == FULL_POWER_MODES && lookupClass.getClassLoader() == null) {
-                if ((name.startsWith("java.") &&
-                     !name.equals("java.lang.Thread") &&
-                     !name.startsWith("java.util.concurrent.")) ||
-                    (name.startsWith("sun.") &&
-                     !name.startsWith("sun.invoke."))) {
-                    throw newIllegalArgumentException("illegal lookupClass: " + lookupClass);
-                }
-            }
         }
 
         /**
--- a/jdk/src/java.base/share/classes/jdk/internal/reflect/Reflection.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/classes/jdk/internal/reflect/Reflection.java	Tue May 09 12:19:08 2017 -0700
@@ -31,6 +31,7 @@
 import java.util.Map;
 import java.util.Objects;
 import jdk.internal.HotSpotIntrinsicCandidate;
+import jdk.internal.loader.ClassLoaders;
 import jdk.internal.misc.VM;
 
 /** Common utility routines used by both java.lang and
@@ -315,23 +316,13 @@
      */
     public static boolean isCallerSensitive(Method m) {
         final ClassLoader loader = m.getDeclaringClass().getClassLoader();
-        if (VM.isSystemDomainLoader(loader) || isExtClassLoader(loader))  {
+        if (VM.isSystemDomainLoader(loader) ||
+                loader == ClassLoaders.platformClassLoader()) {
             return m.isAnnotationPresent(CallerSensitive.class);
         }
         return false;
     }
 
-    private static boolean isExtClassLoader(ClassLoader loader) {
-        ClassLoader cl = ClassLoader.getSystemClassLoader();
-        while (cl != null) {
-            if (cl.getParent() == null && cl == loader) {
-                return true;
-            }
-            cl = cl.getParent();
-        }
-        return false;
-    }
-
     /**
      * Returns an IllegalAccessException with an exception message based on
      * the access that is denied.
--- a/jdk/src/java.base/share/classes/jdk/internal/reflect/ReflectionFactory.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/classes/jdk/internal/reflect/ReflectionFactory.java	Tue May 09 12:19:08 2017 -0700
@@ -135,6 +135,24 @@
         return soleInstance;
     }
 
+    /**
+     * Returns an alternate reflective Method instance for the given method
+     * intended for reflection to invoke, if present.
+     *
+     * A trusted method can define an alternate implementation for a method `foo`
+     * by defining a method named "reflected$foo" that will be invoked
+     * reflectively.
+     */
+    private static Method findMethodForReflection(Method method) {
+        String altName = "reflected$" + method.getName();
+        try {
+           return method.getDeclaringClass()
+                        .getDeclaredMethod(altName, method.getParameterTypes());
+        } catch (NoSuchMethodException ex) {
+            return null;
+        }
+    }
+
     //--------------------------------------------------------------------------
     //
     // Routines used by java.lang.reflect
@@ -161,6 +179,13 @@
     public MethodAccessor newMethodAccessor(Method method) {
         checkInitted();
 
+        if (Reflection.isCallerSensitive(method)) {
+            Method altMethod = findMethodForReflection(method);
+            if (altMethod != null) {
+                method = altMethod;
+            }
+        }
+
         if (noInflation && !ReflectUtil.isVMAnonymousClass(method.getDeclaringClass())) {
             return new MethodAccessorGenerator().
                 generateMethod(method.getDeclaringClass(),
--- a/jdk/src/java.base/share/classes/sun/security/util/ConstraintsParameters.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/ConstraintsParameters.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016, 2017 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 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
--- a/jdk/src/java.base/share/native/libjimage/endian.hpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/endian.hpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
--- a/jdk/src/java.base/share/native/libjimage/imageDecompressor.cpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/imageDecompressor.cpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
--- a/jdk/src/java.base/share/native/libjimage/imageDecompressor.hpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/imageDecompressor.hpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
--- a/jdk/src/java.base/share/native/libjimage/imageFile.hpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/imageFile.hpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
--- a/jdk/src/java.base/share/native/libjimage/inttypes.hpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/inttypes.hpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -47,4 +47,3 @@
 #endif
 
 #endif // LIBJIMAGE_INTTYPES_HPP
-
--- a/jdk/src/java.base/share/native/libjimage/jimage.hpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/jimage.hpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -202,4 +202,3 @@
 
 typedef bool (*JImage_ResourcePath_t)(JImageFile* jimage, JImageLocationRef location,
         char* buffer, jlong size);
-
--- a/jdk/src/java.base/share/native/libjimage/osSupport.hpp	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.base/share/native/libjimage/osSupport.hpp	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
--- a/jdk/src/java.desktop/share/classes/java/awt/AlphaComposite.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/AlphaComposite.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -74,7 +74,7 @@
  *
  * <blockquote>
  * <table summary="layout">
- * <tr><th align=left>Factor&nbsp;&nbsp;<th align=left>Definition
+ * <tr><th style="text-align:left">Factor&nbsp;&nbsp;<th style="text-align:left">Definition
  * <tr><td><em>A<sub>s</sub></em><td>the alpha component of the source pixel
  * <tr><td><em>C<sub>s</sub></em><td>a color component of the source pixel in premultiplied form
  * <tr><td><em>A<sub>d</sub></em><td>the alpha component of the destination pixel
@@ -114,7 +114,7 @@
  *
  * <blockquote>
  * <table summary="layout">
- * <tr><th align=left>Factor&nbsp;&nbsp;<th align=left>Definition
+ * <tr><th style="text-align:left">Factor&nbsp;&nbsp;<th style="text-align:left">Definition
  * <tr><td><em>C<sub>sr</sub></em> <td>one of the raw color components of the source pixel
  * <tr><td><em>C<sub>dr</sub></em> <td>one of the raw color components of the destination pixel
  * <tr><td><em>A<sub>ac</sub></em>  <td>the "extra" alpha component from the AlphaComposite instance
@@ -205,7 +205,7 @@
  * appropriate conversions are performed before and after the compositing
  * operation.
  *
- * <h3><a name="caveats">Implementation Caveats</a></h3>
+ * <h3><a id="caveats">Implementation Caveats</a></h3>
  *
  * <ul>
  * <li>
--- a/jdk/src/java.desktop/share/classes/java/awt/Graphics2D.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/Graphics2D.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, 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
@@ -78,7 +78,7 @@
  * <p>
  * When creating a {@code Graphics2D} object,  the
  * {@code GraphicsConfiguration}
- * specifies the <a name="deftransform">default transform</a> for
+ * specifies the <a id="deftransform">default transform</a> for
  * the target of the {@code Graphics2D} (a
  * {@link Component} or {@link Image}).  This default transform maps the
  * user space coordinate system to screen and printer device coordinates
@@ -129,7 +129,7 @@
  * of their particular rendering processes are:
  * <ol>
  * <li>
- * <b><a name="rendershape">{@code Shape} operations</a></b>
+ * <b><a id="rendershape">{@code Shape} operations</a></b>
  * <ol>
  * <li>
  * If the operation is a {@code draw(Shape)} operation, then
@@ -160,7 +160,7 @@
  * colors to render in device space.
  * </ol>
  * <li>
- * <b><a name=rendertext>Text operations</a></b>
+ * <b><a id=rendertext>Text operations</a></b>
  * <ol>
  * <li>
  * The following steps are used to determine the set of glyphs required
@@ -201,7 +201,7 @@
  * the colors to render in device space.
  * </ol>
  * <li>
- * <b><a name= renderingimage>{@code Image} Operations</a></b>
+ * <b><a id= renderingimage>{@code Image} Operations</a></b>
  * <ol>
  * <li>
  * The region of interest is defined by the bounding box of the source
--- a/jdk/src/java.desktop/share/classes/java/awt/GridBagLayout.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/GridBagLayout.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 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
@@ -122,7 +122,7 @@
  * are not.  Baseline relative values are calculated relative to the
  * baseline.  Valid values are:
  *
- * <center><table BORDER=0 WIDTH=800
+ * <center><table BORDER=0 style="width:800"
  *        SUMMARY="absolute, relative and baseline values as described above">
  * <tr>
  * <th><P style="text-align:left">Absolute Values</th>
@@ -198,7 +198,7 @@
  * The following figure shows a baseline layout and includes a
  * component that spans rows:
  * <center><table summary="Baseline Layout">
- * <tr ALIGN=CENTER>
+ * <tr style="text-align:center">
  * <td>
  * <img src="doc-files/GridBagLayout-baseline.png"
  *  alt="The following text describes this graphic (Figure 1)." style="float:center">
@@ -252,15 +252,15 @@
  * left-to-right container and Figure 3 shows the layout for a horizontal,
  * right-to-left container.
  *
- * <center><table WIDTH=600 summary="layout">
- * <tr ALIGN=CENTER>
+ * <center><table style="width:600" summary="layout">
+ * <tr style="text-align:center">
  * <td>
  * <img src="doc-files/GridBagLayout-1.gif" alt="The preceding text describes this graphic (Figure 1)." style="float:center; margin: 7px 10px;">
  * </td>
  * <td>
  * <img src="doc-files/GridBagLayout-2.gif" alt="The preceding text describes this graphic (Figure 2)." style="float:center; margin: 7px 10px;">
  * </td>
- * <tr ALIGN=CENTER>
+ * <tr style="text-align:center">
  * <td>Figure 2: Horizontal, Left-to-Right</td>
  * <td>Figure 3: Horizontal, Right-to-Left</td>
  * </tr>
--- a/jdk/src/java.desktop/share/classes/java/awt/GridLayout.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/GridLayout.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 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
@@ -55,20 +55,20 @@
  * If the container's {@code ComponentOrientation} property is horizontal
  * and right-to-left, the example produces the output shown in Figure 2.
  *
- * <table style="float:center" WIDTH=600 summary="layout">
- * <tr ALIGN=CENTER>
+ * <table style="float:center;width:600" summary="layout">
+ * <tr style="text-align:center">
  * <td><img SRC="doc-files/GridLayout-1.gif"
  *      alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 1 then 2.
  * Row 2 shows buttons 3 then 4. Row 3 shows buttons 5 then 6.">
  * </td>
  *
- * <td ALIGN=CENTER><img SRC="doc-files/GridLayout-2.gif"
- *                   alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 2 then 1.
+ * <td style="text-align:center"><img SRC="doc-files/GridLayout-2.gif"
+ *              alt="Shows 6 buttons in rows of 2. Row 1 shows buttons 2 then 1.
  * Row 2 shows buttons 4 then 3. Row 3 shows buttons 6 then 5.">
  * </td>
  * </tr>
  *
- * <tr ALIGN=CENTER>
+ * <tr style="text-align:center">
  * <td>Figure 1: Horizontal, Left-to-Right</td>
  *
  * <td>Figure 2: Horizontal, Right-to-Left</td>
--- a/jdk/src/java.desktop/share/classes/java/awt/LinearGradientPaint.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/LinearGradientPaint.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 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
@@ -91,10 +91,9 @@
  * <p>
  * This image demonstrates the example code above for each
  * of the three cycle methods:
- * <center>
+ * <p style="text-align:center">
  * <img src = "doc-files/LinearGradientPaint.png"
  * alt="image showing the output of the example code">
- * </center>
  *
  * @see java.awt.Paint
  * @see java.awt.Graphics2D#setPaint
--- a/jdk/src/java.desktop/share/classes/java/awt/MenuBar.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/MenuBar.java	Tue May 09 12:19:08 2017 -0700
@@ -46,7 +46,7 @@
  * the menu bar with a {@code Frame} object, call the
  * frame's {@code setMenuBar} method.
  * <p>
- * <A NAME="mbexample"></A><!-- target for cross references -->
+ * <a id="mbexample"></a><!-- target for cross references -->
  * This is what a menu bar might look like:
  * <p>
  * <img src="doc-files/MenuBar-1.gif"
--- a/jdk/src/java.desktop/share/classes/java/awt/RadialGradientPaint.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/RadialGradientPaint.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 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
@@ -79,18 +79,18 @@
  * The gradient color proportions are equal for any particular line drawn
  * from the focus point. The following figure shows that the distance AB
  * is equal to the distance BC, and the distance AD is equal to the distance DE.
- * <center>
+ * <p style="text-align:center">
  * <img src = "doc-files/RadialGradientPaint-3.png" alt="image showing the
  * distance AB=BC, and AD=DE">
- * </center>
+ * <p>
  * If the gradient and graphics rendering transforms are uniformly scaled and
  * the user sets the focus so that it coincides with the center of the circle,
  * the gradient color proportions are equal for any line drawn from the center.
  * The following figure shows the distances AB, BC, AD, and DE. They are all equal.
- * <center>
+ * <p style="text-align:center">
  * <img src = "doc-files/RadialGradientPaint-4.png" alt="image showing the
  * distance of AB, BC, AD, and DE are all equal">
- * </center>
+ * <p>
  * Note that some minor variations in distances may occur due to sampling at
  * the granularity of a pixel.
  * If no cycle method is specified, {@code NO_CYCLE} will be chosen by
@@ -116,11 +116,9 @@
  * <p>
  * This image demonstrates the example code above, with default
  * (centered) focus for each of the three cycle methods:
- * <center>
+ * <p style="text-align:center">
  * <img src = "doc-files/RadialGradientPaint-1.png" alt="image showing the
  * output of the sameple code">
- * </center>
- *
  * <p>
  * It is also possible to specify a non-centered focus point, as
  * in the following code:
@@ -139,10 +137,9 @@
  * <p>
  * This image demonstrates the previous example code, with non-centered
  * focus for each of the three cycle methods:
- * <center>
+ * <p style="text-align:center">
  * <img src = "doc-files/RadialGradientPaint-2.png" alt="image showing the
  * output of the sample code">
- * </center>
  *
  * @see java.awt.Paint
  * @see java.awt.Graphics2D#setPaint
--- a/jdk/src/java.desktop/share/classes/java/awt/Rectangle.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/Rectangle.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 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
@@ -39,7 +39,7 @@
  * that create a {@code Rectangle}, and the methods that can modify
  * one, do not prevent setting a negative value for width or height.
  * <p>
- * <a name="Empty">
+ * <a id="Empty">
  * A {@code Rectangle} whose width or height is exactly zero has location
  * along those axes with zero dimension, but is otherwise considered empty.</a>
  * The {@link #isEmpty} method will return true for such a {@code Rectangle}.
@@ -49,7 +49,7 @@
  * will include the location of the {@code Rectangle} on that axis in the
  * result as if the {@link #add(Point)} method were being called.
  * <p>
- * <a name="NonExistent">
+ * <a id="NonExistent">
  * A {@code Rectangle} whose width or height is negative has neither
  * location nor dimension along those axes with negative dimensions.
  * Such a {@code Rectangle} is treated as non-existent along those axes.
--- a/jdk/src/java.desktop/share/classes/java/awt/Shape.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/Shape.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, 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
@@ -43,7 +43,7 @@
  * object that describes the trajectory path of the {@code Shape}
  * outline.
  * <p>
- * <a name="def_insideness"><b>Definition of insideness:</b></a>
+ * <a id="def_insideness"><b>Definition of insideness:</b></a>
  * A point is considered to lie inside a
  * {@code Shape} if and only if:
  * <ul>
--- a/jdk/src/java.desktop/share/classes/java/awt/dnd/DragSourceContext.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/dnd/DragSourceContext.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -65,7 +65,7 @@
  * itself between the platform and the
  * listeners provided by the initiator of the drag operation.
  * <p>
- * <a name="defaultCursor"></a>
+ * <a id="defaultCursor"></a>
  * By default, {@code DragSourceContext} sets the cursor as appropriate
  * for the current state of the drag and drop operation. For example, if
  * the user has chosen {@linkplain DnDConstants#ACTION_MOVE the move action},
--- a/jdk/src/java.desktop/share/classes/java/awt/font/TextAttribute.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/font/TextAttribute.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -96,14 +96,14 @@
  * </UL>
  *
  * <h4>Summary of attributes</h4>
- * <table style="float:center" border="0" cellspacing="0" cellpadding="2" width="95%"
+ * <table style="float:center;width:95%" border="0" cellspacing="0" cellpadding="2"
  *     summary="Key, value type, principal constants, and default value
  *     behavior of all TextAttributes">
  * <tr style="background-color:#ccccff">
- * <th valign="TOP" align="CENTER">Key</th>
- * <th valign="TOP" align="CENTER">Value Type</th>
- * <th valign="TOP" align="CENTER">Principal Constants</th>
- * <th valign="TOP" align="CENTER">Default Value</th>
+ * <th valign="TOP" style="text-align:center">Key</th>
+ * <th valign="TOP" style="text-align:center">Value Type</th>
+ * <th valign="TOP" style="text-align:center">Principal Constants</th>
+ * <th valign="TOP" style="text-align:center">Default Value</th>
  * </tr>
  * <tr>
  * <td valign="TOP">{@link #FAMILY}</td>
--- a/jdk/src/java.desktop/share/classes/java/awt/geom/AffineTransform.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/geom/AffineTransform.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, 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
@@ -46,7 +46,7 @@
  *      [ y'] = [  m10  m11  m12  ] [ y ] = [ m10x + m11y + m12 ]
  *      [ 1 ]   [   0    0    1   ] [ 1 ]   [         1         ]
  * </pre>
- * <h3><a name="quadrantapproximation">Handling 90-Degree Rotations</a></h3>
+ * <h3><a id="quadrantapproximation">Handling 90-Degree Rotations</a></h3>
  * <p>
  * In some variations of the {@code rotate} methods in the
  * {@code AffineTransform} class, a double-precision argument
--- a/jdk/src/java.desktop/share/classes/java/awt/geom/Arc2D.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/geom/Arc2D.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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,11 +33,11 @@
  * start angle, angular extent (length of the arc), and a closure type
  * ({@code OPEN}, {@code CHORD}, or {@code PIE}).
  * <p>
- * <a name="inscribes">
+ * <a id="inscribes">
  * The arc is a partial section of a full ellipse which
  * inscribes the framing rectangle of its parent</a> {@link RectangularShape}.
  *
- * <a name="angles">
+ * <a id="angles">
  * The angles are specified relative to the non-square
  * framing rectangle such that 45 degrees always falls on the line from
  * the center of the ellipse to the upper right corner of the framing
--- a/jdk/src/java.desktop/share/classes/java/awt/geom/Path2D.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/geom/Path2D.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 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
@@ -846,7 +846,7 @@
          * path.
          *
          * @serialData
-         * <a name="Path2DSerialData"><!-- --></a>
+         * <a id="Path2DSerialData"><!-- --></a>
          * <ol>
          * <li>The default serializable fields.
          * There are no default serializable fields as of 1.6.
@@ -1605,7 +1605,7 @@
          * path.
          *
          * @serialData
-         * <a name="Path2DSerialData"><!-- --></a>
+         * <a id="Path2DSerialData"><!-- --></a>
          * <ol>
          * <li>The default serializable fields.
          * There are no default serializable fields as of 1.6.
--- a/jdk/src/java.desktop/share/classes/java/awt/im/spi/package-info.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/im/spi/package-info.java	Tue May 09 12:19:08 2017 -0700
@@ -33,7 +33,7 @@
  * languages and the use of entirely different input mechanisms, such as
  * handwriting recognition.
  *
- * <h2><a name="Packaging"></a>Packaging Input Methods</h2>
+ * <h2><a id="Packaging"></a>Packaging Input Methods</h2>
  * Input methods can be made available by adding them to the application's class
  * path. The main JAR file of an input method must contain the file:
  * <pre>
@@ -61,14 +61,14 @@
  * that loading of the class implementing {@code InputMethod} can be deferred
  * until actually needed.
  *
- * <h2><a name="Loading"></a>Loading Input Methods</h2>
+ * <h2><a id="Loading"></a>Loading Input Methods</h2>
  * The input method framework will usually defer loading of input  method
  * classes until they are absolutely needed. It loads only the
  * {@code InputMethodDescriptor} implementations during AWT initialization. It
  * loads an {@code InputMethod} implementation when the input method has been
  * selected.
  *
- * <h2><a name="PeeredComponents"></a>Java Input Methods and Peered Text
+ * <h2><a id="PeeredComponents"></a>Java Input Methods and Peered Text
  * Components</h2>
  * The Java input method framework intends to support all combinations of input
  * methods (host input methods and Java input methods) and components (peered
--- a/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferByte.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferByte.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -42,7 +42,7 @@
  * Values stored in the byte array(s) of this {@code DataBuffer} are treated as
  * unsigned values.
  * <p>
- * <a name="optimizations">
+ * <a id="optimizations">
  * Note that some implementations may function more efficiently
  * if they can maintain control over how the data for an image is
  * stored.
--- a/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferDouble.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferDouble.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 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,7 +31,7 @@
  * This class extends {@code DataBuffer} and stores data internally
  * in {@code double} form.
  * <p>
- * <a name="optimizations">
+ * <a id="optimizations">
  * Note that some implementations may function more efficiently
  * if they can maintain control over how the data for an image is
  * stored.
--- a/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferFloat.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferFloat.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 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,7 +31,7 @@
  * This class extends {@code DataBuffer} and stores data internally
  * in {@code float} form.
  * <p>
- * <a name="optimizations">
+ * <a id="optimizations">
  * Note that some implementations may function more efficiently
  * if they can maintain control over how the data for an image is
  * stored.
--- a/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferInt.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferInt.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -41,7 +41,7 @@
  * This class extends {@code DataBuffer} and stores data internally
  * as integers.
  * <p>
- * <a name="optimizations">
+ * <a id="optimizations">
  * Note that some implementations may function more efficiently
  * if they can maintain control over how the data for an image is
  * stored.
--- a/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferShort.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferShort.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -40,7 +40,7 @@
 /**
  * This class extends {@code DataBuffer} and stores data internally as shorts.
  * <p>
- * <a name="optimizations">
+ * <a id="optimizations">
  * Note that some implementations may function more efficiently
  * if they can maintain control over how the data for an image is
  * stored.
--- a/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferUShort.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/DataBufferUShort.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -42,7 +42,7 @@
  * shorts.  Values stored in the short array(s) of this {@code DataBuffer}
  * are treated as unsigned values.
  * <p>
- * <a name="optimizations">
+ * <a id="optimizations">
  * Note that some implementations may function more efficiently
  * if they can maintain control over how the data for an image is
  * stored.
--- a/jdk/src/java.desktop/share/classes/java/awt/image/IndexColorModel.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/java/awt/image/IndexColorModel.java	Tue May 09 12:19:08 2017 -0700
@@ -55,7 +55,7 @@
  * {@code IndexColorModel} objects are never pre-multiplied with
  * the alpha components.
  * <p>
- * <a name="transparency">
+ * <a id="transparency">
  * The transparency of an {@code IndexColorModel} object is
  * determined by examining the alpha components of the colors in the
  * colormap and choosing the most specific value after considering
@@ -86,7 +86,7 @@
  * and {@code getNumComponents} returns 4.
  *
  * <p>
- * <a name="index_values">
+ * <a id="index_values">
  * The values used to index into the colormap are taken from the least
  * significant <em>n</em> bits of pixel representations where
  * <em>n</em> is based on the pixel size specified in the constructor.
--- a/jdk/src/java.desktop/share/classes/javax/accessibility/package-info.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/accessibility/package-info.java	Tue May 09 12:19:08 2017 -0700
@@ -37,7 +37,7 @@
  * interfaces, and 6 Java programming language classes. These are described
  * below.
  *
- * <h3><a name="Accessible"></a><a href="Accessible.html">Interface
+ * <h3><a id="Accessible"></a><a href="Accessible.html">Interface
  * Accessible</a></h3>
  * <a href="Accessible.html">Interface Accessible</a> is the main interface of
  * the Java Accessibility API. All components that support the Java
@@ -48,7 +48,7 @@
  * object that is part of the user interface of a Java application, if that
  * program is to be compatible with assistive technologies.
  *
- * <h3><a name="AccessibleContext"></a><a href="AccessibleContext.html">Class
+ * <h3><a id="AccessibleContext"></a><a href="AccessibleContext.html">Class
  * AccessibleContext</a></h3>
  * <a href="AccessibleContext.html">AccessibleContext</a> represents the minimum
  * information all accessible objects return and is obtained by calling the
@@ -108,7 +108,7 @@
  *     called on an AccessibleContext.</li>
  * </ul>
  *
- * <h3><a name="AccessibleRole"></a><a href="AccessibleRole.html">Class
+ * <h3><a id="AccessibleRole"></a><a href="AccessibleRole.html">Class
  * AccessibleRole</a></h3>
  * This class encapsulates the Accessible object's role in the user interface
  * and is obtained by calling the {@code getAccessibleRole} method on an
@@ -123,7 +123,7 @@
  * programmer-defined roles can be added in the future without needing to modify
  * the base class.
  *
- * <h3><a name="AccessibleState"></a><a href="AccessibleState.html">Class
+ * <h3><a id="AccessibleState"></a><a href="AccessibleState.html">Class
  * AccessibleState</a></h3>
  * This class encapsulates a particular state of the Accessible object.
  * Accessible states include things like "Armed", "Busy", "Checked", "Focused",
@@ -142,7 +142,7 @@
  * additional, programmer-defined roles can be added in the future without
  * needing to modify the base class.
  *
- * <h3><a name="AccessibleStateSet"></a><a href="AccessibleStateSet.html">Class
+ * <h3><a id="AccessibleStateSet"></a><a href="AccessibleStateSet.html">Class
  * AccessibleStateSet</a></h3>
  * This class encapsulates a collection of states of the Accessible object and
  * is obtained by calling the {@code getAccessibleStateSet} method on an
@@ -152,7 +152,7 @@
  * class provide for retrieving the individual
  * <a href="#AccessibleState">AccessibleStates</a> on the state set.
  *
- * <h3><a name="AccessibleBundle"></a><a href="AccessibleBundle.html">Class
+ * <h3><a id="AccessibleBundle"></a><a href="AccessibleBundle.html">Class
  * AccessibleBundle</a></h3>
  * This class is used to maintain a strongly typed enumeration. It is the super
  * class of both the <a href="#AccessibleRole">AccessibleRole</a> and
@@ -161,7 +161,7 @@
  * <a href="#AccessibleRole">AccessibleRole</a> and
  * <a href="#AccessibleState">AccessibleState</a> classes.
  *
- * <h3><a name="AccessibleAction"></a><a href="AccessibleAction.html">Interface
+ * <h3><a id="AccessibleAction"></a><a href="AccessibleAction.html">Interface
  * AccessibleAction</a></h3>
  * The <a href="AccessibleAction.html">AccessibleAction</a> interface should be
  * supported by any object that can perform one or more actions. This interface
@@ -177,7 +177,7 @@
  * <a href="#AccessibleContext">AccessibleContext</a>. If the return value is
  * not null, the object supports this interface.
  *
- * <h3> <a name="AccessibleComponent"></a><a href="AccessibleComponent.html">
+ * <h3> <a id="AccessibleComponent"></a><a href="AccessibleComponent.html">
  * Interface AccessibleComponent</a></h3>
  * The <a href="AccessibleComponent.html">AccessibleComponent</a> interface
  * should be supported by any object that is rendered on the screen. This
@@ -190,7 +190,7 @@
  * <a href="#AccessibleContext">AccessibleContext</a>. If the return value is
  * not null, the object supports this interface.
  *
- * <h3><a name="AccessibleSelection"></a><a href="AccessibleSelection.html">
+ * <h3><a id="AccessibleSelection"></a><a href="AccessibleSelection.html">
  * Interface AccessibleSelection</a></h3>
  * The <a href="AccessibleSelection.html">AccessibleSelection</a> interface
  * provides the standard mechanism for an assistive technology to determine what
@@ -206,7 +206,7 @@
  * <a href="#AccessibleContext">AccessibleContext</a>. If the return value is
  * not null, the object supports this interface.
  *
- * <h3><a name="AccessibleText"></a><a href="AccessibleText.html">Interface
+ * <h3><a id="AccessibleText"></a><a href="AccessibleText.html">Interface
  * AccessibleText</a></h3>
  * Interface <a href="AccessibleText.html">AccessibleText</a> is the contract
  * for making rich, editable text Accessible. Not all text displayed on the
@@ -230,7 +230,7 @@
  * <a href="#AccessibleContext">AccessibleContext</a>. If the return value is
  * not null, the object supports this interface.
  *
- * <h3><a name="AccessibleHypertext"></a> <a href="AccessibleHypertext.html">
+ * <h3><a id="AccessibleHypertext"></a> <a href="AccessibleHypertext.html">
  * Interface AccessibleHypertext</a></h3>
  * The <a href="AccessibleHypertext.html">AccessibleHypertext</a> interface
  * should be supported by any object that presents hypertext information on the
@@ -246,7 +246,7 @@
  * class which extends AccessibleHypertext, then that object supports
  * AccessibleHypertext.
  *
- * <h3><a name="AccessibleHyperlink"></a><a href="AccessibleHyperlink.html">
+ * <h3><a id="AccessibleHyperlink"></a><a href="AccessibleHyperlink.html">
  * Interface AccessibleHyperlink</a></h3>
  * An object that is a hyperlink should support the
  * <a href="AccessibleHyperlink.html">AccessibleHyperlink</a> interface.&nbsp;
@@ -254,7 +254,7 @@
  * getLink method on an <a href="#AccessibleHypertext">AccessibleHypertext</a>
  * object.
  *
- * <h3><a name="AccessibleValue"></a><a href="AccessibleValue.html">Interface
+ * <h3><a id="AccessibleValue"></a><a href="AccessibleValue.html">Interface
  * AccessibleValue</a></h3>
  * The <a href="AccessibleValue.html">AccessibleValue</a> interface should be
  * supported by any object that supports a numerical value (e.g., a scroll bar).
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFDirectory.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFDirectory.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 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,8 +63,8 @@
  * <p>A {@code TIFFDirectory} is aware of the tag numbers in the
  * group of {@link TIFFTagSet}s associated with it. When
  * a {@code TIFFDirectory} is created from a native image metadata
- * object, these tag sets are derived from the <tt>tagSets</tt> attribute
- * of the <tt>TIFFIFD</tt> node.</p>
+ * object, these tag sets are derived from the {@code tagSets} attribute
+ * of the {@code TIFFIFD} node.</p>
  *
  * <p>A {@code TIFFDirectory} might also have a parent {@link TIFFTag}.
  * This will occur if the directory represents an IFD other than the root
@@ -73,8 +73,8 @@
  * {@link TIFFTag#isIFDPointer} method of this parent {@code TIFFTag}
  * must return {@code true}.  When a {@code TIFFDirectory} is
  * created from a native image metadata object, the parent tag set is set
- * from the <tt>parentTagName</tt> attribute of the corresponding
- * <tt>TIFFIFD</tt> node. Note that a {@code TIFFDirectory} instance
+ * from the {@code parentTagName} attribute of the corresponding
+ * {@code TIFFIFD} node. Note that a {@code TIFFDirectory} instance
  * which has a non-{@code null} parent tag will be contained in the
  * data field of a {@code TIFFField} instance which has a tag field
  * equal to the contained directory's parent tag.</p>
@@ -133,8 +133,8 @@
      * an image metadata object. The supplied object must support an image
      * metadata format supported by the TIFF {@link javax.imageio.ImageWriter}
      * plug-in. This will usually be either the TIFF native image metadata
-     * format <tt>javax_imageio_tiff_image_1.0</tt> or the Java
-     * Image I/O standard metadata format <tt>javax_imageio_1.0</tt>.
+     * format {@code javax_imageio_tiff_image_1.0} or the Java
+     * Image I/O standard metadata format {@code javax_imageio_1.0}.
      *
      * @param tiffImageMetadata A metadata object which supports a compatible
      * image metadata format.
--- a/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java	Tue May 09 12:19:08 2017 -0700
@@ -62,7 +62,7 @@
  *
  * <tr>
  * <td>
- * <tt>BYTE</tt>
+ * {@code BYTE}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_BYTE}
@@ -77,7 +77,7 @@
  *
  * <tr>
  * <td>
- * <tt>ASCII</tt>
+ * {@code ASCII}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_ASCII}
@@ -92,7 +92,7 @@
  *
  * <tr>
  * <td>
- * <tt>SHORT</tt>
+ * {@code SHORT}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_SHORT}
@@ -107,7 +107,7 @@
  *
  * <tr>
  * <td>
- * <tt>LONG</tt>
+ * {@code LONG}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_LONG}
@@ -122,7 +122,7 @@
  *
  * <tr>
  * <td>
- * <tt>RATIONAL</tt>
+ * {@code RATIONAL}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_RATIONAL}
@@ -137,7 +137,7 @@
  *
  * <tr>
  * <td>
- * <tt>SBYTE</tt>
+ * {@code SBYTE}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_SBYTE}
@@ -152,7 +152,7 @@
  *
  * <tr>
  * <td>
- * <tt>UNDEFINED</tt>
+ * {@code UNDEFINED}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_UNDEFINED}
@@ -167,7 +167,7 @@
  *
  * <tr>
  * <td>
- * <tt>SSHORT</tt>
+ * {@code SSHORT}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_SSHORT}
@@ -182,7 +182,7 @@
  *
  * <tr>
  * <td>
- * <tt>SLONG</tt>
+ * {@code SLONG}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_SLONG}
@@ -197,7 +197,7 @@
  *
  * <tr>
  * <td>
- * <tt>SRATIONAL</tt>
+ * {@code SRATIONAL}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_SRATIONAL}
@@ -212,7 +212,7 @@
  *
  * <tr>
  * <td>
- * <tt>FLOAT</tt>
+ * {@code FLOAT}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_FLOAT}
@@ -227,7 +227,7 @@
  *
  * <tr>
  * <td>
- * <tt>DOUBLE</tt>
+ * {@code DOUBLE}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_DOUBLE}
@@ -242,7 +242,7 @@
  *
  * <tr>
  * <td>
- * <tt>IFD</tt>
+ * {@code IFD}
  * </td>
  * <td>
  * {@link TIFFTag#TIFF_IFD_POINTER}
@@ -941,14 +941,14 @@
 
     /**
      * Returns the {@code TIFFField} as a node named either
-     * <tt>"TIFFField"</tt> or <tt>"TIFFIFD"</tt> as described in the
+     * {@code "TIFFField"} or {@code "TIFFIFD"} as described in the
      * TIFF native image metadata specification. The node will be named
-     * <tt>"TIFFIFD"</tt> if and only if {@link #hasDirectory()} returns
+     * {@code "TIFFIFD"} if and only if {@link #hasDirectory()} returns
      * {@code true} and the field's type is either {@link TIFFTag#TIFF_LONG}
      * or {@link TIFFTag#TIFF_IFD_POINTER}.
      *
-     * @return a {@code Node} named <tt>"TIFFField"</tt> or
-     * <tt>"TIFFIFD"</tt>.
+     * @return a {@code Node} named {@code "TIFFField"} or
+     * {@code "TIFFIFD"}.
      */
     public Node getAsNativeNode() {
         return new TIFFFieldNode(this);
--- a/jdk/src/java.desktop/share/classes/javax/print/MimeType.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/print/MimeType.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 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
@@ -50,7 +50,6 @@
  * <LI>
  * Since not all Java profiles include the AWT, the Jini Print Service should
  * not depend on an AWT class.
- * <P>
  * <LI>
  * The implementation of class java.awt.datatransfer.MimeType does not
  * guarantee
@@ -76,7 +75,6 @@
  * <LI> Quoting backslash characters inside parameter values are removed.
  * <LI> The parameters are arranged in ascending order of parameter name.
  * </UL>
- * <P>
  *
  * @author  Alan Kaminsky
  */
--- a/jdk/src/java.desktop/share/classes/javax/print/attribute/standard/Finishings.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/print/attribute/standard/Finishings.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 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
@@ -40,7 +40,7 @@
  * for purposes of finishing.
  * <P>
  * Standard Finishings values are:
- * <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100% SUMMARY="layout">
+ * <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 style="width:100%" SUMMARY="layout">
  * <TR>
  * <TD STYLE="WIDTH:10%">
  * &nbsp;
@@ -76,7 +76,7 @@
  * <P>
  * The following Finishings values are more specific; they indicate a
  * corner or an edge as if the document were a portrait document:
- * <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100% SUMMARY="layout">
+ * <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 style="width:100%" SUMMARY="layout">
  * <TR>
  * <TD STYLE="WIDTH:10%">
  * &nbsp;
--- a/jdk/src/java.desktop/share/classes/javax/print/attribute/standard/MultipleDocumentHandling.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/print/attribute/standard/MultipleDocumentHandling.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 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
@@ -70,7 +70,7 @@
  * The standard MultipleDocumentHandling values are:
  * <UL>
  * <LI>
- * <a NAME="sdfi"></a>{@link #SINGLE_DOCUMENT
+ * <a id="sdfi"></a>{@link #SINGLE_DOCUMENT
  * <B>SINGLE_DOCUMENT</B>}. If a print job has multiple
  * documents -- say, the document data is called {@code a} and
  * {@code b} -- then the result of processing all the document data
@@ -85,7 +85,7 @@
  * each copy ({@code a(*),b(*)}) to start on a new media sheet.
  *
  * <LI>
- * <a NAME="sducfi"></a>{@link #SEPARATE_DOCUMENTS_UNCOLLATED_COPIES
+ * <a id="sducfi"></a>{@link #SEPARATE_DOCUMENTS_UNCOLLATED_COPIES
  * <B>SEPARATE_DOCUMENTS_UNCOLLATED_COPIES</B>}. If a print job
  * has multiple documents -- say, the document data is called {@code a} and
  * {@code b} -- then the result of processing the data in each document
@@ -98,7 +98,7 @@
  * {@code a(*),a(*),...,b(*),b(*)...}.
  *
  * <LI>
- * <a NAME="sdccfi"></a>{@link #SEPARATE_DOCUMENTS_COLLATED_COPIES
+ * <a id="sdccfi"></a>{@link #SEPARATE_DOCUMENTS_COLLATED_COPIES
  * <B>SEPARATE_DOCUMENTS_COLLATED_COPIES</B>}. If a print job
  * has multiple documents -- say, the document data is called {@code a} and
  * {@code b} -- then the result of processing the data in each document
@@ -111,7 +111,7 @@
  * {@code a(*),b(*),a(*),b(*),...}.
  *
  * <LI>
- * <a NAME="sdnsfi"></a>{@link #SINGLE_DOCUMENT_NEW_SHEET
+ * <a id="sdnsfi"></a>{@link #SINGLE_DOCUMENT_NEW_SHEET
  * <B>SINGLE_DOCUMENT_NEW_SHEET</B>}. Same as SINGLE_DOCUMENT,
  * except that the printer must ensure that the first impression of each
  * document instance in the job is placed on a new media sheet. This value
--- a/jdk/src/java.desktop/share/classes/javax/sound/midi/MidiMessage.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/sound/midi/MidiMessage.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 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
@@ -47,15 +47,15 @@
  * {@code MidiMessage} includes methods to get, but not set, these values.
  * Setting them is a subclass responsibility.
  * <p>
- * <a name="integersVsBytes"></a> The MIDI standard expresses MIDI data in
+ * <a id="integersVsBytes"></a> The MIDI standard expresses MIDI data in
  * bytes. However, because Java<sup>TM</sup> uses signed bytes, the Java Sound
  * API uses integers instead of bytes when expressing MIDI data. For example,
  * the {@link #getStatus()} method of {@code MidiMessage} returns MIDI status
  * bytes as integers. If you are processing MIDI data that originated outside
  * Java Sound and now is encoded as signed bytes, the bytes can be
  * converted to integers using this conversion:
- *
- * <center>{@code int i = (int)(byte & 0xFF)}</center>
+ * <p style="text-align:center">
+ * {@code int i = (int)(byte & 0xFF)}
  * <p>
  * If you simply need to pass a known MIDI byte value as a method parameter, it
  * can be expressed directly as an integer, using (for example) decimal or
--- a/jdk/src/java.desktop/share/classes/javax/sound/midi/VoiceStatus.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/sound/midi/VoiceStatus.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 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
@@ -51,7 +51,7 @@
  * given type of {@code Synthesizer} always has a fixed number of voices, equal
  * to the maximum number of simultaneous notes it is capable of sounding.
  * <p>
- * <a NAME="description_of_active"></a> If the voice is not currently processing
+ * <a id="description_of_active"></a> If the voice is not currently processing
  * a MIDI note, it is considered inactive. A voice is inactive when it has been
  * given no note-on commands, or when every note-on command received has been
  * terminated by a corresponding note-off (or by an "all notes off" message).
--- a/jdk/src/java.desktop/share/classes/javax/sound/sampled/FloatControl.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/sound/sampled/FloatControl.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 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
@@ -361,8 +361,8 @@
          * loudness is unaffected. Note that gain measures dB, not amplitude.
          * The relationship between a gain in decibels and the corresponding
          * linear amplitude multiplier is:
-         *
-         * <CENTER>{@code linearScalar = pow(10.0, gainDB/20.0)}</CENTER>
+         * <p style="text-align:center">
+         * {@code linearScalar = pow(10.0, gainDB/20.0)}
          * <p>
          * The {@code FloatControl} class has methods to impose a maximum and
          * minimum allowable value for gain. However, because an audio signal
--- a/jdk/src/java.desktop/share/classes/javax/sound/sampled/SourceDataLine.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/sound/sampled/SourceDataLine.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 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
@@ -159,9 +159,9 @@
      * <p>
      * The number of bytes to write must represent an integral number of sample
      * frames, such that:
-     * <br>
-     * <center>{@code [ bytes written ] % [frame size in bytes ] == 0}</center>
-     * <br>
+     * <p style="text-align:center">
+     * {@code [ bytes written ] % [frame size in bytes ] == 0}
+     * <p>
      * The return value will always meet this requirement. A request to write a
      * number of bytes representing a non-integral number of sample frames
      * cannot be fulfilled and may result in an
--- a/jdk/src/java.desktop/share/classes/javax/sound/sampled/TargetDataLine.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/sound/sampled/TargetDataLine.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 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
@@ -149,9 +149,9 @@
      * <p>
      * The number of bytes to be read must represent an integral number of
      * sample frames, such that:
-     * <br>
-     * <center>{@code [ bytes read ] % [frame size in bytes ] == 0}</center>
-     * <br>
+     * <p style="text-align:center">
+     * {@code [ bytes read ] % [frame size in bytes ] == 0}
+     * <p>
      * The return value will always meet this requirement. A request to read a
      * number of bytes representing a non-integral number of sample frames
      * cannot be fulfilled and may result in an IllegalArgumentException.
--- a/jdk/src/java.desktop/share/classes/javax/swing/Action.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/Action.java	Tue May 09 12:19:08 2017 -0700
@@ -69,7 +69,7 @@
  * are desired, and use simple <code>ActionListener</code>s elsewhere.
  * <br>
  *
- * <h3><a name="buttonActions"></a>Swing Components Supporting <code>Action</code></h3>
+ * <h3><a id="buttonActions"></a>Swing Components Supporting <code>Action</code></h3>
  * <p>
  * Many of Swing's components have an <code>Action</code> property.  When
  * an <code>Action</code> is set on a component, the following things
@@ -96,34 +96,34 @@
  *
  * <table border="1" cellpadding="1" cellspacing="0"
  *         summary="Supported Action properties">
- *  <tr valign="top"  align="left">
- *    <th style="background-color:#CCCCFF" align="left">Component Property
- *    <th style="background-color:#CCCCFF" align="left">Components
- *    <th style="background-color:#CCCCFF" align="left">Action Key
- *    <th style="background-color:#CCCCFF" align="left">Notes
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
+ *    <th style="background-color:#CCCCFF;text-align:left">Component Property
+ *    <th style="background-color:#CCCCFF;text-align:left">Components
+ *    <th style="background-color:#CCCCFF;text-align:left">Action Key
+ *    <th style="background-color:#CCCCFF;text-align:left">Notes
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>enabled</code></b>
  *      <td>All
  *      <td>The <code>isEnabled</code> method
  *      <td>&nbsp;
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>toolTipText</code></b>
  *      <td>All
  *      <td><code>SHORT_DESCRIPTION</code>
  *      <td>&nbsp;
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>actionCommand</code></b>
  *      <td>All
  *      <td><code>ACTION_COMMAND_KEY</code>
  *      <td>&nbsp;
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>mnemonic</code></b>
  *      <td>All buttons
  *      <td><code>MNEMONIC_KEY</code>
  *      <td>A <code>null</code> value or <code>Action</code> results in the
  *          button's <code>mnemonic</code> property being set to
  *          <code>'\0'</code>.
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>text</code></b>
  *      <td>All buttons
  *      <td><code>NAME</code>
@@ -139,7 +139,7 @@
  *          <code>true</code> if the <code>Action</code> has a
  *          non-<code>null</code> value for <code>LARGE_ICON_KEY</code> or
  *          <code>SMALL_ICON</code>.
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>displayedMnemonicIndex</code></b>
  *      <td>All buttons
  *      <td><code>DISPLAYED_MNEMONIC_INDEX_KEY</code>
@@ -150,7 +150,7 @@
  *          mnemonic index is not updated.  In any subsequent changes to
  *          <code>DISPLAYED_MNEMONIC_INDEX_KEY</code>, <code>null</code>
  *          is treated as -1.
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>icon</code></b>
  *      <td>All buttons except of <code>JCheckBox</code>,
  *      <code>JToggleButton</code> and <code>JRadioButton</code>.
@@ -160,13 +160,13 @@
  *         <code>SMALL_ICON</code>.  All other buttons will use
  *         <code>LARGE_ICON_KEY</code>; if the value is <code>null</code> they
  *         use <code>SMALL_ICON</code>.
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>accelerator</code></b>
  *      <td>All <code>JMenuItem</code> subclasses, with the exception of
  *          <code>JMenu</code>.
  *      <td><code>ACCELERATOR_KEY</code>
  *      <td>&nbsp;
- *  <tr valign="top"  align="left">
+ *  <tr valign="top" style="text-align:left">
  *      <td><b><code>selected</code></b>
  *      <td><code>JToggleButton</code>, <code>JCheckBox</code>,
  *          <code>JRadioButton</code>, <code>JCheckBoxMenuItem</code> and
--- a/jdk/src/java.desktop/share/classes/javax/swing/BoxLayout.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/BoxLayout.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -38,7 +38,7 @@
  * arranged when the frame is resized.
  * <TABLE STYLE="FLOAT:RIGHT" BORDER="0" SUMMARY="layout">
  *    <TR>
- *      <TD ALIGN="CENTER">
+ *      <TD style="text-align:center">
  *         <P STYLE="TEXT-ALIGN:CENTER"><IMG SRC="doc-files/BoxLayout-1.gif"
  *          alt="The following text describes this graphic."
  *          WIDTH="191" HEIGHT="201" STYLE="FLOAT:BOTTOM; BORDER:0">
--- a/jdk/src/java.desktop/share/classes/javax/swing/DefaultListCellRenderer.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/DefaultListCellRenderer.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 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
@@ -40,7 +40,7 @@
 /**
  * Renders an item in a list.
  * <p>
- * <strong><a name="override">Implementation Note:</a></strong>
+ * <strong><a id="override">Implementation Note:</a></strong>
  * This class overrides
  * <code>invalidate</code>,
  * <code>validate</code>,
--- a/jdk/src/java.desktop/share/classes/javax/swing/JLayeredPane.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JLayeredPane.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -49,7 +49,7 @@
  *
  * <TABLE STYLE="FLOAT:RIGHT" BORDER="0" SUMMARY="layout">
  * <TR>
- *   <TD ALIGN="CENTER">
+ *   <TD style="text-align:center">
  *     <P STYLE="TEXT-ALIGN:CENTER"><IMG SRC="doc-files/JLayeredPane-1.gif"
  *     alt="The following text describes this image."
  *     WIDTH="269" HEIGHT="264" STYLE="FLOAT:BOTTOM; BORDER=0">
--- a/jdk/src/java.desktop/share/classes/javax/swing/JList.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JList.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -145,7 +145,7 @@
  * Responsibility for listening to selection changes in order to keep the list's
  * visual representation up to date lies with the list's {@code ListUI}.
  * <p>
- * <a name="renderer"></a>
+ * <a id="renderer"></a>
  * Painting of cells in a {@code JList} is handled by a delegate called a
  * cell renderer, installed on the list as the {@code cellRenderer} property.
  * The renderer provides a {@code java.awt.Component} that is used
@@ -201,7 +201,7 @@
  * To avoid these calculations, you can set a {@code fixedCellWidth} and
  * {@code fixedCellHeight} on the list, or have these values calculated
  * automatically based on a single prototype value:
- * <a name="prototype_example"></a>
+ * <a id="prototype_example"></a>
  * <pre>
  * {@code
  * JList<String> bigDataList = new JList<String>(bigData);
--- a/jdk/src/java.desktop/share/classes/javax/swing/JOptionPane.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JOptionPane.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -143,7 +143,7 @@
  * in which case a default <code>Frame</code> is used as the parent,
  * and the dialog will be
  * centered on the screen (depending on the {@literal L&F}).
- * <dt><a name=message>message</a><dd>
+ * <dt><a id=message>message</a><dd>
  * A descriptive message to be placed in the dialog box.
  * In the most common usage, message is just a <code>String</code> or
  * <code>String</code> constant.
--- a/jdk/src/java.desktop/share/classes/javax/swing/JRootPane.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JRootPane.java	Tue May 09 12:19:08 2017 -0700
@@ -72,7 +72,7 @@
  * </blockquote>
  * <table style="float:right" border="0" summary="layout">
  * <tr>
- * <td align="center">
+ * <td style="text-align:center">
  * <img src="doc-files/JRootPane-2.gif"
  * alt="The following text describes this graphic." HEIGHT=386 WIDTH=349>
  * </td>
--- a/jdk/src/java.desktop/share/classes/javax/swing/JScrollPane.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JScrollPane.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -57,7 +57,7 @@
  *
  * <TABLE STYLE="FLOAT:RIGHT" BORDER="0" SUMMARY="layout">
  *    <TR>
- *    <TD ALIGN="CENTER">
+ *    <TD style="text-align:center">
  *      <P STYLE="TEXT-ALIGN:CENTER"><IMG SRC="doc-files/JScrollPane-1.gif"
  *      alt="The following text describes this image."
  *      WIDTH="256" HEIGHT="248" STYLE="FLOAT:BOTTOM; BORDER:0px">
--- a/jdk/src/java.desktop/share/classes/javax/swing/JTree.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/JTree.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -44,7 +44,7 @@
 import static sun.swing.SwingUtilities2.Section.*;
 
 /**
- * <a name="jtree_description"></a>
+ * <a id="jtree_description"></a>
  * A control that displays a set of hierarchical data as an outline.
  * You can find task-oriented documentation and examples of using trees in
  * <a href="http://docs.oracle.com/javase/tutorial/uiswing/components/tree.html">How to Use Trees</a>,
--- a/jdk/src/java.desktop/share/classes/javax/swing/LookAndFeel.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/LookAndFeel.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -91,7 +91,7 @@
  * to provide a specific set of defaults. These are documented in the
  * classes that require the specific default.
  *
- * <h3><a name="defaultRecommendation">ComponentUIs and defaults</a></h3>
+ * <h3><a id="defaultRecommendation">ComponentUIs and defaults</a></h3>
  *
  * All {@code ComponentUIs} typically need to set various properties
  * on the {@code JComponent} the {@code ComponentUI} is providing the
@@ -121,7 +121,7 @@
  * provided by this class as they handle the necessary checking and install
  * the property using the recommended guidelines.
  *
- * <h3><a name="exceptions"></a>Exceptions</h3>
+ * <h3><a id="exceptions"></a>Exceptions</h3>
  *
  * All of the install methods provided by {@code LookAndFeel} need to
  * access the defaults if the value of the property being changed is
--- a/jdk/src/java.desktop/share/classes/javax/swing/SizeSequence.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/SizeSequence.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 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
@@ -53,11 +53,10 @@
  * The following figure shows the relationship between size and position data
  * for a multi-column component.
  *
- * <center>
+ * <p style="text-align:center">
  * <img src="doc-files/SizeSequence-1.gif" width=384 height = 100
  * alt="The first item begins at position 0, the second at the position equal
  to the size of the previous item, and so on.">
- * </center>
  * <p>
  * In the figure, the first index (0) corresponds to the first column,
  * the second index (1) to the second column, and so on.
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java	Tue May 09 12:19:08 2017 -0700
@@ -1283,14 +1283,13 @@
      * text component (i.e. the root of the hierarchy) that
      * can be traversed to determine how the model is being
      * represented spatially.
-     * <p>
-     * <font style="color: red;"><b>NOTE:</b>The View hierarchy can
+     * <p style="color:red;">
+     * <b>NOTE:</b>The View hierarchy can
      * be traversed from the root view, and other things
      * can be done as well.  Things done in this way cannot
      * be protected like simple method calls through the TextUI.
      * Therefore, proper operation in the presence of concurrency
      * must be arranged by any logic that calls this method!
-     * </font>
      *
      * @param tc the text component for which this UI is installed
      * @return the view
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/DefaultMetalTheme.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/DefaultMetalTheme.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 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
@@ -42,7 +42,7 @@
  * All colors returned by {@code DefaultMetalTheme} are completely
  * opaque.
  *
- * <h3><a name="fontStyle"></a>Font Style</h3>
+ * <h3><a id="fontStyle"></a>Font Style</h3>
  *
  * {@code DefaultMetalTheme} uses bold fonts for many controls.  To make all
  * controls (with the exception of the internal frame title bars and
--- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java	Tue May 09 12:19:08 2017 -0700
@@ -292,85 +292,85 @@
      * added to {@code table}:
      * <table border="1" cellpadding="1" cellspacing="0"
      *         summary="Metal's system color mapping">
-     *  <tr valign="top"  align="left">
-     *    <th style="background-color:#CCCCFF" align="left">Key
-     *    <th style="background-color:#CCCCFF" align="left">Value
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
+     *    <th style="background-color:#CCCCFF;text-align:left">Key
+     *    <th style="background-color:#CCCCFF;text-align:left">Value
+     *  <tr valign="top" style="text-align:left">
      *    <td>"desktop"
      *    <td>{@code theme.getDesktopColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"activeCaption"
      *    <td>{@code theme.getWindowTitleBackground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"activeCaptionText"
      *    <td>{@code theme.getWindowTitleForeground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"activeCaptionBorder"
      *    <td>{@code theme.getPrimaryControlShadow()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"inactiveCaption"
      *    <td>{@code theme.getWindowTitleInactiveBackground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"inactiveCaptionText"
      *    <td>{@code theme.getWindowTitleInactiveForeground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"inactiveCaptionBorder"
      *    <td>{@code theme.getControlShadow()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"window"
      *    <td>{@code theme.getWindowBackground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"windowBorder"
      *    <td>{@code theme.getControl()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"windowText"
      *    <td>{@code theme.getUserTextColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"menu"
      *    <td>{@code theme.getMenuBackground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"menuText"
      *    <td>{@code theme.getMenuForeground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"text"
      *    <td>{@code theme.getWindowBackground()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"textText"
      *    <td>{@code theme.getUserTextColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"textHighlight"
      *    <td>{@code theme.getTextHighlightColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"textHighlightText"
      *    <td>{@code theme.getHighlightedTextColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"textInactiveText"
      *    <td>{@code theme.getInactiveSystemTextColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"control"
      *    <td>{@code theme.getControl()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"controlText"
      *    <td>{@code theme.getControlTextColor()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"controlHighlight"
      *    <td>{@code theme.getControlHighlight()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"controlLtHighlight"
      *    <td>{@code theme.getControlHighlight()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"controlShadow"
      *    <td>{@code theme.getControlShadow()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"controlDkShadow"
      *    <td>{@code theme.getControlDarkShadow()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"scrollbar"
      *    <td>{@code theme.getControl()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"info"
      *    <td>{@code theme.getPrimaryControl()}
-     *  <tr valign="top"  align="left">
+     *  <tr valign="top" style="text-align:left">
      *    <td>"infoText"
      *    <td>{@code theme.getPrimaryControlInfo()}
      * </table>
--- a/jdk/src/java.desktop/share/classes/javax/swing/table/DefaultTableCellRenderer.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/table/DefaultTableCellRenderer.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 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
@@ -41,7 +41,7 @@
  * in a <code>JTable</code>.
  * <p>
  *
- * <strong><a name="override">Implementation Note:</a></strong>
+ * <strong><a id="override">Implementation Note:</a></strong>
  * This class inherits from <code>JLabel</code>, a standard component class.
  * However <code>JTable</code> employs a unique mechanism for rendering
  * its cells and therefore requires some slightly modified behavior
--- a/jdk/src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -999,17 +999,17 @@
      * </pre>
      *
      * <p>Invoking <code>setInnerHTML(elem, "&lt;ul&gt;&lt;li&gt;")</code>
-     * results in the following structure (new elements are <font
-     * style="color: red;">in red</font>).</p>
+     * results in the following structure (new elements are <span
+     * style="color: red;">in red</span>).</p>
      *
      * <pre>
      *     &lt;body&gt;
      *       |
      *     <b>&lt;div&gt;</b>
      *         \
-     *         <font style="color: red;">&lt;ul&gt;</font>
+     *         <span style="color: red;">&lt;ul&gt;</span>
      *           \
-     *           <font style="color: red;">&lt;li&gt;</font>
+     *           <span style="color: red;">&lt;li&gt;</span>
      * </pre>
      *
      * <p>Parameter <code>elem</code> must not be a leaf element,
@@ -1083,15 +1083,15 @@
      * </pre>
      *
      * <p>Invoking <code>setOuterHTML(elem, "&lt;ul&gt;&lt;li&gt;")</code>
-     * results in the following structure (new elements are <font
-     * style="color: red;">in red</font>).</p>
+     * results in the following structure (new elements are <span
+     * style="color: red;">in red</span>).</p>
      *
      * <pre>
      *    &lt;body&gt;
      *      |
-     *     <font style="color: red;">&lt;ul&gt;</font>
+     *     <span style="color: red;">&lt;ul&gt;</span>
      *       \
-     *       <font style="color: red;">&lt;li&gt;</font>
+     *       <span style="color: red;">&lt;li&gt;</span>
      * </pre>
      *
      * <p>If either <code>elem</code> or <code>htmlText</code>
@@ -1157,16 +1157,16 @@
      *
      * <p>Invoking <code>insertAfterStart(elem,
      * "&lt;ul&gt;&lt;li&gt;")</code> results in the following structure
-     * (new elements are <font style="color: red;">in red</font>).</p>
+     * (new elements are <span style="color: red;">in red</span>).</p>
      *
      * <pre>
      *        &lt;body&gt;
      *          |
      *        <b>&lt;div&gt;</b>
      *       /  |  \
-     *    <font style="color: red;">&lt;ul&gt;</font> &lt;p&gt; &lt;p&gt;
+     *    <span style="color: red;">&lt;ul&gt;</span> &lt;p&gt; &lt;p&gt;
      *     /
-     *  <font style="color: red;">&lt;li&gt;</font>
+     *  <span style="color: red;">&lt;li&gt;</span>
      * </pre>
      *
      * <p>Unlike the <code>insertBeforeStart</code> method, new
@@ -1229,17 +1229,17 @@
      * </pre>
      *
      * <p>Invoking <code>insertBeforeEnd(elem, "&lt;ul&gt;&lt;li&gt;")</code>
-     * results in the following structure (new elements are <font
-     * style="color: red;">in red</font>).</p>
+     * results in the following structure (new elements are <span
+     * style="color: red;">in red</span>).</p>
      *
      * <pre>
      *        &lt;body&gt;
      *          |
      *        <b>&lt;div&gt;</b>
      *       /  |  \
-     *     &lt;p&gt; &lt;p&gt; <font style="color: red;">&lt;ul&gt;</font>
+     *     &lt;p&gt; &lt;p&gt; <span style="color: red;">&lt;ul&gt;</span>
      *               \
-     *               <font style="color: red;">&lt;li&gt;</font>
+     *               <span style="color: red;">&lt;li&gt;</span>
      * </pre>
      *
      * <p>Unlike the <code>insertAfterEnd</code> method, new elements
@@ -1300,14 +1300,14 @@
      *
      * <p>Invoking <code>insertBeforeStart(elem,
      * "&lt;ul&gt;&lt;li&gt;")</code> results in the following structure
-     * (new elements are <font style="color: red;">in red</font>).</p>
+     * (new elements are <span style="color: red;">in red</span>).</p>
      *
      * <pre>
      *        &lt;body&gt;
      *         /  \
-     *      <font style="color: red;">&lt;ul&gt;</font> <b>&lt;div&gt;</b>
+     *      <span style="color: red;">&lt;ul&gt;</span> <b>&lt;div&gt;</b>
      *       /    /  \
-     *     <font style="color: red;">&lt;li&gt;</font> &lt;p&gt;  &lt;p&gt;
+     *     <span style="color: red;">&lt;li&gt;</span> &lt;p&gt;  &lt;p&gt;
      * </pre>
      *
      * <p>Unlike the <code>insertAfterStart</code> method, new
@@ -1360,15 +1360,15 @@
      * </pre>
      *
      * <p>Invoking <code>insertAfterEnd(elem, "&lt;ul&gt;&lt;li&gt;")</code>
-     * results in the following structure (new elements are <font
-     * style="color: red;">in red</font>).</p>
+     * results in the following structure (new elements are <span
+     * style="color: red;">in red</span>).</p>
      *
      * <pre>
      *        &lt;body&gt;
      *         /  \
-     *      <b>&lt;div&gt;</b> <font style="color: red;">&lt;ul&gt;</font>
+     *      <b>&lt;div&gt;</b> <span style="color: red;">&lt;ul&gt;</span>
      *       / \    \
-     *     &lt;p&gt; &lt;p&gt;  <font style="color: red;">&lt;li&gt;</font>
+     *     &lt;p&gt; &lt;p&gt;  <span style="color: red;">&lt;li&gt;</span>
      * </pre>
      *
      * <p>Unlike the <code>insertBeforeEnd</code> method, new elements
--- a/jdk/src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -1120,7 +1120,7 @@
      *
      * <table summary="Describes the tag and view created by this factory by default">
      * <tr>
-     * <th align=left>Tag<th align=left>View created
+     * <th style="text-align:left">Tag<th style="text-align:left">View created
      * </tr><tr>
      * <td>HTML.Tag.CONTENT<td>InlineView
      * </tr><tr>
--- a/jdk/src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -61,9 +61,9 @@
  * defaults table. The following table lists the mapping between
  * {@code DefaultTreeCellRenderer} property and defaults table key:
  * <table border="1" cellpadding="1" cellspacing="0" summary="">
- *   <tr valign="top"  align="left">
- *     <th style="background-color:#CCCCFF" align="left">Property:
- *     <th style="background-color:#CCCCFF" align="left">Key:
+ *   <tr valign="top" style="text-align:left">
+ *     <th style="background-color:#CCCCFF;text-align:left">Property:
+ *     <th style="background-color:#CCCCFF;text-align:left">Key:
  *   <tr><td>"leafIcon"<td>"Tree.leafIcon"
  *   <tr><td>"closedIcon"<td>"Tree.closedIcon"
  *   <tr><td>"openIcon"<td>"Tree.openIcon"
@@ -74,7 +74,7 @@
  *   <tr><td>"borderSelectionColor"<td>"Tree.selectionBorderColor"
  * </table>
  * <p>
- * <strong><a name="override">Implementation Note:</a></strong>
+ * <strong><a id="override">Implementation Note:</a></strong>
  * This class overrides
  * <code>invalidate</code>,
  * <code>validate</code>,
--- a/jdk/src/java.desktop/share/classes/javax/swing/undo/UndoManager.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/javax/swing/undo/UndoManager.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 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
@@ -57,11 +57,11 @@
  * upper-case letter in bold are significant, those in lower-case
  * and italicized are insignificant.
  * <p>
- * <a name="figure1"></a>
+ * <a id="figure1"></a>
  * <table border=0 summary="">
  * <tr><td>
  *     <img src="doc-files/UndoManager-1.gif" alt="">
- * <tr><td align=center>Figure 1
+ * <tr><td style="text-align:center">Figure 1
  * </table>
  * <p>
  * As shown in <a href="#figure1">figure 1</a>, if <b>D</b> was just added, the
@@ -70,11 +70,11 @@
  * index of the next edit to 3 (edit <i>c</i>), as shown in the following
  * figure.
  * <p>
- * <a name="figure2"></a>
+ * <a id="figure2"></a>
  * <table border=0 summary="">
  * <tr><td>
  *     <img src="doc-files/UndoManager-2.gif" alt="">
- * <tr><td align=center>Figure 2
+ * <tr><td style="text-align:center">Figure 2
  * </table>
  * <p>
  * The last significant edit is <b>A</b>, so that invoking
@@ -82,11 +82,11 @@
  * <i>b</i>, and <b>A</b>, in that order, setting the index of the
  * next edit to 0, as shown in the following figure.
  * <p>
- * <a name="figure3"></a>
+ * <a id="figure3"></a>
  * <table border=0 summary="">
  * <tr><td>
  *     <img src="doc-files/UndoManager-3.gif" alt="">
- * <tr><td align=center>Figure 3
+ * <tr><td style="text-align:center">Figure 3
  * </table>
  * <p>
  * Invoking <code>redo</code> results in invoking <code>redo</code> on
@@ -108,11 +108,11 @@
  * the new edit is added after <i>c</i>, as shown in the following
  * figure.
  * <p>
- * <a name="figure4"></a>
+ * <a id="figure4"></a>
  * <table border=0 summary="">
  * <tr><td>
  *     <img src="doc-files/UndoManager-4.gif" alt="">
- * <tr><td align=center>Figure 4
+ * <tr><td style="text-align:center">Figure 4
  * </table>
  * <p>
  * Once <code>end</code> has been invoked on an <code>UndoManager</code>
--- a/jdk/src/java.desktop/share/classes/sun/swing/LightweightContent.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.desktop/share/classes/sun/swing/LightweightContent.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, 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
--- a/jdk/src/java.rmi/share/classes/java/rmi/Remote.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.rmi/share/classes/java/rmi/Remote.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2006, 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
@@ -40,7 +40,8 @@
  * <code>java.rmi.activation.Activatable</code>.
  *
  * <p>For complete details on RMI, see the <a
- href=../../../platform/rmi/spec/rmiTOC.html>RMI Specification</a> which describes the RMI API and system.
+ * href="{@docRoot}/../specs/rmi/index.html">RMI Specification</a> which
+ * describes the RMI API and system.
  *
  * @since   1.1
  * @author  Ann Wollrath
--- a/jdk/src/java.rmi/share/classes/java/rmi/server/UnicastRemoteObject.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/java.rmi/share/classes/java/rmi/server/UnicastRemoteObject.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1996, 2013, 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
@@ -171,9 +171,9 @@
  * By default, server sockets created by {@link RMISocketFactory}
  * listen on all network interfaces. See the
  * {@link RMISocketFactory} class and the section
- * <a href="{@docRoot}/../platform/rmi/spec/rmi-server29.html">RMI Socket Factories</a>
+ * <a href="{@docRoot}/../specs/rmi/server.html#rmi-socket-factories">RMI Socket Factories</a>
  * in the
- * <a href="{@docRoot}/../platform/rmi/spec/rmiTOC.html">Java RMI Specification</a>.
+ * <a href="{@docRoot}/../specs/rmi/index.html">Java RMI Specification</a>.
  *
  * @author  Ann Wollrath
  * @author  Peter Jones
--- a/jdk/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/WindowUpdateSender.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/WindowUpdateSender.java	Tue May 09 12:19:08 2017 -0700
@@ -20,6 +20,7 @@
  *
  * 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.
  */
 package jdk.incubator.http;
 
--- a/jdk/test/ProblemList.txt	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/ProblemList.txt	Tue May 09 12:19:08 2017 -0700
@@ -305,7 +305,4 @@
 
 org/omg/CORBA/OrbPropertiesTest.java			        8175177 generic-all
 
-sample/mergesort/MergeSortTest.java				8178912 generic-all
-sample/chatserver/ChatTest.java					8178912 generic-all
-
 ############################################################################
--- a/jdk/test/TEST.groups	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/TEST.groups	Tue May 09 12:19:08 2017 -0700
@@ -272,8 +272,7 @@
     com/sun/jndi \
     com/sun/corba \
     org/omg/CORBA \
-    lib/testlibrary \
-    sample
+    lib/testlibrary
 
 #
 # SCTP is its own group as it is highly sensitive to kernel/network config
@@ -465,7 +464,6 @@
 needs_jdk = \
   :jdk_jdi \
   com/sun/tools \
-  demo \
   jdk/security/jarsigner \
   sun/security/tools/jarsigner \
   sun/security/tools/policytool \
@@ -775,7 +773,6 @@
   javax \
   jdk \
   lib \
-  sample \
   sun \
   vm \
  -:needs_full_vm_compact1 \
--- a/jdk/test/com/apple/laf/ScreenMenu/ScreenMenuMemoryLeakTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/apple/laf/ScreenMenu/ScreenMenuMemoryLeakTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 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
@@ -102,4 +102,4 @@
         Objects.requireNonNull(menuItem, "The menu item should still be available at this point");
         sMenu.remove(menuItem);
     }
-}
\ No newline at end of file
+}
--- a/jdk/test/com/sun/crypto/provider/Cipher/AES/TestCICOWithGCMAndAAD.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/crypto/provider/Cipher/AES/TestCICOWithGCMAndAAD.java	Tue May 09 12:19:08 2017 -0700
@@ -17,7 +17,7 @@
  * 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
+ * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
 
--- a/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -98,7 +98,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/BreakpointWithFullGC.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/BreakpointWithFullGC.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2009, 2013 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2013, 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
--- a/jdk/test/com/sun/jdi/CatchAllTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/CatchAllTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -76,7 +76,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/CatchCaughtTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/CatchCaughtTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -67,7 +67,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/CatchPatternTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/CatchPatternTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -108,7 +108,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2004, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2014, 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
@@ -70,7 +70,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/DeferredStepTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/DeferredStepTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -53,7 +53,7 @@
   static class  jj1 implements Runnable {
     public void  run() {
         int count = 0;
-        
+
         for ( int ii = 0; ii < 10; ii++) {  // line 6
             int intInPotato04 = 666;        // line 7
             ++count;                        // line 8; @1 breakpoint
@@ -65,7 +65,7 @@
   static class jj2 implements Runnable {
     public void run() {
         int count2 = 0;
-        
+
         for (int ii = 0; ii < 10; ii++) {      // line 18
             String StringInPotato05 = "I am";  // line 19
             ++count2;                          // line 20; @1 breakpoint
@@ -139,7 +139,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
@@ -157,7 +157,7 @@
 If this works right, you should see StepEvents/Breakpoint events for lines
    8, 9, 6, 7, 8, 9, 6, ....   for thread jj11
 and
-  20, 21, 18, 19, 20, 21, 18, ... for thread jj2 
+  20, 21, 18, 19, 20, 21, 18, ... for thread jj2
 
 Since both threads are running at the same time, these
 events can be intermixed.
@@ -179,5 +179,5 @@
 
 EOF
 runit
-#jdbFailIfPresent "Nothing suspended" 
+#jdbFailIfPresent "Nothing suspended"
 #pass
--- a/jdk/test/com/sun/jdi/DeoptimizeWalk.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/DeoptimizeWalk.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -96,7 +96,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/EvalArgs.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/EvalArgs.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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,7 +25,7 @@
 
 #  @test
 #  @bug 4663146
-#  @summary Arguments match no method error 
+#  @summary Arguments match no method error
 #  @author Jim Holmlund/Suvasis
 #
 #  @run shell/timeout=300 EvalArgs.sh
@@ -72,13 +72,13 @@
         System.out.println( ffjj1(myjj1));
         System.out.println( ffjj1(myjj2));
 
-        System.out.println("$classname.ffoverload($classname.jjboolean) = " + 
+        System.out.println("$classname.ffoverload($classname.jjboolean) = " +
                             $classname.ffoverload($classname.jjboolean));
-        System.out.println("$classname.ffoverload($classname.jjbyte) = " + 
+        System.out.println("$classname.ffoverload($classname.jjbyte) = " +
                             $classname.ffoverload($classname.jjbyte));
-        System.out.println("$classname.ffoverload($classname.jjchar) = " + 
+        System.out.println("$classname.ffoverload($classname.jjchar) = " +
                             $classname.ffoverload($classname.jjchar));
-        System.out.println("$classname.ffoverload($classname.jjdouble) = " + 
+        System.out.println("$classname.ffoverload($classname.jjdouble) = " +
                             $classname.ffoverload($classname.jjdouble));
 
 
@@ -94,11 +94,11 @@
     public static String ffjj1(jj1 arg) {
         return arg.me;
     }
-    
+
     public static String ffjj2(jj2 arg) {
         return arg.me;
     }
-    
+
     static String ffboolean(boolean p1) {
         return "ffbool: p1 = " + p1;
     }
@@ -106,31 +106,31 @@
     static String ffbyte(byte p1) {
         return "ffbyte: p1 = " + p1;
     }
-        
+
     static String ffchar(char p1) {
         return "ffchar: p1 = " + p1;
     }
-        
+
     static String ffdouble(double p1) {
         return "ffdouble: p1 = " + p1;
     }
-        
+
     static String fffloat(float p1) {
         return "fffloat: p1 = " + p1;
     }
-        
+
     static String ffint(int p1) {
         return "ffint: p1 = " + p1;
     }
-        
+
     static String fflong(long p1) {
         return "fflong: p1 = " + p1;
     }
-        
+
     static String ffshort(short p1) {
         return "ffshort: p1 = " + p1;
     }
-        
+
     static String ffintArray(int[] p1) {
         return "ffintArray: p1 = " + p1;
     }
@@ -139,15 +139,15 @@
     public static String ffoverload(jj1 arg) {
         return arg.me;
     }
-    
+
     static String ffoverload(boolean p1) {
         return "ffoverload: boolean p1 = " + p1;
     }
-/***        
+/***
     static String ffoverload(byte p1) {
         return "ffoverload: byte p1 = " + p1;
     }
-***/        
+***/
     static String ffoverload(char p1) {
         return "ffoverload: char p1 = " + p1;
     }
@@ -159,11 +159,11 @@
     static String ffoverload(float p1) {
         return "ffoverload: float p1 = " + p1;
     }
-/***        
+/***
     static String ffoverload(int p1) {
         return "ffoverload: int p1 = " + p1;
     }
-***/        
+***/
     static String ffoverload(long p1) {
         return "ffoverload: long p1 = " + p1;
     }
@@ -171,7 +171,7 @@
     static String ffoverload(short p1) {
         return "ffoverload: short p1 = " + p1;
     }
-      
+
     static String ffoverload(int[] p1) {
         return "ffoverload: int array p1 = " + p1;
     }
@@ -184,7 +184,7 @@
     public String toString() {
         return me;
     }
-    
+
   }
 
   static class jj2 extends jj1 {
@@ -227,7 +227,7 @@
     # Provide a visual break in the output
     cmd print 1
 
-    # Verify mixing primitive types works ok 
+    # Verify mixing primitive types works ok
     # These should work even though the arg types are
     # not the same because there is only one
     # method with each name.
@@ -302,7 +302,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -67,7 +67,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -69,7 +69,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/JdbExprTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/JdbExprTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2013, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2014, 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
@@ -53,7 +53,7 @@
     public static void bkpt() {
        int i = 0;     //@1 breakpoint
     }
-    
+
     public static void main(String[] args) {
         bkpt();
     }
@@ -73,7 +73,7 @@
 
     cmd print java.lang.Long.MIN_VALUE
     jdbFailIfNotPresent " \= \-9223372036854775808" 3
-    
+
     cmd print 9223372036854775807L
     jdbFailIfNotPresent "9223372036854775807L = 9223372036854775807" 3
     cmd print 9223372036854775807
@@ -83,7 +83,7 @@
     jdbFailIfNotPresent "\-9223372036854775807L = \-9223372036854775807" 3
     cmd print -9223372036854775807
     jdbFailIfNotPresent "\-9223372036854775807 = \-9223372036854775807" 3
-    
+
     cmd print -1
     jdbFailIfNotPresent "\-1 = \-1" 3
     cmd print 1L
@@ -92,7 +92,7 @@
     jdbFailIfNotPresent "\-1L = \-1" 3
     cmd print 0x1
     jdbFailIfNotPresent "0x1 = 1" 3
-    
+
     cmd set $classname.aLong = 9223372036854775807L
     cmd print $classname.aLong
     jdbFailIfNotPresent "$classname.aLong = 9223372036854775807" 3
@@ -142,7 +142,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/JdbLockTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/JdbLockTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2003, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2014, 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
@@ -94,7 +94,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/MixedSuspendTest.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/MixedSuspendTest.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2015, 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
--- a/jdk/test/com/sun/jdi/NullLocalVariable.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/NullLocalVariable.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -40,10 +40,10 @@
     public static final void main(String args[]) {
         try {
             System.out.println("hi!");               // @1 breakpoint
-        } catch (Exception e) {         
+        } catch (Exception e) {
             e.printStackTrace();
         } finally {
-            System.out.println("done"); 
+            System.out.println("done");
         }
     }
 }
@@ -71,7 +71,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/NullThreadGroupNameTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/NullThreadGroupNameTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
--- a/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2006, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2014, 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
@@ -135,7 +135,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/RedefineException.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/RedefineException.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2002, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2014, 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
@@ -75,7 +75,7 @@
       }
       System.out.println("a2: done");
     }
-  
+
     public void a3() throws Exception {
       int a3local = 3;
       String a3string = "a3";
@@ -105,7 +105,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/RedefineImplementor.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/RedefineImplementor.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2006, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2014, 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
@@ -81,7 +81,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2006, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2014, 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
@@ -50,13 +50,13 @@
     }
 
     public long m2(int j) {
-        System.out.println(System.getProperty("line.separator") + 
+        System.out.println(System.getProperty("line.separator") +
                            "**** public long m2(int j) with value: " + j);
         return j;
     }
 
     public long m2(long j) {
-        System.out.println(System.getProperty("line.separator") + 
+        System.out.println(System.getProperty("line.separator") +
                            "**** public long m2(long j) with value: " + j);
         return j;
     }
@@ -102,7 +102,7 @@
 
     for ii in . $TESTSRC $TESTSRC/.. ; do
         if [ -r "$ii/ShellScaffold.sh" ] ; then
-            . $ii/ShellScaffold.sh 
+            . $ii/ShellScaffold.sh
             break
         fi
     done
--- a/jdk/test/com/sun/management/GarbageCollectorMXBean/LastGCInfo.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/management/GarbageCollectorMXBean/LastGCInfo.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, 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
--- a/jdk/test/com/sun/net/httpserver/SimpleHttpServerTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/net/httpserver/SimpleHttpServerTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 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
--- a/jdk/test/com/sun/net/httpserver/StopNoStartTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/net/httpserver/StopNoStartTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 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
--- a/jdk/test/com/sun/net/httpserver/bugs/B6433018.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/net/httpserver/bugs/B6433018.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2013, 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
@@ -103,4 +103,3 @@
         }
     }
 }
-
--- a/jdk/test/com/sun/tools/attach/PermissionTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/tools/attach/PermissionTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, 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
--- a/jdk/test/com/sun/tools/attach/ProviderTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/tools/attach/ProviderTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, 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
--- a/jdk/test/com/sun/tools/attach/StartManagementAgent.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/tools/attach/StartManagementAgent.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, 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
--- a/jdk/test/com/sun/tools/attach/TempDirTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/com/sun/tools/attach/TempDirTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, 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
--- a/jdk/test/java/awt/Choice/UnfocusableToplevel/UnfocusableToplevel.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Choice/UnfocusableToplevel/UnfocusableToplevel.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2015, 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
--- a/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2015, 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
--- a/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/jdk/test/java/awt/Dialog/NestedDialogs/Modal/NestedModalDialogTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Dialog/NestedDialogs/Modal/NestedModalDialogTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, 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
--- a/jdk/test/java/awt/Dialog/NestedDialogs/Modeless/NestedModelessDialogTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Dialog/NestedDialogs/Modeless/NestedModelessDialogTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, 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
--- a/jdk/test/java/awt/EventQueue/MainAppContext/MainAppContext.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/EventQueue/MainAppContext/MainAppContext.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011,2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2015, 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
--- a/jdk/test/java/awt/FileDialog/RegexpFilterTest/RegexpFilterTest.html	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/FileDialog/RegexpFilterTest/RegexpFilterTest.html	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 <!--
- Copyright (c) 2007 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2007, 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
@@ -22,7 +22,7 @@
 -->
 
 <html>
-<!--  
+<!--
   @test
   @bug 4934185
   @summary JCK1.5-runtime-interactive: XToolkit FileDialog does not work as expected
--- a/jdk/test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 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
--- a/jdk/test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,6 +1,5 @@
-
 /*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/jdk/test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2014, 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
--- a/jdk/test/java/awt/LightweightComponent/LightweightEventTest/LightweightEventTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/LightweightComponent/LightweightEventTest/LightweightEventTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 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
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/GlassPaneOverlappingTestBase.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/GlassPaneOverlappingTestBase.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2017 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
--- a/jdk/test/java/awt/Mixing/AWT_Mixing/SimpleOverlappingTestBase.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Mixing/AWT_Mixing/SimpleOverlappingTestBase.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2017 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
@@ -165,4 +165,3 @@
     }
 
 }
-
--- a/jdk/test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2015, 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
--- a/jdk/test/java/awt/MouseInfo/JContainerMousePositionTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/MouseInfo/JContainerMousePositionTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2017 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
--- a/jdk/test/java/awt/Toolkit/AutoShutdown/EventQueuePush/EventQueuePushAutoshutdown.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Toolkit/AutoShutdown/EventQueuePush/EventQueuePushAutoshutdown.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/ksh -p
 
 #
-# Copyright (c) 20015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2015, 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
@@ -39,7 +39,7 @@
 
 #Call this from anywhere to fail the test with an error message
 # usage: fail "reason why the test failed"
-fail() 
+fail()
  { echo "The test failed :-("
    echo "$*" 1>&2
    echo "exit status was $status"
@@ -48,7 +48,7 @@
 
 #Call this from anywhere to pass the test with a message
 # usage: pass "reason why the test passed if applicable"
-pass() 
+pass()
  { echo "The test passed!!!"
    echo "$*" 1>&2
    exit 0
@@ -76,8 +76,8 @@
 esac
 
 
-# Want this test to run standalone as well as in the harness, so do the 
-#  following to copy the test's directory into the harness's scratch directory 
+# Want this test to run standalone as well as in the harness, so do the
+#  following to copy the test's directory into the harness's scratch directory
 #  and set all appropriate variables:
 
 if [ -z "${TESTJAVA}" ] ; then
@@ -100,25 +100,25 @@
 echo "JDK under test is: $TESTJAVA"
 
 #Deal with .class files:
-if [ -n "${STANDALONE}" ] ; 
-   then 
+if [ -n "${STANDALONE}" ] ;
+   then
    #if standalone, remind user to cd to dir. containing test before running it
    echo "Just a reminder: cd to the dir containing this test when running it"
    # then compile all .java files (if there are any) into .class files
-   if [ -a *.java ] ; 
+   if [ -a *.java ] ;
       then echo "Reminder, this test should be in its own directory with all"
       echo "supporting files it needs in the directory with it."
-      ${TESTJAVA}/bin/javac ./*.java ; 
+      ${TESTJAVA}/bin/javac ./*.java ;
    fi
    # else in harness so copy all the class files from where jtreg put them
-   # over to the scratch directory this test is running in. 
+   # over to the scratch directory this test is running in.
    else cp ${TESTCLASSES}/*.class . ;
 fi
 
-#if in test harness, then copy the entire directory that the test is in over 
+#if in test harness, then copy the entire directory that the test is in over
 # to the scratch directory.  This catches any support files needed by the test.
-if [ -z "${STANDALONE}" ] ; 
-   then cp ${TESTSRC}/* . 
+if [ -z "${STANDALONE}" ] ;
+   then cp ${TESTSRC}/* .
 fi
 
 #Just before executing anything, make sure it has executable permission!
@@ -156,4 +156,3 @@
 
 #For additional examples of how to write platform independent KSH scripts,
 # see the jtreg file itself.  It is a KSH script for both Solaris and Win32
-
--- a/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/bug7129133.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Toolkit/ToolkitPropertyTest/bug7129133.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2014, 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
--- a/jdk/test/java/awt/Window/FindOwner/FindOwnerTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/Window/FindOwner/FindOwnerTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -107,4 +107,4 @@
             stop();
         }
     }
-}
\ No newline at end of file
+}
--- a/jdk/test/java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2016, 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
--- a/jdk/test/java/awt/event/MouseEvent/DisabledComponents/DisabledComponentsTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/event/MouseEvent/DisabledComponents/DisabledComponentsTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 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
--- a/jdk/test/java/awt/font/TextLayout/ArabicDiacriticTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/font/TextLayout/ArabicDiacriticTest.java	Tue May 09 12:19:08 2017 -0700
@@ -18,6 +18,7 @@
  *
  * 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
--- a/jdk/test/java/awt/font/TextLayout/MissingCodePointLayoutTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/awt/font/TextLayout/MissingCodePointLayoutTest.java	Tue May 09 12:19:08 2017 -0700
@@ -18,6 +18,7 @@
  *
  * 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
--- a/jdk/test/java/io/RandomAccessFile/FileLengthTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/io/RandomAccessFile/FileLengthTest.java	Tue May 09 12:19:08 2017 -0700
@@ -9,7 +9,7 @@
  * 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 randomAccessFile that
+ * 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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/lang/ClassLoader/CustomSystemLoader/CustomLoader.java	Tue May 09 12:19:08 2017 -0700
@@ -0,0 +1,59 @@
+/*
+ * 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.
+ */
+
+import java.io.PrintStream;
+
+/*
+ * Custom system class loader.
+ */
+public class CustomLoader extends ClassLoader {
+    private static PrintStream out = System.out;
+    public  static ClassLoader INSTANCE;
+
+    public CustomLoader(ClassLoader classLoader) {
+        super("CustomSystemLoader", classLoader);
+        assert INSTANCE == null;
+        INSTANCE = this;
+
+        // test cases to validate that ClassLoader::getSystemClassLoader
+        // is not triggered during custom system class loader initialization
+        testEnumValueOf();
+    }
+
+    static void testEnumValueOf() {
+        TestEnum e = java.lang.Enum.valueOf(TestEnum.class, "C1");
+        if (e != TestEnum.C1) {
+            throw new RuntimeException("Expected: " + TestEnum.C1 + " got: " + e);
+        }
+    }
+
+    @Override
+    public Class<?> loadClass(String name) throws ClassNotFoundException {
+        out.println("CustomLoader: loading class: " + name);
+        return super.loadClass(name);
+    }
+
+    static enum TestEnum {
+        C1, C2, C3
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/lang/ClassLoader/CustomSystemLoader/InitSystemLoaderTest.java	Tue May 09 12:19:08 2017 -0700
@@ -0,0 +1,49 @@
+/*
+ * 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 8179950
+ * @build CustomLoader InitSystemLoaderTest
+ * @run main/othervm -Djava.system.class.loader=CustomLoader InitSystemLoaderTest
+ * @summary Test custom system loader initialization and verify their ancestors
+ */
+
+public class InitSystemLoaderTest {
+    public static void main(String... args) {
+        // check that system class loader is the custom loader
+        ClassLoader loader = ClassLoader.getSystemClassLoader();
+        if (loader != CustomLoader.INSTANCE) {
+            throw new RuntimeException("Expected custom loader: "
+                + CustomLoader.INSTANCE + " got: " + loader);
+        }
+
+        // parent of the custom loader should be builtin system class loader
+        ClassLoader builtinSystemLoader = loader.getParent();
+        ClassLoader grandparent = builtinSystemLoader.getParent();
+        if (grandparent != ClassLoader.getPlatformClassLoader()) {
+            throw new RuntimeException("Expected class loader ancestor: "
+                + ClassLoader.getPlatformClassLoader() + " got: " + grandparent);
+        }
+    }
+}
--- a/jdk/test/java/lang/instrument/RedefineBigClass.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/lang/instrument/RedefineBigClass.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2015 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, 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
@@ -73,7 +73,7 @@
     -Xlog:redefine+class+load=debug,redefine+class+load+exceptions=info ${NMT} \
     -javaagent:RedefineBigClassAgent.jar=BigClass.class \
     -classpath "${TESTCLASSES}" RedefineBigClassApp \
-    > output.log 2>&1 
+    > output.log 2>&1
 result=$?
 
 cat output.log
--- a/jdk/test/java/lang/invoke/VarHandles/X-VarHandleTestMethodType.java.template	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/lang/invoke/VarHandles/X-VarHandleTestMethodType.java.template	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -3288,4 +3288,3 @@
 #end[Bitwise]
     }
 }
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/lang/invoke/lookup/ReflectiveLookupTest.java	Tue May 09 12:19:08 2017 -0700
@@ -0,0 +1,79 @@
+/*
+ * 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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 8020801
+ * @summary Restriction on reflective call to MethodHandles.lookup method
+ * @run main java.base/java.lang.LookupTest
+ * @run main ReflectiveLookupTest
+ * @run main/othervm -Dsun.reflect.noInflation=true ReflectiveLookupTest
+ */
+
+import java.lang.invoke.*;
+import java.lang.invoke.MethodHandles.Lookup;
+import java.lang.reflect.Method;
+
+import static java.lang.invoke.MethodType.*;
+
+/*
+ * Lookup object can be obtained statically or reflectively.
+ */
+public class ReflectiveLookupTest {
+    public static void main(String... args) throws Throwable {
+        // Get a full power lookup
+        Lookup lookup1 =  MethodHandles.lookup();
+        MethodHandle mh1 = lookup1.findStatic(lookup1.lookupClass(),
+                                              "foo",
+                                              methodType(String.class));
+        assertEquals((String) mh1.invokeExact(), foo());
+
+        Method lookupMethod =  MethodHandles.class.getMethod("lookup");
+        System.out.println("reflection method: " + lookupMethod);
+        if (!lookupMethod.getName().equals("lookup")) {
+            throw new RuntimeException("Unexpected name: " + lookupMethod.getName());
+        }
+
+        // Get a full power Lookup reflectively.
+        Lookup lookup2 = (Lookup) lookupMethod.invoke(null);
+        assertEquals(lookup1.lookupClass(), lookup2.lookupClass());
+        assertEquals(lookup1.lookupModes(), lookup2.lookupModes());
+        MethodHandle mh2 = lookup2.findStatic(lookup2.lookupClass(),
+                                             "foo",
+                                              methodType(String.class));
+        assertEquals((String) mh2.invokeExact(), foo());
+    }
+
+    static String foo() {
+        return "foo!";
+    }
+
+    static void assertEquals(Object o1, Object o2) {
+        if (!o1.equals(o2)) {
+            throw new RuntimeException(o1 + " != " + o2);
+        }
+    }
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/lang/invoke/lookup/java.base/java/lang/LookupTest.java	Tue May 09 12:19:08 2017 -0700
@@ -0,0 +1,72 @@
+/*
+ * 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.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * 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.
+ */
+
+package java.lang;
+
+import java.lang.invoke.*;
+import java.lang.invoke.MethodHandles.Lookup;
+import java.lang.reflect.InvocationTargetException;
+
+import static java.lang.invoke.MethodType.*;
+
+/*
+ * Verify that a Lookup object can be obtained statically from java.base
+ * but fails when it's obtained via reflection from java.base.
+ */
+public class LookupTest {
+    public static void main(String... args) throws Throwable {
+        // Get a full power lookup
+        Lookup lookup1 =  MethodHandles.lookup();
+        MethodHandle mh1 = lookup1.findStatic(lookup1.lookupClass(),
+                                              "foo",
+                                              methodType(String.class));
+        assertEquals((String) mh1.invokeExact(), foo());
+
+        // access protected member
+        MethodHandle mh2 = lookup1.findVirtual(java.lang.ClassLoader.class,
+                                               "getPackage",
+                                               methodType(Package.class, String.class));
+        ClassLoader loader = ClassLoader.getPlatformClassLoader();
+        Package pkg = (Package)mh2.invokeExact(loader, "java.lang");
+        assertEquals(pkg.getName(), "java.lang");
+
+        // MethodHandles.lookup will fail if it's called reflectively
+        try {
+            MethodHandles.class.getMethod("lookup").invoke(null);
+        } catch (InvocationTargetException e) {
+            if (!(e.getCause() instanceof IllegalArgumentException)) {
+                throw e.getCause();
+            }
+        }
+    }
+
+    static String foo() { return "foo!"; }
+
+    static void assertEquals(Object o1, Object o2) {
+        if (!o1.equals(o2)) {
+            throw new RuntimeException(o1 + " != " + o2);
+        }
+    }
+}
--- a/jdk/test/java/net/httpclient/ProxyAuthTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/net/httpclient/ProxyAuthTest.java	Tue May 09 12:19:08 2017 -0700
@@ -20,6 +20,7 @@
  *
  * 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.
  */
 
 /*
--- a/jdk/test/java/nio/file/WatchService/DeleteInterference.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/nio/file/WatchService/DeleteInterference.java	Tue May 09 12:19:08 2017 -0700
@@ -15,6 +15,10 @@
  * 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.
  */
 
 /**
--- a/jdk/test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
--- a/jdk/test/java/security/AccessController/LimitedDoPrivilegedWithNullPerms.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/security/AccessController/LimitedDoPrivilegedWithNullPerms.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013,2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2014, 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
--- a/jdk/test/java/security/AccessController/LimitedDoPrivilegedWithThread.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/security/AccessController/LimitedDoPrivilegedWithThread.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013,2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2014, 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
--- a/jdk/test/java/time/test/java/time/temporal/TestIsoWeekFields.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/time/test/java/time/temporal/TestIsoWeekFields.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014,2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2015, 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
--- a/jdk/test/java/util/ResourceBundle/getBaseBundleName/resources/PropertyBundle.properties	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/util/ResourceBundle/getBaseBundleName/resources/PropertyBundle.properties	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 20013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 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
@@ -21,4 +21,3 @@
 # questions.
 #
 dummy=foo
-
--- a/jdk/test/java/util/Spliterator/SpliteratorLateBindingFailFastHelper.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/util/Spliterator/SpliteratorLateBindingFailFastHelper.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 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
--- a/jdk/test/java/util/logging/Logger/logrb/resources/PropertyBundle.properties	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/util/logging/Logger/logrb/resources/PropertyBundle.properties	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 20013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 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
@@ -21,4 +21,3 @@
 # questions.
 #
 dummy=foo
-
--- a/jdk/test/java/util/logging/Logger/setResourceBundle/resources/PropertyBundle.properties	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/java/util/logging/Logger/setResourceBundle/resources/PropertyBundle.properties	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 20013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 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
@@ -21,4 +21,3 @@
 # questions.
 #
 dummy=foo
-
--- a/jdk/test/javax/management/loading/LibraryLoader/LibraryLoaderTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/management/loading/LibraryLoader/LibraryLoaderTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2004, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2015, 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
--- a/jdk/test/javax/management/monitor/ThreadPoolAccTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/management/monitor/ThreadPoolAccTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, 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
--- a/jdk/test/javax/net/ssl/TLS/CipherTestUtils.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/CipherTestUtils.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2010, 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/JSSEClient.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/JSSEClient.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2010, 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/JSSEServer.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/JSSEServer.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2010, 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/TestJSSE.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/TestJSSE.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2010, 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/TestJSSEClientDefaultProtocol.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/TestJSSEClientDefaultProtocol.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/TestJSSEClientProtocol.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/TestJSSEClientProtocol.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/TestJSSENoCommonProtocols.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/TestJSSENoCommonProtocols.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/net/ssl/TLS/TestJSSEServerProtocol.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/net/ssl/TLS/TestJSSEServerProtocol.java	Tue May 09 12:19:08 2017 -0700
@@ -2,21 +2,22 @@
  * Copyright (c) 2016, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/print/attribute/TestUnsupportedResolution.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/print/attribute/TestUnsupportedResolution.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 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
@@ -104,4 +104,3 @@
     return PAGE_EXISTS;
 }
 }
-
--- a/jdk/test/javax/security/auth/Subject/Generic.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/security/auth/Subject/Generic.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2014, 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
--- a/jdk/test/javax/security/auth/login/JAASConfigSyntaxCheck/JAASConfigSyntaxTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/security/auth/login/JAASConfigSyntaxCheck/JAASConfigSyntaxTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,23 +1,23 @@
-
-/**
+/*
  * Copyright (c) 2007, 2015, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/security/auth/login/JAASConfigSyntaxCheck/SampleLoginModule.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/security/auth/login/JAASConfigSyntaxCheck/SampleLoginModule.java	Tue May 09 12:19:08 2017 -0700
@@ -1,22 +1,23 @@
-/**
+/*
  * Copyright (c) 2007, 2015, 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 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).
+ * 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.
+ * 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
+ * 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.
  */
 
--- a/jdk/test/javax/swing/JComboBox/6632953/bug6632953.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/JComboBox/6632953/bug6632953.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2010, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2010, 2015, 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
--- a/jdk/test/javax/swing/JFileChooser/4150029/bug4150029.html	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/JFileChooser/4150029/bug4150029.html	Tue May 09 12:19:08 2017 -0700
@@ -1,6 +1,6 @@
 <html>
 <!--
- Copyright (c) 2013, 2014 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2013, 2014, 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
@@ -40,4 +40,4 @@
 3.Push OPEN button.
 4.Push DONE button.
 </body>
-</html> 
+</html>
--- a/jdk/test/javax/swing/JInternalFrame/Test6325652.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/JInternalFrame/Test6325652.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009,2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, 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
--- a/jdk/test/javax/swing/JMenu/8072900/WrongSelectionOnMouseOver.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/JMenu/8072900/WrongSelectionOnMouseOver.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2017 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/jdk/test/javax/swing/JPopupMenu/6694823/bug6694823.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/JPopupMenu/6694823/bug6694823.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2014 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2014, 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
--- a/jdk/test/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2017 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
--- a/jdk/test/javax/swing/text/html/parser/Parser/8028616/bug8028616.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/javax/swing/text/html/parser/Parser/8028616/bug8028616.java	Tue May 09 12:19:08 2017 -0700
@@ -8,7 +8,7 @@
  *
  * 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
+ * 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).
  *
--- a/jdk/test/sample/TEST.properties	Sat May 06 13:17:36 2017 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-external.lib.roots = ../../
--- a/jdk/test/sample/chatserver/ChatTest.java	Sat May 06 13:17:36 2017 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,402 +0,0 @@
-/*
- * Copyright (c) 2011 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
- * @summary Test chat server chatserver test
- *
- * @library /src/sample/share/nio/chatserver
- * @build ChatTest ChatServer Client ClientReader DataReader MessageReader NameReader
- * @run testng ChatTest
- */
-
-import java.io.*;
-import java.net.InetSocketAddress;
-import java.net.Socket;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.concurrent.CyclicBarrier;
-
-import org.testng.annotations.Test;
-
-public class ChatTest {
-    public static int listeningPort = 0;
-
-    @Test
-    public static void doTest() throws Throwable {
-        testStartStop();
-        testPortOpen();
-        testAsksForName();
-        testUseName();
-        testConnectDisconnectConnect();
-        testUsernameAndMessage();
-        testDontReceiveMessageInNameState();
-    }
-
-    private static ChatServer startServer() throws IOException {
-        ChatServer server = new ChatServer(0);
-        InetSocketAddress address = (InetSocketAddress) server.getSocketAddress();
-        listeningPort = address.getPort();
-        server.run();
-        return server;
-    }
-
-    public static void testStartStop() throws Exception {
-        ChatServer server = startServer();
-        server.shutdown();
-    }
-
-    public static void testPortOpen() throws Exception {
-        ChatServer server = startServer();
-        try {
-            Socket socket = new Socket("localhost", listeningPort);
-            if (!socket.isConnected()) {
-                throw new RuntimeException("Failed to connect to server: port not open");
-            }
-        } finally {
-            server.shutdown();
-        }
-    }
-
-    public static void testAsksForName() throws Exception {
-        ChatServer server = startServer();
-        try {
-            Socket socket = new Socket("localhost", listeningPort);
-
-            Reader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
-            String string = readAvailableString(reader);
-            if (!string.equals("Name: ")) {
-                throw new RuntimeException("Server doesn't send Name: ");
-            }
-        } finally {
-            server.shutdown();
-        }
-    }
-
-    public static void testUseName() throws Throwable {
-        ChatServer server = startServer();
-        try {
-            performTestUseName();
-        } finally {
-            server.shutdown();
-        }
-    }
-
-    public static void testConnectDisconnectConnect() throws Exception {
-        ChatServer server = startServer();
-        try {
-            performTestConnectDisconnectConnect();
-        } finally {
-            server.shutdown();
-        }
-    }
-
-    public static void testUsernameAndMessage() throws Exception {
-        ChatServer server = startServer();
-        try {
-            performTestUsernameAndMessage();
-        } finally {
-            server.shutdown();
-        }
-    }
-
-    public static void testDontReceiveMessageInNameState() throws Exception {
-        ChatServer server = startServer();
-        try {
-            performDontReceiveMessageInNameState();
-        } finally {
-            server.shutdown();
-        }
-    }
-
-    private static void assertEqual(List<Exception> exception, Object value, Object expected) {
-        if (expected == value) {
-            return;
-        }
-        if (expected == null) {
-            exception.add(new RuntimeException("Expected null, but was: " + value));
-            return;
-        }
-        if (!expected.equals(value)) {
-            exception.add(new RuntimeException("Expected: " + expected + " but was: " + value));
-            return;
-        }
-    }
-
-    private static void performDontReceiveMessageInNameState() throws Exception {
-        final CyclicBarrier barrier1 = new CyclicBarrier(2);
-        final CyclicBarrier barrier2 = new CyclicBarrier(2);
-        final CyclicBarrier barrier3 = new CyclicBarrier(2);
-        final List<Exception> exceptions = Collections.synchronizedList(new ArrayList<Exception>());
-
-        ChatConnection chatConnection = new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "Name: ");
-                writer.write("testClient1\n");
-                waitForJoin(reader, "testClient1");
-                barrier1.await();
-                writer.write("Ignore this!\n");
-                barrier2.await();
-                barrier3.await();
-            }
-        };
-
-        Thread client2 = new Thread(new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                barrier1.await();
-                barrier2.await();
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "Name: ");
-                string = readAvailableString(reader, true);
-                assertEqual(exceptions, string, null);
-                writer.write("testClient2\n");
-                barrier3.await();
-            }
-        });
-
-        client2.start();
-        chatConnection.run();
-        if (!exceptions.isEmpty()) {
-            throw exceptions.get(0);
-        }
-
-    }
-
-    private static void waitForJoin(BufferedReader reader, String s) throws IOException {
-        String joined;
-        do {
-            joined = readAvailableString(reader);
-        } while (!(joined != null && joined.contains("Welcome " + s)));
-    }
-
-    private static void performTestUsernameAndMessage() throws Exception {
-        final CyclicBarrier barrier1 = new CyclicBarrier(2);
-        final CyclicBarrier barrier2 = new CyclicBarrier(2);
-        final CyclicBarrier barrier3 = new CyclicBarrier(2);
-        final List<Exception> exceptions = Collections.synchronizedList(new ArrayList<Exception>());
-
-        ChatConnection chatConnection = new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "Name: ");
-                writer.write("testClient1\n");
-                waitForJoin(reader, "testClient1");
-                barrier1.await();
-                barrier2.await();
-                string = readAvailableString(reader);
-                assertEqual(exceptions, string, "testClient2: Hello world!\n");
-                barrier3.await();
-            }
-        };
-
-        Thread client2 = new Thread(new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "Name: ");
-                barrier1.await();
-                writer.write("testClient2\nHello world!\n");
-                barrier2.await();
-                barrier3.await();
-            }
-        });
-
-        client2.start();
-        chatConnection.run();
-        if (!exceptions.isEmpty()) {
-            throw exceptions.get(0);
-        }
-    }
-
-    private static void performTestConnectDisconnectConnect() throws Exception {
-        final CyclicBarrier barrier1 = new CyclicBarrier(2);
-        final CyclicBarrier barrier2 = new CyclicBarrier(2);
-        final CyclicBarrier barrier3 = new CyclicBarrier(2);
-        final List<Exception> exceptions = new ArrayList<Exception>();
-
-        ChatConnection chatConnection = new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "Name: ");
-                writer.write("testClient1\n");
-            }
-        };
-
-        ChatConnection chatConnection2 = new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                readAvailableString(reader);
-                writer.write("testClient1\n");
-                waitForJoin(reader, "testClient1");
-                barrier1.await();
-                writer.write("Good morning!\n");
-                barrier2.await();
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "testClient2: Hello world!\n");
-                barrier3.await();
-            }
-        };
-
-        Thread client2 = new Thread(new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                readAvailableString(reader);
-                writer.write("testClient2\n");
-                waitForJoin(reader, "testClient2");
-                barrier1.await();
-                writer.write("Hello world!\n");
-                barrier2.await();
-                String string = readAvailableString(reader);
-                assertEqual(exceptions, string, "testClient1: Good morning!\n");
-                barrier3.await();
-            }
-        });
-
-        client2.start();
-        chatConnection.run();
-        chatConnection2.run();
-        if (!exceptions.isEmpty()) {
-            throw exceptions.get(0);
-        }
-    }
-
-    private static void performTestUseName() throws Exception {
-        final CyclicBarrier barrier1 = new CyclicBarrier(2);
-        final CyclicBarrier barrier2 = new CyclicBarrier(2);
-        final CyclicBarrier barrier3 = new CyclicBarrier(2);
-        final List<Exception> exceptions = new ArrayList<Exception>();
-
-        ChatConnection chatConnection = new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                String string = readAvailableString(reader);
-                if (!"Name: ".equals(string)) {
-                    exceptions.add(new RuntimeException("Expected Name: "));
-                }
-                writer.write("testClient1\n");
-                waitForJoin(reader, "testClient1");
-                barrier1.await();
-                barrier2.await();
-                string = readAvailableString(reader);
-                if (!"testClient2: Hello world!\n".equals(string)) {
-                    exceptions.add(new RuntimeException("testClient2: Hello world!\n"));
-                }
-                barrier3.await();
-            }
-        };
-
-        Thread client2 = new Thread(new ChatConnection() {
-            @Override
-            public void run(Socket socket, BufferedReader reader, Writer writer) throws Exception {
-                String string = readAvailableString(reader);
-                if (!"Name: ".equals(string)) {
-                    exceptions.add(new RuntimeException("Expected Name: "));
-                }
-                writer.write("testClient2\n");
-                waitForJoin(reader, "testClient2");
-                barrier1.await();
-                writer.write("Hello world!\n");
-                barrier2.await();
-                barrier3.await();
-            }
-        });
-
-        client2.start();
-        chatConnection.run();
-        if (!exceptions.isEmpty()) {
-            throw exceptions.get(0);
-        }
-    }
-
-    private static String readAvailableString(Reader reader) throws IOException {
-        return readAvailableString(reader, false);
-    }
-
-    private static String readAvailableString(Reader reader, boolean now) throws IOException {
-        StringBuilder builder = new StringBuilder();
-        int bytes;
-        if (now && !reader.ready()) {
-            return null;
-        }
-        do {
-            char[] buf = new char[256];
-            bytes = reader.read(buf);
-            builder.append(buf, 0, bytes);
-        } while (bytes == 256);
-        return builder.toString();
-    }
-
-    private abstract static class ChatConnection implements Runnable {
-        public Exception exception;
-
-        @Override
-        public void run() {
-            try (Socket socket = new Socket("localhost", listeningPort);
-            BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
-            Writer writer = new FlushingWriter(new OutputStreamWriter(socket.getOutputStream()))) {
-                socket.setTcpNoDelay(true);
-
-                run(socket, reader, writer);
-            } catch (Exception e) {
-                exception = e;
-            }
-        }
-
-        public abstract void run(Socket socket, BufferedReader reader, Writer writer) throws Exception;
-    }
-
-    private static class FlushingWriter extends Writer {
-        public final Writer delegate;
-
-        private FlushingWriter(Writer delegate) {
-            this.delegate = delegate;
-        }
-
-        @Override
-        public void write(char[] cbuf, int off, int len) throws IOException {
-            delegate.write(cbuf, off, len);
-        }
-
-        @Override
-        public void flush() throws IOException {
-            delegate.flush();
-        }
-
-        @Override
-        public void close() throws IOException {
-            delegate.close();
-        }
-
-        @Override
-        public void write(String str) throws IOException {
-            super.write(str);
-            flush();
-        }
-    }
-}
--- a/jdk/test/sample/mergesort/MergeSortTest.java	Sat May 06 13:17:36 2017 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 2011 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
- * @summary Test MergeSort
- *
- * @library /src/sample/share/forkjoin/mergesort
- * @build MergeSortTest MergeDemo MergeSort
- * @run testng MergeSortTest
- */
-
-import java.util.Arrays;
-import java.util.Random;
-
-import org.testng.annotations.Test;
-
-public class MergeSortTest {
-    private Random random;
-    private MergeSort target;
-
-    public MergeSortTest(Random random, MergeSort target) {
-        this.random = random;
-        this.target = target;
-    }
-
-    @Test
-    public static void doTest() {
-        MergeSortTest test = new MergeSortTest(new Random(), new MergeSort(Runtime.getRuntime().availableProcessors() * 4));
-        test.run();
-    }
-
-    private int[] generateArray(int elements) {
-        int[] array = new int[elements];
-        for (int i = 0; i < array.length; ++i) {
-            array[i] = random.nextInt(10);
-        }
-        return array;
-    }
-
-    private void run() {
-        testSort();
-        testSortSingle();
-        testSortEmpty();
-        testLong();
-    }
-
-    public void testLong() {
-        for (int i = 0; i < 1000; ++i) {
-            int elements = 1 + i * 100;
-
-            int[] array = generateArray(elements);
-            int[] copy = Arrays.copyOf(array, array.length);
-            Arrays.sort(copy);
-            target.sort(array);
-            assertEqual(copy, array);
-        }
-   }
-
-    private void testSortEmpty() {
-        int[] array = { };
-        target.sort(array);
-        assertEqual(new int[] { }, array);
-    }
-
-    private void testSortSingle() {
-        int[] array = { 1 };
-        target.sort(array);
-        assertEqual(new int[] { 1 }, array);
-    }
-
-    private void testSort() {
-        int[] array = { 7, 3, 9, 0, -6, 12, 54, 3, -6, 88, 1412};
-        target.sort(array);
-        assertEqual(new int[] { -6, -6, 0, 3, 3, 7, 9, 12, 54, 88, 1412 }, array);
-    }
-
-    private void assertEqual(int[] expected, int[] array) {
-        if (!Arrays.equals(expected, array)) {
-            throw new RuntimeException("Invalid sorted array!");
-        }
-    }
-
-
-}
--- a/jdk/test/sun/awt/dnd/8024061/bug8024061.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/awt/dnd/8024061/bug8024061.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2017 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
--- a/jdk/test/sun/net/idn/NFS4StringPrep.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/net/idn/NFS4StringPrep.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2015, 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
--- a/jdk/test/sun/security/krb5/auto/BogusKDC.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/krb5/auto/BogusKDC.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
--- a/jdk/test/sun/security/krb5/auto/NoAddresses.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/krb5/auto/NoAddresses.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2011, 2016, 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
--- a/jdk/test/sun/security/krb5/auto/Renew.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/krb5/auto/Renew.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2017 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/jdk/test/sun/security/krb5/auto/Renewal.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/krb5/auto/Renewal.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2016, 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
--- a/jdk/test/sun/security/krb5/auto/SSLwithPerms.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/krb5/auto/SSLwithPerms.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
--- a/jdk/test/sun/security/krb5/canonicalize/Test.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/krb5/canonicalize/Test.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2016 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2016, 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
--- a/jdk/test/sun/security/mscapi/CastError.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/mscapi/CastError.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 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
--- a/jdk/test/sun/security/mscapi/PrngSlow.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/mscapi/PrngSlow.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2006, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2006, 2015, 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
--- a/jdk/test/sun/security/mscapi/PublicKeyInterop.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/mscapi/PublicKeyInterop.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 #
-# Copyright (c) 2011, 2015 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, 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
--- a/jdk/test/sun/security/pkcs12/StoreSecretKeyTest.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/pkcs12/StoreSecretKeyTest.java	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013, 2015 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2015, 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
--- a/jdk/test/sun/security/provider/SeedGenerator/SeedGeneratorChoice.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/provider/SeedGenerator/SeedGeneratorChoice.java	Tue May 09 12:19:08 2017 -0700
@@ -1,6 +1,5 @@
 /*
- * Copyright (c) 2010, 2011, 2016, Oracle and/or its affiliates. All rights
- * reserved.
+ * Copyright (c) 2010, 2016, 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
--- a/jdk/test/sun/security/tools/jarsigner/nameclash.sh	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/tools/jarsigner/nameclash.sh	Tue May 09 12:19:08 2017 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2009, 2014 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2009, 2014, 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,4 +63,3 @@
 $JARSIGNER -verify -debug -strict $JFILE || exit 3
 
 exit 0
-
--- a/jdk/test/sun/security/x509/URICertStore/SocksProxy.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/sun/security/x509/URICertStore/SocksProxy.java	Tue May 09 12:19:08 2017 -0700
@@ -8,7 +8,7 @@
  *
  * 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
+ * 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).
  *
--- a/jdk/test/tools/pack200/MultiRelease.java	Sat May 06 13:17:36 2017 -0700
+++ b/jdk/test/tools/pack200/MultiRelease.java	Tue May 09 12:19:08 2017 -0700
@@ -12,7 +12,7 @@
  * version 2 for more details (a copy is included in the LICENSE file that
  * accompanied this code).
  *
- r You should have received a copy of the GNU General Public License version
+ * 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.
  *