changeset 55799:f72de31c98cd

Merge
author prr
date Fri, 21 Jun 2019 09:05:45 -0700
parents fe5395d16475 e764228f71dc
children e7671524d4e2
files test/jdk/ProblemList.txt
diffstat 296 files changed, 11014 insertions(+), 2223 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Tue Jun 18 21:40:50 2019 -0700
+++ b/.hgtags	Fri Jun 21 09:05:45 2019 -0700
@@ -562,3 +562,8 @@
 181986c5476468bc2dd4532af49599003ee8af37 jdk-13+22
 b034d2dee5fc93d42a81b65e58ce3f91e42586ff jdk-13+23
 7e2238451585029680f126ccbb46d01f2ff5607f jdk-13+24
+22b3b7983adab54e318f75aeb94471f7a4429c1e jdk-14+0
+22b3b7983adab54e318f75aeb94471f7a4429c1e jdk-13+25
+2f4e214781a1d597ed36bf5a36f20928c6c82996 jdk-14+1
+0692b67f54621991ba7afbf23e55b788f3555e69 jdk-13+26
+43627549a488b7d0b4df8fad436e36233df89877 jdk-14+2
--- a/doc/building.md	Tue Jun 18 21:40:50 2019 -0700
+++ b/doc/building.md	Fri Jun 21 09:05:45 2019 -0700
@@ -871,6 +871,7 @@
   * `CONF_CHECK`
   * `COMPARE_BUILD`
   * `JDK_FILTER`
+  * `SPEC_FILTER`
 
 ## Running Tests
 
--- a/make/Docs.gmk	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/Docs.gmk	Fri Jun 21 09:05:45 2019 -0700
@@ -487,11 +487,25 @@
 
 ################################################################################
 
+# Use this variable to control which spec files are included in the output.
+# Format: space-delimited list of names, including at most one '%' as a
+# wildcard. Spec source files match if their filename or any enclosing folder
+# name matches one of the items in SPEC_FILTER.
+SPEC_FILTER := %
+
+ApplySpecFilter = \
+    $(strip $(foreach file, $(1), \
+        $(eval searchkeys := $(subst /, ,$(subst $(WORKSPACE_ROOT),,$(file)))) \
+        $(if $(filter $(SPEC_FILTER), $(searchkeys)), \
+            $(file) \
+        ) \
+    ))
+
 # Copy the global resources, including the top-level redirect index.html
-GLOBAL_SPECS_RESOURCES_DIR := $(TOPDIR)/make/data/docs-resources/
+GLOBAL_SPECS_RESOURCES_DIR := $(TOPDIR)/make/data/docs-resources
 $(eval $(call SetupCopyFiles, COPY_GLOBAL_RESOURCES, \
     SRC := $(GLOBAL_SPECS_RESOURCES_DIR), \
-    FILES := $(call FindFiles, $(GLOBAL_SPECS_RESOURCES_DIR)), \
+    FILES := $(call ApplySpecFilter, $(call FindFiles, $(GLOBAL_SPECS_RESOURCES_DIR))), \
     DEST := $(DOCS_OUTPUTDIR), \
 ))
 JDK_INDEX_TARGETS += $(COPY_GLOBAL_RESOURCES)
@@ -499,7 +513,7 @@
 # Copy the legal notices distributed with the docs bundle
 $(eval $(call SetupCopyFiles, COPY_DOCS_LEGAL_NOTICES, \
     SRC := $(TOPDIR)/src/jdk.javadoc/share/legal, \
-    FILES := $(wildcard $(TOPDIR)/src/jdk.javadoc/share/legal/*), \
+    FILES := $(call ApplySpecFilter, $(wildcard $(TOPDIR)/src/jdk.javadoc/share/legal/*)), \
     DEST := $(DOCS_OUTPUTDIR)/legal, \
 ))
 JDK_INDEX_TARGETS += $(COPY_DOCS_LEGAL_NOTICES)
@@ -516,10 +530,10 @@
 $(foreach m, $(ALL_MODULES), \
   $(eval SPECS_$m := $(call FindModuleSpecsDirs, $m)) \
   $(foreach d, $(SPECS_$m), \
-    $(if $(filter $(COPY_SPEC_FILTER), $(call FindFiles, $d)), \
+    $(if $(call ApplySpecFilter, $(filter $(COPY_SPEC_FILTER), $(call FindFiles, $d))), \
       $(eval $(call SetupCopyFiles, COPY_$m, \
           SRC := $d, \
-          FILES := $(filter $(COPY_SPEC_FILTER), $(call FindFiles, $d)), \
+          FILES := $(call ApplySpecFilter, $(filter $(COPY_SPEC_FILTER), $(call FindFiles, $d))), \
           DEST := $(DOCS_OUTPUTDIR)/specs/, \
       )) \
       $(eval JDK_SPECS_TARGETS += $(COPY_$m)) \
@@ -527,31 +541,27 @@
   ) \
 )
 
-# Create copyright footer files that can be provided as input to pandoc. We
-# need different files for different relative paths to the copyright.html
-# file. The number 0-2 below represent how many extra directory levels down
-# below the specs dir the specs html file is located. Each file name is
-# stored in a variable SPECS_BOTTOM_FILE_$n where $n is 0, 1 or 2.
-SPECS_BOTTOM = <hr/>$(COPYRIGHT_BOTTOM)
+# Create copyright footer variables. We need different variables for different
+# relative paths to the copyright.html file. The number 0-2 below represent how
+# many extra directory levels down below the specs dir the specs html file is
+# located.
+SPECS_BOTTOM = <footer class="legal-footer"><hr/>$(COPYRIGHT_BOTTOM)</footer>
 # The legal dir is one ../ below the specs dir, so start with one ../.
 specs_bottom_rel_path := ../
 $(foreach n, 0 1 2, \
-  $(eval SPECS_BOTTOM_FILE_$n := $(SUPPORT_OUTPUTDIR)/docs/full-specs-bottom-$n.txt) \
   $(eval SPECS_BOTTOM_$n := $(call SPECS_BOTTOM,$(specs_bottom_rel_path))) \
-  $(eval $(SPECS_BOTTOM_FILE_$n): \
-      $(call DependOnVariable, SPECS_BOTTOM_$n) ; \
-      $(PRINTF) '$(SPECS_BOTTOM_$n)' > $$@ \
-  ) \
   $(eval specs_bottom_rel_path := $(specs_bottom_rel_path)../) \
 )
 
+SPECS_TOP := $(if $(filter true, $(IS_DRAFT)), <div class="draft-header">$(DRAFT_TEXT)</div>)
+
 # For all html files in $module/share/specs directories, copy and add the
 # copyright footer.
 
 $(foreach m, $(ALL_MODULES), \
   $(eval SPECS_$m := $(call FindModuleSpecsDirs, $m)) \
   $(foreach d, $(SPECS_$m), \
-    $(foreach f, $(filter %.html, $(call FindFiles, $d)), \
+    $(foreach f, $(call ApplySpecFilter, $(filter %.html, $(call FindFiles, $d))), \
       $(eval $m_$f_NOF_SUBDIRS := $(words $(subst /, $(SPACE), $(subst $d, , $(dir $f))))) \
       $(eval $m_$f_NAME := PROCESS_HTML_$m_$(strip $(call RelativePath, $f, $(TOPDIR)))) \
       $(eval $(call SetupTextFileProcessing, $($m_$f_NAME), \
@@ -559,6 +569,7 @@
           SOURCE_BASE_DIR := $d, \
           OUTPUT_DIR := $(DOCS_OUTPUTDIR)/specs/, \
           REPLACEMENTS := \
+              <body> => <body>$(SPECS_TOP) ; \
               </body> => $(SPECS_BOTTOM_$($m_$f_NOF_SUBDIRS))</body>, \
       )) \
       $(eval JDK_SPECS_TARGETS += $($($m_$f_NAME))) \
@@ -575,17 +586,16 @@
   $(foreach m, $(ALL_MODULES), \
     $(eval SPECS_$m := $(call FindModuleSpecsDirs, $m)) \
     $(foreach d, $(SPECS_$m), \
-      $(foreach f, $(filter %.md, $(call FindFiles, $d)), \
+      $(foreach f, $(call ApplySpecFilter, $(filter %.md, $(call FindFiles, $d))), \
         $(eval $m_$f_NOF_SUBDIRS := $(words $(subst /, $(SPACE), $(subst $d, , $(dir $f))))) \
-        $(eval $m_$f_BOTTOM_FILE := $(SPECS_BOTTOM_FILE_$($m_$f_NOF_SUBDIRS))) \
         $(eval $m_$f_NAME := SPECS_TO_HTML_$m_$(strip $(call RelativePath, $f, $(TOPDIR)))) \
         $(eval $(call SetupProcessMarkdown, $($m_$f_NAME), \
             SRC := $d, \
             FILES := $f, \
             DEST := $(DOCS_OUTPUTDIR)/specs/, \
             CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
-            OPTIONS := -A $($m_$f_BOTTOM_FILE), \
-            EXTRA_DEPS := $($m_$f_BOTTOM_FILE), \
+            OPTIONS := -V include-before='$(SPECS_TOP)' -V include-after='$(SPECS_BOTTOM_$($m_$f_NOF_SUBDIRS))', \
+            REPLACEMENTS := @@VERSION_STRING@@ => $(VERSION_STRING), \
             POST_PROCESS := $(TOOL_FIXUPPANDOC), \
         )) \
         $(eval JDK_SPECS_TARGETS += $($($m_$f_NAME))) \
@@ -607,7 +617,7 @@
   $(foreach m, $(ALL_MODULES), \
     $(eval MAN_$m := $(call FindModuleManDirs, $m)) \
     $(foreach d, $(MAN_$m), \
-      $(foreach f, $(filter %.md, $(call FindFiles, $d)), \
+      $(foreach f, $(call ApplySpecFilter, $(filter %.md, $(call FindFiles, $d))), \
         $(eval $m_$f_NAME := MAN_TO_HTML_$m_$(strip $(call RelativePath, $f, $(TOPDIR)))) \
         $(eval $(call SetupProcessMarkdown, $($m_$f_NAME), \
             SRC := $d, \
@@ -616,11 +626,10 @@
             FILTER := $(PANDOC_HTML_MANPAGE_FILTER), \
             CSS := $(GLOBAL_SPECS_DEFAULT_CSS_FILE), \
             REPLACEMENTS := @@VERSION_SHORT@@ => $(VERSION_SHORT), \
-            OPTIONS := -A $(SPECS_BOTTOM_FILE_1), \
+            OPTIONS := -V include-before='$(SPECS_TOP)' -V include-after='$(SPECS_BOTTOM_1)', \
             POST_PROCESS := $(TOOL_FIXUPPANDOC), \
             EXTRA_DEPS := $(PANDOC_HTML_MANPAGE_FILTER) \
-                $(PANDOC_HTML_MANPAGE_FILTER_JAVASCRIPT) \
-                $(SPECS_BOTTOM_FILE_1), \
+                $(PANDOC_HTML_MANPAGE_FILTER_JAVASCRIPT), \
         )) \
         $(eval JDK_SPECS_TARGETS += $($($m_$f_NAME))) \
       ) \
@@ -634,23 +643,29 @@
 # Special treatment for generated documentation
 
 JDWP_PROTOCOL := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.jdi/jdwp-protocol.html
-$(eval $(call SetupTextFileProcessing, PROCESS_JDWP_PROTOCOL, \
-    SOURCE_FILES := $(JDWP_PROTOCOL), \
-    OUTPUT_DIR := $(DOCS_OUTPUTDIR)/specs/jdwp, \
-    REPLACEMENTS := \
-        </body> => $(SPECS_BOTTOM_1)</body>, \
-))
-JDK_SPECS_TARGETS += $(PROCESS_JDWP_PROTOCOL)
+ifneq ($(call ApplySpecFilter, $(JDWP_PROTOCOL)), )
+  $(eval $(call SetupTextFileProcessing, PROCESS_JDWP_PROTOCOL, \
+      SOURCE_FILES := $(JDWP_PROTOCOL), \
+      OUTPUT_DIR := $(DOCS_OUTPUTDIR)/specs/jdwp, \
+      REPLACEMENTS := \
+          <body> => <body>$(SPECS_TOP) ; \
+          </body> => $(SPECS_BOTTOM_1)</body>, \
+  ))
+  JDK_SPECS_TARGETS += $(PROCESS_JDWP_PROTOCOL)
+endif
 
 # Get jvmti.html from the main jvm variant (all variants' jvmti.html are identical).
 JVMTI_HTML ?= $(HOTSPOT_OUTPUTDIR)/variant-$(JVM_VARIANT_MAIN)/gensrc/jvmtifiles/jvmti.html
-$(eval $(call SetupTextFileProcessing, PROCESS_JVMTI_HTML, \
-    SOURCE_FILES := $(JVMTI_HTML), \
-    OUTPUT_DIR := $(DOCS_OUTPUTDIR)/specs/, \
-    REPLACEMENTS := \
-        </body> => $(SPECS_BOTTOM_0)</body>, \
-))
-JDK_SPECS_TARGETS += $(PROCESS_JVMTI_HTML)
+ifneq ($(call ApplySpecFilter, $(JVMTI_HTML)), )
+  $(eval $(call SetupTextFileProcessing, PROCESS_JVMTI_HTML, \
+      SOURCE_FILES := $(JVMTI_HTML), \
+      OUTPUT_DIR := $(DOCS_OUTPUTDIR)/specs/, \
+      REPLACEMENTS := \
+          <body> => <body>$(SPECS_TOP) ; \
+          </body> => $(SPECS_BOTTOM_0)</body>, \
+  ))
+  JDK_SPECS_TARGETS += $(PROCESS_JVMTI_HTML)
+endif
 
 ################################################################################
 # Optional target which bundles all generated javadocs into a zip archive.
@@ -672,6 +687,20 @@
 $(eval $(call IncludeCustomExtension, Docs-post.gmk))
 
 ################################################################################
+# Bundles all generated specs into a zip archive, skipping javadocs.
+
+SPECS_ZIP_NAME := jdk-$(VERSION_STRING)-specs.zip
+SPECS_ZIP_FILE := $(OUTPUTDIR)/bundles/$(SPECS_ZIP_NAME)
+
+$(eval $(call SetupZipArchive, BUILD_SPECS_ZIP, \
+    SRC := $(DOCS_OUTPUTDIR), \
+    ZIP := $(SPECS_ZIP_FILE), \
+    EXTRA_DEPS := $(JDK_SPECS_TARGETS), \
+))
+
+SPECS_ZIP_TARGETS += $(BUILD_SPECS_ZIP)
+
+################################################################################
 
 docs-jdk-api-javadoc: $(JDK_API_JAVADOC_TARGETS) $(JDK_API_CUSTOM_TARGETS)
 
@@ -691,11 +720,14 @@
 
 docs-zip: $(ZIP_TARGETS)
 
+docs-specs-zip: $(SPECS_ZIP_TARGETS)
+
 all: docs-jdk-api-javadoc docs-jdk-api-modulegraph docs-javase-api-javadoc \
     docs-javase-api-modulegraph docs-reference-api-javadoc \
-    docs-reference-api-modulegraph docs-jdk-specs docs-jdk-index docs-zip
+    docs-reference-api-modulegraph docs-jdk-specs docs-jdk-index docs-zip \
+    docs-specs-zip
 
 .PHONY: default all docs-jdk-api-javadoc docs-jdk-api-modulegraph \
     docs-javase-api-javadoc docs-javase-api-modulegraph \
     docs-reference-api-javadoc docs-reference-api-modulegraph docs-jdk-specs \
-    docs-jdk-index docs-zip
+    docs-jdk-index docs-zip docs-specs-zip
--- a/make/InitSupport.gmk	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/InitSupport.gmk	Fri Jun 21 09:05:45 2019 -0700
@@ -53,7 +53,7 @@
       COMPARE_BUILD JTREG GTEST MICRO TEST_OPTS TEST_VM_OPTS
 
   # All known make control variables
-  MAKE_CONTROL_VARIABLES := $(INIT_CONTROL_VARIABLES) TEST JDK_FILTER
+  MAKE_CONTROL_VARIABLES := $(INIT_CONTROL_VARIABLES) TEST JDK_FILTER SPEC_FILTER
 
   # Define a simple reverse function.
   # Should maybe move to MakeBase.gmk, but we can't include that file now.
--- a/make/Main.gmk	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/Main.gmk	Fri Jun 21 09:05:45 2019 -0700
@@ -427,6 +427,9 @@
 docs-zip:
 	+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Docs.gmk docs-zip)
 
+docs-specs-zip:
+	+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Docs.gmk docs-specs-zip)
+
 update-build-docs:
 	+($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f UpdateBuildDocs.gmk)
 
@@ -436,7 +439,7 @@
 ALL_TARGETS += docs-jdk-api-javadoc docs-jdk-api-modulegraph \
     docs-javase-api-javadoc docs-javase-api-modulegraph \
     docs-reference-api-javadoc docs-reference-api-modulegraph docs-jdk-specs \
-    docs-jdk-index docs-zip update-build-docs update-x11wrappers
+    docs-jdk-index docs-zip docs-specs-zip update-build-docs update-x11wrappers
 
 ################################################################################
 # Cross compilation support
@@ -885,6 +888,8 @@
 
   docs-zip: docs-jdk
 
+  docs-specs-zip: docs-jdk-specs
+
   # Tests
   test: jdk-image test-image
 
--- a/make/autoconf/bootcycle-spec.gmk.in	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/autoconf/bootcycle-spec.gmk.in	Fri Jun 21 09:05:45 2019 -0700
@@ -62,3 +62,7 @@
 endif
 # The bootcycle JVM arguments may differ from the original boot jdk.
 JAVA_FLAGS_BIG := @BOOTCYCLE_JVM_ARGS_BIG@
+# Any CDS settings generated for the bootjdk are invalid in the bootcycle build.
+# By filtering out those JVM args, the bootcycle JVM will use its default
+# settings for CDS.
+JAVA_FLAGS := $(filter-out -XX:SharedArchiveFile% -Xshare%, $(JAVA_FLAGS))
--- a/make/autoconf/build-aux/config.guess	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/autoconf/build-aux/config.guess	Fri Jun 21 09:05:45 2019 -0700
@@ -63,7 +63,7 @@
 # Test and fix wsl
 echo $OUT | grep x86_64-unknown-linux-gnu > /dev/null 2> /dev/null
 if test $? = 0; then
-  uname -r | grep Microsoft > /dev/null 2> /dev/null
+  uname -r | grep -i microsoft > /dev/null 2> /dev/null
   if test $? = 0; then
     OUT="x86_64-pc-wsl"
   fi
--- a/make/autoconf/hotspot.m4	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/autoconf/hotspot.m4	Fri Jun 21 09:05:45 2019 -0700
@@ -350,7 +350,8 @@
 
   # Only enable ZGC on supported platforms
   AC_MSG_CHECKING([if zgc can be built])
-  if test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xx86_64"; then
+  if (test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xx86_64") || \
+     (test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = "xaarch64"); then
     AC_MSG_RESULT([yes])
   else
     DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES zgc"
--- a/make/autoconf/version-numbers	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/autoconf/version-numbers	Fri Jun 21 09:05:45 2019 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2019, 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,18 +25,18 @@
 
 # Default version numbers to use unless overridden by configure
 
-DEFAULT_VERSION_FEATURE=13
+DEFAULT_VERSION_FEATURE=14
 DEFAULT_VERSION_INTERIM=0
 DEFAULT_VERSION_UPDATE=0
 DEFAULT_VERSION_PATCH=0
 DEFAULT_VERSION_EXTRA1=0
 DEFAULT_VERSION_EXTRA2=0
 DEFAULT_VERSION_EXTRA3=0
-DEFAULT_VERSION_DATE=2019-09-17
-DEFAULT_VERSION_CLASSFILE_MAJOR=57  # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
+DEFAULT_VERSION_DATE=2020-03-17
+DEFAULT_VERSION_CLASSFILE_MAJOR=58  # "`$EXPR $DEFAULT_VERSION_FEATURE + 44`"
 DEFAULT_VERSION_CLASSFILE_MINOR=0
-DEFAULT_ACCEPTABLE_BOOT_VERSIONS="12 13"
-DEFAULT_JDK_SOURCE_TARGET_VERSION=13
+DEFAULT_ACCEPTABLE_BOOT_VERSIONS="12 13 14"
+DEFAULT_JDK_SOURCE_TARGET_VERSION=14
 DEFAULT_PROMOTED_VERSION_PRE=ea
 
 LAUNCHER_NAME=openjdk
--- a/make/conf/jib-profiles.js	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/conf/jib-profiles.js	Fri Jun 21 09:05:45 2019 -0700
@@ -1041,7 +1041,7 @@
             // build_number: "b07",
             // file: "bundles/jcov-3_0.zip",
             organization: common.organization,
-            revision: "3.0-57-support+1.0",
+            revision: "3.0-58-support+1.0",
             ext: "zip",
             environment_name: "JCOV_HOME",
         },
--- a/make/data/docs-resources/resources/jdk-default.css	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/data/docs-resources/resources/jdk-default.css	Fri Jun 21 09:05:45 2019 -0700
@@ -25,7 +25,7 @@
 
 body {
   margin: 2em 2em;
-  font-family: DejaVu Sans, Bitstream Vera Sans, Luxi Sans, Verdana, Arial, Helvetica;
+  font-family: DejaVu Sans, Bitstream Vera Sans, Luxi Sans, Verdana, Arial, Helvetica, sans-serif;
   font-size: 10pt;
   line-height: 1.4;
 }
@@ -68,12 +68,23 @@
   margin: 1.5ex 0pt 1ex 0pt;
 }
 
-h4 {
+h4, h5 {
+  font-size: 100%;
   font-weight: bold;
   padding: 0pt;
   margin: 1.5ex 0pt 1ex 0pt;
 }
 
+.subtitle {
+    font-style: italic;
+    font-weight: bold;
+    margin-bottom: 1em;
+}
+
+h1.title + .subtitle {
+    margin-top: -1em;
+}
+
 a:link {
   color: #4A6782;
 }
@@ -138,3 +149,16 @@
 .centered {
   text-align: center;
 }
+
+.draft-header {
+  text-align: center;
+  font-size: 80%;
+  padding: 6px;
+  margin: -2.5em -2.5em 2.5em -2.5em;
+  background-color: #CBDAE4;
+}
+
+.legal-footer {
+    font-style: italic;
+    font-size: 80%;
+}
--- a/make/data/jdwp/jdwp.spec	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/data/jdwp/jdwp.spec	Fri Jun 21 09:05:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2019, 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
@@ -602,7 +602,7 @@
     (Command Signature=1
         "Returns the JNI signature of a reference type. "
         "JNI signature formats are described in the "
-        "<a href=\"http://java.sun.com/products/jdk/1.2/docs/guide/jni/index.html\">Java Native Inteface Specification</a>"
+        "<a href=\"../jni/index.html\">Java Native Interface Specification</a>"
         "<p>
         "For primitive classes "
         "the returned signature is the signature of the corresponding primitive "
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.base-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,638 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name java/io/ObjectInputStream
+header extends java/io/InputStream implements java/io/ObjectInput,java/io/ObjectStreamConstants nestMembers java/io/ObjectInputStream$GetField flags 21
+innerclass innerClass java/io/ObjectInputFilter$Config outerClass java/io/ObjectInputFilter innerClassName Config flags 19
+innerclass innerClass java/io/ObjectInputFilter$FilterInfo outerClass java/io/ObjectInputFilter innerClassName FilterInfo flags 609
+innerclass innerClass java/io/ObjectInputFilter$Status outerClass java/io/ObjectInputFilter innerClassName Status flags 4019
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/CharSequence
+header extends java/lang/Object flags 601
+innerclass innerClass java/util/PrimitiveIterator$OfInt outerClass java/util/PrimitiveIterator innerClassName OfInt flags 609
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/Character
+header extends java/lang/Object implements java/io/Serializable,java/lang/Comparable nestMembers java/lang/Character$UnicodeScript,java/lang/Character$UnicodeBlock,java/lang/Character$Subset flags 31 signature Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable<Ljava/lang/Character;>;
+innerclass innerClass java/lang/Character$UnicodeBlock outerClass java/lang/Character innerClassName UnicodeBlock flags 19
+innerclass innerClass java/lang/Character$UnicodeScript outerClass java/lang/Character innerClassName UnicodeScript flags 4019
+innerclass innerClass java/lang/Character$Subset outerClass java/lang/Character innerClassName Subset flags 9
+
+class name java/lang/Character$UnicodeBlock
+header extends java/lang/Character$Subset nestHost java/lang/Character flags 31
+innerclass innerClass java/lang/Character$Subset outerClass java/lang/Character innerClassName Subset flags 9
+innerclass innerClass java/lang/Character$UnicodeBlock outerClass java/lang/Character innerClassName UnicodeBlock flags 19
+field name ELYMAIC descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name NANDINAGARI descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name TAMIL_SUPPLEMENT descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name SMALL_KANA_EXTENSION descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name NYIAKENG_PUACHUE_HMONG descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name WANCHO descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name OTTOMAN_SIYAQ_NUMBERS descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+field name SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A descriptor Ljava/lang/Character$UnicodeBlock; flags 19
+
+class name java/lang/Character$UnicodeScript
+field name ELYMAIC descriptor Ljava/lang/Character$UnicodeScript; flags 4019
+field name NANDINAGARI descriptor Ljava/lang/Character$UnicodeScript; flags 4019
+field name NYIAKENG_PUACHUE_HMONG descriptor Ljava/lang/Character$UnicodeScript; flags 4019
+field name WANCHO descriptor Ljava/lang/Character$UnicodeScript; flags 4019
+
+class name java/lang/Math
+-method name abs descriptor (I)I
+-method name abs descriptor (J)J
+-method name abs descriptor (F)F
+-method name max descriptor (FF)F
+-method name max descriptor (DD)D
+-method name min descriptor (FF)F
+-method name min descriptor (DD)D
+method name abs descriptor (I)I flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name abs descriptor (J)J flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name abs descriptor (F)F flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name max descriptor (FF)F flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name max descriptor (DD)D flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name min descriptor (FF)F flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name min descriptor (DD)D flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+
+class name java/lang/Process
+header extends java/lang/Object flags 421
+innerclass innerClass java/util/concurrent/ForkJoinPool$ManagedBlocker outerClass java/util/concurrent/ForkJoinPool innerClassName ManagedBlocker flags 609
+innerclass innerClass java/lang/ProcessHandle$Info outerClass java/lang/ProcessHandle innerClassName Info flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/StrictMath
+-method name max descriptor (FF)F
+-method name max descriptor (DD)D
+-method name min descriptor (FF)F
+-method name min descriptor (DD)D
+method name max descriptor (FF)F flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name max descriptor (DD)D flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name min descriptor (FF)F flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+method name min descriptor (DD)D flags 9 runtimeAnnotations @Ljdk/internal/HotSpotIntrinsicCandidate;
+
+class name java/lang/String
+header extends java/lang/Object implements java/io/Serializable,java/lang/Comparable,java/lang/CharSequence,java/lang/constant/Constable,java/lang/constant/ConstantDesc flags 31 signature Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Comparable<Ljava/lang/String;>;Ljava/lang/CharSequence;Ljava/lang/constant/Constable;Ljava/lang/constant/ConstantDesc;
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/System
+header extends java/lang/Object nestMembers java/lang/System$LoggerFinder,java/lang/System$Logger,java/lang/System$Logger$Level flags 31
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$LoggerFinder outerClass java/lang/System innerClassName LoggerFinder flags 409
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/constant/DynamicConstantDesc
+header extends java/lang/Object implements java/lang/constant/ConstantDesc flags 421 signature <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/lang/constant/ConstantDesc;
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+innerclass innerClass java/lang/Enum$EnumDesc outerClass java/lang/Enum innerClassName EnumDesc flags 19
+innerclass innerClass java/lang/invoke/VarHandle$VarHandleDesc outerClass java/lang/invoke/VarHandle innerClassName VarHandleDesc flags 19
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+
+class name java/lang/constant/MethodTypeDesc
+header extends java/lang/Object implements java/lang/constant/ConstantDesc,java/lang/invoke/TypeDescriptor$OfMethod flags 601 signature Ljava/lang/Object;Ljava/lang/constant/ConstantDesc;Ljava/lang/invoke/TypeDescriptor$OfMethod<Ljava/lang/constant/ClassDesc;Ljava/lang/constant/MethodTypeDesc;>;
+innerclass innerClass java/lang/invoke/TypeDescriptor$OfMethod outerClass java/lang/invoke/TypeDescriptor innerClassName OfMethod flags 609
+innerclass innerClass java/lang/invoke/TypeDescriptor$OfField outerClass java/lang/invoke/TypeDescriptor innerClassName OfField flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/invoke/MethodType
+header extends java/lang/Object implements java/lang/constant/Constable,java/lang/invoke/TypeDescriptor$OfMethod,java/io/Serializable flags 31 signature Ljava/lang/Object;Ljava/lang/constant/Constable;Ljava/lang/invoke/TypeDescriptor$OfMethod<Ljava/lang/Class<*>;Ljava/lang/invoke/MethodType;>;Ljava/io/Serializable;
+innerclass innerClass java/lang/invoke/TypeDescriptor$OfMethod outerClass java/lang/invoke/TypeDescriptor innerClassName OfMethod flags 609
+innerclass innerClass java/lang/invoke/TypeDescriptor$OfField outerClass java/lang/invoke/TypeDescriptor innerClassName OfField flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/invoke/TypeDescriptor$OfMethod
+header extends java/lang/Object implements java/lang/invoke/TypeDescriptor nestHost java/lang/invoke/TypeDescriptor flags 601 signature <F::Ljava/lang/invoke/TypeDescriptor$OfField<TF;>;M::Ljava/lang/invoke/TypeDescriptor$OfMethod<TF;TM;>;>Ljava/lang/Object;Ljava/lang/invoke/TypeDescriptor;
+innerclass innerClass java/lang/invoke/TypeDescriptor$OfMethod outerClass java/lang/invoke/TypeDescriptor innerClassName OfMethod flags 609
+innerclass innerClass java/lang/invoke/TypeDescriptor$OfField outerClass java/lang/invoke/TypeDescriptor innerClassName OfField flags 609
+
+class name java/lang/invoke/VarHandle
+header extends java/lang/Object implements java/lang/constant/Constable nestMembers java/lang/invoke/VarHandle$VarHandleDesc,java/lang/invoke/VarHandle$AccessMode flags 421
+innerclass innerClass java/lang/invoke/VarHandle$AccessMode outerClass java/lang/invoke/VarHandle innerClassName AccessMode flags 4019
+innerclass innerClass java/lang/invoke/VarHandle$VarHandleDesc outerClass java/lang/invoke/VarHandle innerClassName VarHandleDesc flags 19
+
+class name java/lang/module/ModuleDescriptor
+header extends java/lang/Object implements java/lang/Comparable nestMembers java/lang/module/ModuleDescriptor$Builder,java/lang/module/ModuleDescriptor$Version,java/lang/module/ModuleDescriptor$Provides,java/lang/module/ModuleDescriptor$Opens,java/lang/module/ModuleDescriptor$Opens$Modifier,java/lang/module/ModuleDescriptor$Exports,java/lang/module/ModuleDescriptor$Exports$Modifier,java/lang/module/ModuleDescriptor$Requires,java/lang/module/ModuleDescriptor$Requires$Modifier,java/lang/module/ModuleDescriptor$Modifier flags 21 signature Ljava/lang/Object;Ljava/lang/Comparable<Ljava/lang/module/ModuleDescriptor;>;
+innerclass innerClass java/lang/module/ModuleDescriptor$Version outerClass java/lang/module/ModuleDescriptor innerClassName Version flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Modifier outerClass java/lang/module/ModuleDescriptor innerClassName Modifier flags 4019
+innerclass innerClass java/lang/module/ModuleDescriptor$Builder outerClass java/lang/module/ModuleDescriptor innerClassName Builder flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Provides outerClass java/lang/module/ModuleDescriptor innerClassName Provides flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Opens outerClass java/lang/module/ModuleDescriptor innerClassName Opens flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Exports outerClass java/lang/module/ModuleDescriptor innerClassName Exports flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Requires outerClass java/lang/module/ModuleDescriptor innerClassName Requires flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Opens$Modifier outerClass java/lang/module/ModuleDescriptor$Opens innerClassName Modifier flags 4019
+innerclass innerClass java/lang/module/ModuleDescriptor$Exports$Modifier outerClass java/lang/module/ModuleDescriptor$Exports innerClassName Modifier flags 4019
+innerclass innerClass java/lang/module/ModuleDescriptor$Requires$Modifier outerClass java/lang/module/ModuleDescriptor$Requires innerClassName Modifier flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/module/ModuleDescriptor$Builder
+header extends java/lang/Object nestHost java/lang/module/ModuleDescriptor flags 31
+innerclass innerClass java/lang/module/ModuleDescriptor$Builder outerClass java/lang/module/ModuleDescriptor innerClassName Builder flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Modifier outerClass java/lang/module/ModuleDescriptor innerClassName Modifier flags 4019
+innerclass innerClass java/lang/module/ModuleDescriptor$Requires outerClass java/lang/module/ModuleDescriptor innerClassName Requires flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Version outerClass java/lang/module/ModuleDescriptor innerClassName Version flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Requires$Modifier outerClass java/lang/module/ModuleDescriptor$Requires innerClassName Modifier flags 4019
+innerclass innerClass java/lang/module/ModuleDescriptor$Exports outerClass java/lang/module/ModuleDescriptor innerClassName Exports flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Opens outerClass java/lang/module/ModuleDescriptor innerClassName Opens flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Provides outerClass java/lang/module/ModuleDescriptor innerClassName Provides flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Exports$Modifier outerClass java/lang/module/ModuleDescriptor$Exports innerClassName Modifier flags 4019
+innerclass innerClass java/lang/module/ModuleDescriptor$Opens$Modifier outerClass java/lang/module/ModuleDescriptor$Opens innerClassName Modifier flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/lang/module/ModuleDescriptor$Requires
+header extends java/lang/Object implements java/lang/Comparable nestHost java/lang/module/ModuleDescriptor flags 31 signature Ljava/lang/Object;Ljava/lang/Comparable<Ljava/lang/module/ModuleDescriptor$Requires;>;
+innerclass innerClass java/lang/module/ModuleDescriptor$Requires outerClass java/lang/module/ModuleDescriptor innerClassName Requires flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Version outerClass java/lang/module/ModuleDescriptor innerClassName Version flags 19
+innerclass innerClass java/lang/module/ModuleDescriptor$Requires$Modifier outerClass java/lang/module/ModuleDescriptor$Requires innerClassName Modifier flags 4019
+
+class name java/net/Socket
+header extends java/lang/Object implements java/io/Closeable flags 21
+innerclass innerClass java/net/Proxy$Type outerClass java/net/Proxy innerClassName Type flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/net/SocketImpl
+header extends java/lang/Object implements java/net/SocketOptions flags 421
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/net/URL
+header extends java/lang/Object implements java/io/Serializable flags 31
+innerclass innerClass java/net/Proxy$Type outerClass java/net/Proxy innerClassName Type flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+
+class name java/nio/Buffer
+method name slice descriptor (II)Ljava/nio/Buffer; flags 401
+
+class name java/nio/ByteBuffer
+method name slice descriptor (II)Ljava/nio/ByteBuffer; flags 401
+method name get descriptor (I[BII)Ljava/nio/ByteBuffer; flags 1
+method name get descriptor (I[B)Ljava/nio/ByteBuffer; flags 1
+method name put descriptor (I[BII)Ljava/nio/ByteBuffer; flags 1
+method name put descriptor (I[B)Ljava/nio/ByteBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/CharBuffer
+method name slice descriptor (II)Ljava/nio/CharBuffer; flags 401
+method name get descriptor (I[CII)Ljava/nio/CharBuffer; flags 1
+method name get descriptor (I[C)Ljava/nio/CharBuffer; flags 1
+method name put descriptor (I[CII)Ljava/nio/CharBuffer; flags 1
+method name put descriptor (I[C)Ljava/nio/CharBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/DoubleBuffer
+method name slice descriptor (II)Ljava/nio/DoubleBuffer; flags 401
+method name get descriptor (I[DII)Ljava/nio/DoubleBuffer; flags 1
+method name get descriptor (I[D)Ljava/nio/DoubleBuffer; flags 1
+method name put descriptor (I[DII)Ljava/nio/DoubleBuffer; flags 1
+method name put descriptor (I[D)Ljava/nio/DoubleBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/FloatBuffer
+method name slice descriptor (II)Ljava/nio/FloatBuffer; flags 401
+method name get descriptor (I[FII)Ljava/nio/FloatBuffer; flags 1
+method name get descriptor (I[F)Ljava/nio/FloatBuffer; flags 1
+method name put descriptor (I[FII)Ljava/nio/FloatBuffer; flags 1
+method name put descriptor (I[F)Ljava/nio/FloatBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/IntBuffer
+method name slice descriptor (II)Ljava/nio/IntBuffer; flags 401
+method name get descriptor (I[III)Ljava/nio/IntBuffer; flags 1
+method name get descriptor (I[I)Ljava/nio/IntBuffer; flags 1
+method name put descriptor (I[III)Ljava/nio/IntBuffer; flags 1
+method name put descriptor (I[I)Ljava/nio/IntBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/LongBuffer
+method name slice descriptor (II)Ljava/nio/LongBuffer; flags 401
+method name get descriptor (I[JII)Ljava/nio/LongBuffer; flags 1
+method name get descriptor (I[J)Ljava/nio/LongBuffer; flags 1
+method name put descriptor (I[JII)Ljava/nio/LongBuffer; flags 1
+method name put descriptor (I[J)Ljava/nio/LongBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/MappedByteBuffer
+method name force descriptor (II)Ljava/nio/MappedByteBuffer; flags 11
+
+class name java/nio/ShortBuffer
+method name slice descriptor (II)Ljava/nio/ShortBuffer; flags 401
+method name get descriptor (I[SII)Ljava/nio/ShortBuffer; flags 1
+method name get descriptor (I[S)Ljava/nio/ShortBuffer; flags 1
+method name put descriptor (I[SII)Ljava/nio/ShortBuffer; flags 1
+method name put descriptor (I[S)Ljava/nio/ShortBuffer; flags 1
+method name slice descriptor (II)Ljava/nio/Buffer; flags 1041
+
+class name java/nio/file/FileSystems
+method name newFileSystem descriptor (Ljava/nio/file/Path;Ljava/util/Map;)Ljava/nio/file/FileSystem; thrownTypes java/io/IOException flags 9 signature (Ljava/nio/file/Path;Ljava/util/Map<Ljava/lang/String;*>;)Ljava/nio/file/FileSystem;
+method name newFileSystem descriptor (Ljava/nio/file/Path;)Ljava/nio/file/FileSystem; thrownTypes java/io/IOException flags 9
+method name newFileSystem descriptor (Ljava/nio/file/Path;Ljava/util/Map;Ljava/lang/ClassLoader;)Ljava/nio/file/FileSystem; thrownTypes java/io/IOException flags 9 signature (Ljava/nio/file/Path;Ljava/util/Map<Ljava/lang/String;*>;Ljava/lang/ClassLoader;)Ljava/nio/file/FileSystem;
+
+class name java/nio/file/Path
+header extends java/lang/Object implements java/lang/Comparable,java/lang/Iterable,java/nio/file/Watchable flags 601 signature Ljava/lang/Object;Ljava/lang/Comparable<Ljava/nio/file/Path;>;Ljava/lang/Iterable<Ljava/nio/file/Path;>;Ljava/nio/file/Watchable;
+innerclass innerClass java/nio/file/WatchEvent$Modifier outerClass java/nio/file/WatchEvent innerClassName Modifier flags 609
+innerclass innerClass java/nio/file/WatchEvent$Kind outerClass java/nio/file/WatchEvent innerClassName Kind flags 609
+
+class name java/security/DomainLoadStoreParameter
+header extends java/lang/Object implements java/security/KeyStore$LoadStoreParameter flags 31
+innerclass innerClass java/security/KeyStore$LoadStoreParameter outerClass java/security/KeyStore innerClassName LoadStoreParameter flags 609
+innerclass innerClass java/security/KeyStore$ProtectionParameter outerClass java/security/KeyStore innerClassName ProtectionParameter flags 609
+
+class name java/security/DrbgParameters
+header extends java/lang/Object nestMembers java/security/DrbgParameters$Reseed,java/security/DrbgParameters$NextBytes,java/security/DrbgParameters$Instantiation,java/security/DrbgParameters$Capability flags 21
+innerclass innerClass java/security/DrbgParameters$Instantiation outerClass java/security/DrbgParameters innerClassName Instantiation flags 19
+innerclass innerClass java/security/DrbgParameters$Capability outerClass java/security/DrbgParameters innerClassName Capability flags 4019
+innerclass innerClass java/security/DrbgParameters$NextBytes outerClass java/security/DrbgParameters innerClassName NextBytes flags 19
+innerclass innerClass java/security/DrbgParameters$Reseed outerClass java/security/DrbgParameters innerClassName Reseed flags 19
+
+class name java/security/DrbgParameters$Instantiation
+header extends java/lang/Object implements java/security/SecureRandomParameters nestHost java/security/DrbgParameters flags 31
+innerclass innerClass java/security/DrbgParameters$Instantiation outerClass java/security/DrbgParameters innerClassName Instantiation flags 19
+innerclass innerClass java/security/DrbgParameters$Capability outerClass java/security/DrbgParameters innerClassName Capability flags 4019
+
+class name java/security/KeyStore
+header extends java/lang/Object nestMembers java/security/KeyStore$Builder,java/security/KeyStore$TrustedCertificateEntry,java/security/KeyStore$SecretKeyEntry,java/security/KeyStore$PrivateKeyEntry,java/security/KeyStore$Entry,java/security/KeyStore$Entry$Attribute,java/security/KeyStore$CallbackHandlerProtection,java/security/KeyStore$PasswordProtection,java/security/KeyStore$ProtectionParameter,java/security/KeyStore$LoadStoreParameter flags 21
+innerclass innerClass java/security/KeyStore$LoadStoreParameter outerClass java/security/KeyStore innerClassName LoadStoreParameter flags 609
+innerclass innerClass java/security/KeyStore$ProtectionParameter outerClass java/security/KeyStore innerClassName ProtectionParameter flags 609
+innerclass innerClass java/security/KeyStore$Entry outerClass java/security/KeyStore innerClassName Entry flags 609
+innerclass innerClass java/security/KeyStore$Builder outerClass java/security/KeyStore innerClassName Builder flags 409
+innerclass innerClass java/security/KeyStore$TrustedCertificateEntry outerClass java/security/KeyStore innerClassName TrustedCertificateEntry flags 19
+innerclass innerClass java/security/KeyStore$SecretKeyEntry outerClass java/security/KeyStore innerClassName SecretKeyEntry flags 19
+innerclass innerClass java/security/KeyStore$PrivateKeyEntry outerClass java/security/KeyStore innerClassName PrivateKeyEntry flags 19
+innerclass innerClass java/security/KeyStore$CallbackHandlerProtection outerClass java/security/KeyStore innerClassName CallbackHandlerProtection flags 9
+innerclass innerClass java/security/KeyStore$PasswordProtection outerClass java/security/KeyStore innerClassName PasswordProtection flags 9
+innerclass innerClass java/security/KeyStore$Entry$Attribute outerClass java/security/KeyStore$Entry innerClassName Attribute flags 609
+
+class name java/security/KeyStore$LoadStoreParameter
+header extends java/lang/Object nestHost java/security/KeyStore flags 601
+innerclass innerClass java/security/KeyStore$LoadStoreParameter outerClass java/security/KeyStore innerClassName LoadStoreParameter flags 609
+innerclass innerClass java/security/KeyStore$ProtectionParameter outerClass java/security/KeyStore innerClassName ProtectionParameter flags 609
+
+class name java/security/KeyStore$PrivateKeyEntry
+header extends java/lang/Object implements java/security/KeyStore$Entry nestHost java/security/KeyStore flags 31
+innerclass innerClass java/security/KeyStore$PrivateKeyEntry outerClass java/security/KeyStore innerClassName PrivateKeyEntry flags 19
+innerclass innerClass java/security/KeyStore$Entry outerClass java/security/KeyStore innerClassName Entry flags 609
+innerclass innerClass java/security/KeyStore$Entry$Attribute outerClass java/security/KeyStore$Entry innerClassName Attribute flags 609
+
+class name java/security/KeyStore$SecretKeyEntry
+header extends java/lang/Object implements java/security/KeyStore$Entry nestHost java/security/KeyStore flags 31
+innerclass innerClass java/security/KeyStore$SecretKeyEntry outerClass java/security/KeyStore innerClassName SecretKeyEntry flags 19
+innerclass innerClass java/security/KeyStore$Entry outerClass java/security/KeyStore innerClassName Entry flags 609
+innerclass innerClass java/security/KeyStore$Entry$Attribute outerClass java/security/KeyStore$Entry innerClassName Attribute flags 609
+
+class name java/security/KeyStore$TrustedCertificateEntry
+header extends java/lang/Object implements java/security/KeyStore$Entry nestHost java/security/KeyStore flags 31
+innerclass innerClass java/security/KeyStore$TrustedCertificateEntry outerClass java/security/KeyStore innerClassName TrustedCertificateEntry flags 19
+innerclass innerClass java/security/KeyStore$Entry outerClass java/security/KeyStore innerClassName Entry flags 609
+innerclass innerClass java/security/KeyStore$Entry$Attribute outerClass java/security/KeyStore$Entry innerClassName Attribute flags 609
+
+class name java/security/KeyStoreSpi
+header extends java/lang/Object flags 421
+innerclass innerClass java/security/KeyStore$LoadStoreParameter outerClass java/security/KeyStore innerClassName LoadStoreParameter flags 609
+innerclass innerClass java/security/KeyStore$ProtectionParameter outerClass java/security/KeyStore innerClassName ProtectionParameter flags 609
+innerclass innerClass java/security/KeyStore$PasswordProtection outerClass java/security/KeyStore innerClassName PasswordProtection flags 9
+innerclass innerClass java/security/KeyStore$CallbackHandlerProtection outerClass java/security/KeyStore innerClassName CallbackHandlerProtection flags 9
+innerclass innerClass java/security/KeyStore$TrustedCertificateEntry outerClass java/security/KeyStore innerClassName TrustedCertificateEntry flags 19
+innerclass innerClass java/security/KeyStore$PrivateKeyEntry outerClass java/security/KeyStore innerClassName PrivateKeyEntry flags 19
+innerclass innerClass java/security/KeyStore$SecretKeyEntry outerClass java/security/KeyStore innerClassName SecretKeyEntry flags 19
+innerclass innerClass java/security/KeyStore$Entry outerClass java/security/KeyStore innerClassName Entry flags 609
+
+class name java/security/Permissions
+header extends java/security/PermissionCollection implements java/io/Serializable flags 31
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+
+class name java/security/PrivilegedAction
+header extends java/lang/Object flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object; runtimeAnnotations @Ljava/lang/FunctionalInterface;
+
+class name java/security/PrivilegedExceptionAction
+header extends java/lang/Object flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object; runtimeAnnotations @Ljava/lang/FunctionalInterface;
+
+class name java/security/Provider
+header extends java/util/Properties nestMembers java/security/Provider$Service flags 421
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/security/Provider$Service outerClass java/security/Provider innerClassName Service flags 9
+
+class name java/security/cert/PKIXRevocationChecker
+header extends java/security/cert/PKIXCertPathChecker nestMembers java/security/cert/PKIXRevocationChecker$Option flags 421
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/security/cert/PKIXRevocationChecker$Option outerClass java/security/cert/PKIXRevocationChecker innerClassName Option flags 4019
+
+class name java/text/AttributedString
+header extends java/lang/Object flags 21
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/text/AttributedCharacterIterator$Attribute outerClass java/text/AttributedCharacterIterator innerClassName Attribute flags 9
+
+class name java/text/CompactNumberFormat
+header extends java/text/NumberFormat flags 31
+innerclass innerClass java/text/NumberFormat$Field outerClass java/text/NumberFormat innerClassName Field flags 9
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+
+class name java/text/DateFormat
+header extends java/text/Format nestMembers java/text/DateFormat$Field flags 421
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/text/DateFormat$Field outerClass java/text/DateFormat innerClassName Field flags 9
+
+class name java/text/DecimalFormat
+header extends java/text/NumberFormat flags 21
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/text/NumberFormat$Field outerClass java/text/NumberFormat innerClassName Field flags 9
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+
+class name java/text/DecimalFormatSymbols
+header extends java/lang/Object implements java/lang/Cloneable,java/io/Serializable flags 21
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/text/Format
+header extends java/lang/Object implements java/io/Serializable,java/lang/Cloneable nestMembers java/text/Format$Field flags 421
+innerclass innerClass java/text/AttributedCharacterIterator$Attribute outerClass java/text/AttributedCharacterIterator innerClassName Attribute flags 9
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+
+class name java/text/Format$Field
+header extends java/text/AttributedCharacterIterator$Attribute nestHost java/text/Format flags 21
+innerclass innerClass java/text/AttributedCharacterIterator$Attribute outerClass java/text/AttributedCharacterIterator innerClassName Attribute flags 9
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+
+class name java/text/MessageFormat
+header extends java/text/Format nestMembers java/text/MessageFormat$Field flags 21
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/text/MessageFormat$Field outerClass java/text/MessageFormat innerClassName Field flags 9
+innerclass innerClass java/text/AttributedCharacterIterator$Attribute outerClass java/text/AttributedCharacterIterator innerClassName Attribute flags 9
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+
+class name java/text/MessageFormat$Field
+header extends java/text/Format$Field nestHost java/text/MessageFormat flags 21
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+innerclass innerClass java/text/MessageFormat$Field outerClass java/text/MessageFormat innerClassName Field flags 9
+
+class name java/text/NumberFormat
+header extends java/text/Format nestMembers java/text/NumberFormat$Style,java/text/NumberFormat$Field flags 421
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/text/NumberFormat$Style outerClass java/text/NumberFormat innerClassName Style flags 4019
+innerclass innerClass java/text/NumberFormat$Field outerClass java/text/NumberFormat innerClassName Field flags 9
+
+class name java/text/NumberFormat$Field
+header extends java/text/Format$Field nestHost java/text/NumberFormat flags 21
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+innerclass innerClass java/text/NumberFormat$Field outerClass java/text/NumberFormat innerClassName Field flags 9
+
+class name java/text/SimpleDateFormat
+header extends java/text/DateFormat flags 21
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/text/DateFormat$Field outerClass java/text/DateFormat innerClassName Field flags 9
+innerclass innerClass java/text/Format$Field outerClass java/text/Format innerClassName Field flags 9
+
+class name java/time/chrono/JapaneseEra
+field name REIWA descriptor Ljava/time/chrono/JapaneseEra; flags 19
+
+class name java/util/AbstractMap
+header extends java/lang/Object implements java/util/Map nestMembers java/util/AbstractMap$SimpleImmutableEntry,java/util/AbstractMap$SimpleEntry flags 421 signature <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/Map<TK;TV;>;
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/util/AbstractMap$SimpleImmutableEntry outerClass java/util/AbstractMap innerClassName SimpleImmutableEntry flags 9
+innerclass innerClass java/util/AbstractMap$SimpleEntry outerClass java/util/AbstractMap innerClassName SimpleEntry flags 9
+
+class name java/util/Base64
+header extends java/lang/Object nestMembers java/util/Base64$Decoder,java/util/Base64$Encoder flags 21
+innerclass innerClass java/util/Base64$Encoder outerClass java/util/Base64 innerClassName Encoder flags 9
+innerclass innerClass java/util/Base64$Decoder outerClass java/util/Base64 innerClassName Decoder flags 9
+
+class name java/util/Calendar
+header extends java/lang/Object implements java/io/Serializable,java/lang/Cloneable,java/lang/Comparable nestMembers java/util/Calendar$Builder flags 421 signature Ljava/lang/Object;Ljava/io/Serializable;Ljava/lang/Cloneable;Ljava/lang/Comparable<Ljava/util/Calendar;>;
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/util/Calendar$Builder outerClass java/util/Calendar innerClassName Builder flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/util/Formatter
+header extends java/lang/Object implements java/io/Closeable,java/io/Flushable nestMembers java/util/Formatter$BigDecimalLayoutForm flags 31
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/util/Formatter$BigDecimalLayoutForm outerClass java/util/Formatter innerClassName BigDecimalLayoutForm flags 4019
+
+class name java/util/Locale
+header extends java/lang/Object implements java/lang/Cloneable,java/io/Serializable nestMembers java/util/Locale$LanguageRange,java/util/Locale$FilteringMode,java/util/Locale$Builder,java/util/Locale$Category,java/util/Locale$IsoCountryCode flags 31
+innerclass innerClass java/util/Locale$Category outerClass java/util/Locale innerClassName Category flags 4019
+innerclass innerClass java/util/Locale$IsoCountryCode outerClass java/util/Locale innerClassName IsoCountryCode flags 4409
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/util/Locale$FilteringMode outerClass java/util/Locale innerClassName FilteringMode flags 4019
+innerclass innerClass java/util/Locale$LanguageRange outerClass java/util/Locale innerClassName LanguageRange flags 19
+innerclass innerClass java/util/Locale$Builder outerClass java/util/Locale innerClassName Builder flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/util/Random
+header extends java/lang/Object implements java/io/Serializable flags 21
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/util/Spliterator$OfLong outerClass java/util/Spliterator innerClassName OfLong flags 609
+innerclass innerClass java/util/Spliterator$OfDouble outerClass java/util/Spliterator innerClassName OfDouble flags 609
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+
+class name java/util/Spliterators
+header extends java/lang/Object nestMembers java/util/Spliterators$AbstractDoubleSpliterator,java/util/Spliterators$AbstractLongSpliterator,java/util/Spliterators$AbstractIntSpliterator,java/util/Spliterators$AbstractSpliterator flags 31
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/util/Spliterator$OfLong outerClass java/util/Spliterator innerClassName OfLong flags 609
+innerclass innerClass java/util/Spliterator$OfDouble outerClass java/util/Spliterator innerClassName OfDouble flags 609
+innerclass innerClass java/util/PrimitiveIterator$OfInt outerClass java/util/PrimitiveIterator innerClassName OfInt flags 609
+innerclass innerClass java/util/PrimitiveIterator$OfLong outerClass java/util/PrimitiveIterator innerClassName OfLong flags 609
+innerclass innerClass java/util/PrimitiveIterator$OfDouble outerClass java/util/PrimitiveIterator innerClassName OfDouble flags 609
+innerclass innerClass java/util/Spliterators$AbstractDoubleSpliterator outerClass java/util/Spliterators innerClassName AbstractDoubleSpliterator flags 409
+innerclass innerClass java/util/Spliterators$AbstractLongSpliterator outerClass java/util/Spliterators innerClassName AbstractLongSpliterator flags 409
+innerclass innerClass java/util/Spliterators$AbstractIntSpliterator outerClass java/util/Spliterators innerClassName AbstractIntSpliterator flags 409
+innerclass innerClass java/util/Spliterators$AbstractSpliterator outerClass java/util/Spliterators innerClassName AbstractSpliterator flags 409
+
+class name java/util/Spliterators$AbstractDoubleSpliterator
+header extends java/lang/Object implements java/util/Spliterator$OfDouble nestHost java/util/Spliterators flags 421
+innerclass innerClass java/util/Spliterators$AbstractSpliterator outerClass java/util/Spliterators innerClassName AbstractSpliterator flags 409
+innerclass innerClass java/util/Spliterators$AbstractDoubleSpliterator outerClass java/util/Spliterators innerClassName AbstractDoubleSpliterator flags 409
+innerclass innerClass java/util/Spliterator$OfDouble outerClass java/util/Spliterator innerClassName OfDouble flags 609
+innerclass innerClass java/util/Spliterator$OfPrimitive outerClass java/util/Spliterator innerClassName OfPrimitive flags 609
+
+class name java/util/Spliterators$AbstractIntSpliterator
+header extends java/lang/Object implements java/util/Spliterator$OfInt nestHost java/util/Spliterators flags 421
+innerclass innerClass java/util/Spliterators$AbstractSpliterator outerClass java/util/Spliterators innerClassName AbstractSpliterator flags 409
+innerclass innerClass java/util/Spliterators$AbstractIntSpliterator outerClass java/util/Spliterators innerClassName AbstractIntSpliterator flags 409
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/util/Spliterator$OfPrimitive outerClass java/util/Spliterator innerClassName OfPrimitive flags 609
+
+class name java/util/Spliterators$AbstractLongSpliterator
+header extends java/lang/Object implements java/util/Spliterator$OfLong nestHost java/util/Spliterators flags 421
+innerclass innerClass java/util/Spliterators$AbstractSpliterator outerClass java/util/Spliterators innerClassName AbstractSpliterator flags 409
+innerclass innerClass java/util/Spliterators$AbstractLongSpliterator outerClass java/util/Spliterators innerClassName AbstractLongSpliterator flags 409
+innerclass innerClass java/util/Spliterator$OfLong outerClass java/util/Spliterator innerClassName OfLong flags 609
+innerclass innerClass java/util/Spliterator$OfPrimitive outerClass java/util/Spliterator innerClassName OfPrimitive flags 609
+
+class name java/util/concurrent/CompletableFuture
+header extends java/lang/Object implements java/util/concurrent/Future,java/util/concurrent/CompletionStage nestMembers java/util/concurrent/CompletableFuture$AsynchronousCompletionTask flags 21 signature <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/concurrent/Future<TT;>;Ljava/util/concurrent/CompletionStage<TT;>;
+innerclass innerClass java/util/concurrent/ForkJoinPool$ManagedBlocker outerClass java/util/concurrent/ForkJoinPool innerClassName ManagedBlocker flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+innerclass innerClass java/util/concurrent/CompletableFuture$AsynchronousCompletionTask outerClass java/util/concurrent/CompletableFuture innerClassName AsynchronousCompletionTask flags 609
+
+class name java/util/concurrent/ConcurrentHashMap
+header extends java/util/AbstractMap implements java/util/concurrent/ConcurrentMap,java/io/Serializable nestMembers java/util/concurrent/ConcurrentHashMap$KeySetView,java/util/concurrent/ConcurrentHashMap$CollectionView flags 21 signature <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/AbstractMap<TK;TV;>;Ljava/util/concurrent/ConcurrentMap<TK;TV;>;Ljava/io/Serializable;
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/util/concurrent/ConcurrentHashMap$KeySetView outerClass java/util/concurrent/ConcurrentHashMap innerClassName KeySetView flags 9
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/util/AbstractMap$SimpleImmutableEntry outerClass java/util/AbstractMap innerClassName SimpleImmutableEntry flags 9
+innerclass innerClass java/util/concurrent/ConcurrentHashMap$CollectionView outerClass java/util/concurrent/ConcurrentHashMap innerClassName CollectionView flags 408
+
+class name java/util/concurrent/ConcurrentHashMap$KeySetView
+header extends java/util/concurrent/ConcurrentHashMap$CollectionView implements java/util/Set,java/io/Serializable nestHost java/util/concurrent/ConcurrentHashMap flags 21 signature <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/concurrent/ConcurrentHashMap$CollectionView<TK;TV;TK;>;Ljava/util/Set<TK;>;Ljava/io/Serializable;
+innerclass innerClass java/util/concurrent/ConcurrentHashMap$CollectionView outerClass java/util/concurrent/ConcurrentHashMap innerClassName CollectionView flags 408
+innerclass innerClass java/util/concurrent/ConcurrentHashMap$KeySetView outerClass java/util/concurrent/ConcurrentHashMap innerClassName KeySetView flags 9
+
+class name java/util/concurrent/Flow$Processor
+header extends java/lang/Object implements java/util/concurrent/Flow$Subscriber,java/util/concurrent/Flow$Publisher nestHost java/util/concurrent/Flow flags 601 signature <T:Ljava/lang/Object;R:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/concurrent/Flow$Subscriber<TT;>;Ljava/util/concurrent/Flow$Publisher<TR;>;
+innerclass innerClass java/util/concurrent/Flow$Processor outerClass java/util/concurrent/Flow innerClassName Processor flags 609
+innerclass innerClass java/util/concurrent/Flow$Subscriber outerClass java/util/concurrent/Flow innerClassName Subscriber flags 609
+innerclass innerClass java/util/concurrent/Flow$Publisher outerClass java/util/concurrent/Flow innerClassName Publisher flags 609
+
+class name java/util/concurrent/Flow$Publisher
+header extends java/lang/Object nestHost java/util/concurrent/Flow flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object; runtimeAnnotations @Ljava/lang/FunctionalInterface;
+innerclass innerClass java/util/concurrent/Flow$Publisher outerClass java/util/concurrent/Flow innerClassName Publisher flags 609
+innerclass innerClass java/util/concurrent/Flow$Subscriber outerClass java/util/concurrent/Flow innerClassName Subscriber flags 609
+
+class name java/util/concurrent/Flow$Subscriber
+header extends java/lang/Object nestHost java/util/concurrent/Flow flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object;
+innerclass innerClass java/util/concurrent/Flow$Subscriber outerClass java/util/concurrent/Flow innerClassName Subscriber flags 609
+innerclass innerClass java/util/concurrent/Flow$Subscription outerClass java/util/concurrent/Flow innerClassName Subscription flags 609
+
+class name java/util/concurrent/ForkJoinPool
+header extends java/util/concurrent/AbstractExecutorService nestMembers java/util/concurrent/ForkJoinPool$ManagedBlocker,java/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory flags 21
+innerclass innerClass java/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory outerClass java/util/concurrent/ForkJoinPool innerClassName ForkJoinWorkerThreadFactory flags 609
+innerclass innerClass java/lang/Thread$UncaughtExceptionHandler outerClass java/lang/Thread innerClassName UncaughtExceptionHandler flags 609
+innerclass innerClass java/lang/Thread$State outerClass java/lang/Thread innerClassName State flags 4019
+innerclass innerClass java/util/concurrent/ForkJoinPool$ManagedBlocker outerClass java/util/concurrent/ForkJoinPool innerClassName ManagedBlocker flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/util/concurrent/Phaser
+header extends java/lang/Object flags 21
+innerclass innerClass java/util/concurrent/ForkJoinPool$ManagedBlocker outerClass java/util/concurrent/ForkJoinPool innerClassName ManagedBlocker flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/util/concurrent/ThreadLocalRandom
+header extends java/util/Random flags 21
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/util/Spliterator$OfLong outerClass java/util/Spliterator innerClassName OfLong flags 609
+innerclass innerClass java/util/Spliterator$OfDouble outerClass java/util/Spliterator innerClassName OfDouble flags 609
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+
+class name java/util/concurrent/ThreadPoolExecutor
+header extends java/util/concurrent/AbstractExecutorService nestMembers java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy,java/util/concurrent/ThreadPoolExecutor$DiscardPolicy,java/util/concurrent/ThreadPoolExecutor$AbortPolicy,java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy flags 21
+innerclass innerClass java/lang/Thread$State outerClass java/lang/Thread innerClassName State flags 4019
+innerclass innerClass java/util/concurrent/ThreadPoolExecutor$AbortPolicy outerClass java/util/concurrent/ThreadPoolExecutor innerClassName AbortPolicy flags 9
+innerclass innerClass java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy outerClass java/util/concurrent/ThreadPoolExecutor innerClassName DiscardOldestPolicy flags 9
+innerclass innerClass java/util/concurrent/ThreadPoolExecutor$DiscardPolicy outerClass java/util/concurrent/ThreadPoolExecutor innerClassName DiscardPolicy flags 9
+innerclass innerClass java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy outerClass java/util/concurrent/ThreadPoolExecutor innerClassName CallerRunsPolicy flags 9
+
+class name java/util/concurrent/locks/ReentrantReadWriteLock
+header extends java/lang/Object implements java/util/concurrent/locks/ReadWriteLock,java/io/Serializable nestMembers java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock,java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock flags 21
+innerclass innerClass java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock outerClass java/util/concurrent/locks/ReentrantReadWriteLock innerClassName ReadLock flags 9
+innerclass innerClass java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock outerClass java/util/concurrent/locks/ReentrantReadWriteLock innerClassName WriteLock flags 9
+innerclass innerClass java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject outerClass java/util/concurrent/locks/AbstractQueuedSynchronizer innerClassName ConditionObject flags 1
+
+class name java/util/jar/Pack200
+header extends java/lang/Object nestMembers java/util/jar/Pack200$Unpacker,java/util/jar/Pack200$Packer flags 421 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="11")
+innerclass innerClass java/util/jar/Pack200$Packer outerClass java/util/jar/Pack200 innerClassName Packer flags 609
+innerclass innerClass java/util/jar/Pack200$Unpacker outerClass java/util/jar/Pack200 innerClassName Unpacker flags 609
+
+class name java/util/stream/DoubleStream
+header extends java/lang/Object implements java/util/stream/BaseStream nestMembers java/util/stream/DoubleStream$Builder flags 601 signature Ljava/lang/Object;Ljava/util/stream/BaseStream<Ljava/lang/Double;Ljava/util/stream/DoubleStream;>;
+innerclass innerClass java/util/Spliterator$OfDouble outerClass java/util/Spliterator innerClassName OfDouble flags 609
+innerclass innerClass java/util/PrimitiveIterator$OfDouble outerClass java/util/PrimitiveIterator innerClassName OfDouble flags 609
+innerclass innerClass java/util/stream/DoubleStream$Builder outerClass java/util/stream/DoubleStream innerClassName Builder flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/util/stream/IntStream
+header extends java/lang/Object implements java/util/stream/BaseStream nestMembers java/util/stream/IntStream$Builder flags 601 signature Ljava/lang/Object;Ljava/util/stream/BaseStream<Ljava/lang/Integer;Ljava/util/stream/IntStream;>;
+innerclass innerClass java/util/Spliterator$OfInt outerClass java/util/Spliterator innerClassName OfInt flags 609
+innerclass innerClass java/util/PrimitiveIterator$OfInt outerClass java/util/PrimitiveIterator innerClassName OfInt flags 609
+innerclass innerClass java/util/stream/IntStream$Builder outerClass java/util/stream/IntStream innerClassName Builder flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/util/stream/LongStream
+header extends java/lang/Object implements java/util/stream/BaseStream nestMembers java/util/stream/LongStream$Builder flags 601 signature Ljava/lang/Object;Ljava/util/stream/BaseStream<Ljava/lang/Long;Ljava/util/stream/LongStream;>;
+innerclass innerClass java/util/Spliterator$OfLong outerClass java/util/Spliterator innerClassName OfLong flags 609
+innerclass innerClass java/util/PrimitiveIterator$OfLong outerClass java/util/PrimitiveIterator innerClassName OfLong flags 609
+innerclass innerClass java/util/stream/LongStream$Builder outerClass java/util/stream/LongStream innerClassName Builder flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/net/ssl/HandshakeCompletedEvent
+-method name getPeerCertificateChain descriptor ()[Ljavax/security/cert/X509Certificate;
+method name getPeerCertificateChain descriptor ()[Ljavax/security/cert/X509Certificate; thrownTypes javax/net/ssl/SSLPeerUnverifiedException flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/net/ssl/SSLContext
+header extends java/lang/Object flags 21
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+-method name getDefault descriptor ()Ljavax/net/ssl/SSLContext;
+-method name setDefault descriptor (Ljavax/net/ssl/SSLContext;)V
+method name getDefault descriptor ()Ljavax/net/ssl/SSLContext; thrownTypes java/security/NoSuchAlgorithmException flags 9
+method name setDefault descriptor (Ljavax/net/ssl/SSLContext;)V flags 9
+
+class name javax/net/ssl/SSLEngineResult
+header extends java/lang/Object nestMembers javax/net/ssl/SSLEngineResult$HandshakeStatus,javax/net/ssl/SSLEngineResult$Status flags 21
+innerclass innerClass javax/net/ssl/SSLEngineResult$Status outerClass javax/net/ssl/SSLEngineResult innerClassName Status flags 4019
+innerclass innerClass javax/net/ssl/SSLEngineResult$HandshakeStatus outerClass javax/net/ssl/SSLEngineResult innerClassName HandshakeStatus flags 4019
+
+class name javax/net/ssl/SSLServerSocketFactory
+-method name getDefault descriptor ()Ljavax/net/ServerSocketFactory;
+method name getDefault descriptor ()Ljavax/net/ServerSocketFactory; flags 9
+
+class name javax/net/ssl/SSLSession
+-method name getPeerCertificateChain descriptor ()[Ljavax/security/cert/X509Certificate;
+method name getPeerCertificateChain descriptor ()[Ljavax/security/cert/X509Certificate; thrownTypes javax/net/ssl/SSLPeerUnverifiedException flags 401 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/net/ssl/SSLSocketFactory
+-method name getDefault descriptor ()Ljavax/net/SocketFactory;
+method name getDefault descriptor ()Ljavax/net/SocketFactory; flags 9
+
+class name javax/security/cert/Certificate
+header extends java/lang/Object flags 421 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/security/cert/CertificateEncodingException
+header extends javax/security/cert/CertificateException flags 21 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/security/cert/CertificateException
+header extends java/lang/Exception flags 21 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/security/cert/CertificateExpiredException
+header extends javax/security/cert/CertificateException flags 21 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/security/cert/CertificateNotYetValidException
+header extends javax/security/cert/CertificateException flags 21 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/security/cert/CertificateParsingException
+header extends javax/security/cert/CertificateException flags 21 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
+class name javax/security/cert/X509Certificate
+header extends javax/security/cert/Certificate flags 421 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;(forRemoval=Ztrue,since="9")
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.compiler-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,107 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name javax/annotation/processing/ProcessingEnvironment
+method name isPreviewEnabled descriptor ()Z flags 1
+
+class name javax/lang/model/SourceVersion
+header extends java/lang/Enum flags 4031 signature Ljava/lang/Enum<Ljavax/lang/model/SourceVersion;>;
+innerclass innerClass java/lang/Runtime$Version outerClass java/lang/Runtime innerClassName Version flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+field name RELEASE_13 descriptor Ljavax/lang/model/SourceVersion; flags 4019
+
+class name javax/lang/model/element/ExecutableElement
+method name asType descriptor ()Ljavax/lang/model/type/TypeMirror; flags 401
+
+class name javax/lang/model/element/ModuleElement
+method name asType descriptor ()Ljavax/lang/model/type/TypeMirror; flags 401
+
+class name javax/lang/model/element/ModuleElement$Directive
+header extends java/lang/Object nestHost javax/lang/model/element/ModuleElement flags 601
+innerclass innerClass javax/lang/model/element/ModuleElement$Directive outerClass javax/lang/model/element/ModuleElement innerClassName Directive flags 609
+innerclass innerClass javax/lang/model/element/ModuleElement$DirectiveKind outerClass javax/lang/model/element/ModuleElement innerClassName DirectiveKind flags 4019
+innerclass innerClass javax/lang/model/element/ModuleElement$DirectiveVisitor outerClass javax/lang/model/element/ModuleElement innerClassName DirectiveVisitor flags 609
+
+class name javax/lang/model/element/PackageElement
+method name asType descriptor ()Ljavax/lang/model/type/TypeMirror; flags 401
+
+class name javax/lang/model/element/TypeElement
+method name asType descriptor ()Ljavax/lang/model/type/TypeMirror; flags 401
+
+class name javax/lang/model/element/TypeParameterElement
+method name asType descriptor ()Ljavax/lang/model/type/TypeMirror; flags 401
+
+class name javax/lang/model/element/VariableElement
+method name asType descriptor ()Ljavax/lang/model/type/TypeMirror; flags 401
+
+class name javax/lang/model/util/AbstractAnnotationValueVisitor9
+header extends javax/lang/model/util/AbstractAnnotationValueVisitor8 flags 421 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/AbstractAnnotationValueVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/AbstractElementVisitor9
+header extends javax/lang/model/util/AbstractElementVisitor8 flags 421 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/AbstractElementVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/AbstractTypeVisitor9
+header extends javax/lang/model/util/AbstractTypeVisitor8 flags 421 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/AbstractTypeVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/ElementFilter
+header extends java/lang/Object flags 21
+innerclass innerClass javax/lang/model/element/ModuleElement$DirectiveKind outerClass javax/lang/model/element/ModuleElement innerClassName DirectiveKind flags 4019
+innerclass innerClass javax/lang/model/element/ModuleElement$ExportsDirective outerClass javax/lang/model/element/ModuleElement innerClassName ExportsDirective flags 609
+innerclass innerClass javax/lang/model/element/ModuleElement$OpensDirective outerClass javax/lang/model/element/ModuleElement innerClassName OpensDirective flags 609
+innerclass innerClass javax/lang/model/element/ModuleElement$ProvidesDirective outerClass javax/lang/model/element/ModuleElement innerClassName ProvidesDirective flags 609
+innerclass innerClass javax/lang/model/element/ModuleElement$RequiresDirective outerClass javax/lang/model/element/ModuleElement innerClassName RequiresDirective flags 609
+innerclass innerClass javax/lang/model/element/ModuleElement$UsesDirective outerClass javax/lang/model/element/ModuleElement innerClassName UsesDirective flags 609
+innerclass innerClass javax/lang/model/element/ModuleElement$Directive outerClass javax/lang/model/element/ModuleElement innerClassName Directive flags 609
+
+class name javax/lang/model/util/ElementKindVisitor9
+header extends javax/lang/model/util/ElementKindVisitor8 flags 21 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/ElementKindVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/ElementScanner9
+header extends javax/lang/model/util/ElementScanner8 flags 21 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/ElementScanner8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/SimpleAnnotationValueVisitor9
+header extends javax/lang/model/util/SimpleAnnotationValueVisitor8 flags 21 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/SimpleAnnotationValueVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/SimpleElementVisitor9
+header extends javax/lang/model/util/SimpleElementVisitor8 flags 21 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/SimpleElementVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/SimpleTypeVisitor9
+header extends javax/lang/model/util/SimpleTypeVisitor8 flags 21 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/SimpleTypeVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/lang/model/util/TypeKindVisitor9
+header extends javax/lang/model/util/TypeKindVisitor8 flags 21 signature <R:Ljava/lang/Object;P:Ljava/lang/Object;>Ljavax/lang/model/util/TypeKindVisitor8<TR;TP;>; runtimeAnnotations @Ljavax/annotation/processing/SupportedSourceVersion;(value=eLjavax/lang/model/SourceVersion;RELEASE_13;)
+
+class name javax/tools/StandardJavaFileManager
+header extends java/lang/Object implements javax/tools/JavaFileManager nestMembers javax/tools/StandardJavaFileManager$PathFactory flags 601
+innerclass innerClass javax/tools/JavaFileManager$Location outerClass javax/tools/JavaFileManager innerClassName Location flags 609
+innerclass innerClass javax/tools/StandardJavaFileManager$PathFactory outerClass javax/tools/StandardJavaFileManager innerClassName PathFactory flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+-method name getJavaFileObjectsFromPaths descriptor (Ljava/lang/Iterable;)Ljava/lang/Iterable;
+method name getJavaFileObjectsFromPaths descriptor (Ljava/util/Collection;)Ljava/lang/Iterable; flags 1 signature (Ljava/util/Collection<+Ljava/nio/file/Path;>;)Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;
+method name getJavaFileObjectsFromPaths descriptor (Ljava/lang/Iterable;)Ljava/lang/Iterable; flags 1 deprecated true signature (Ljava/lang/Iterable<+Ljava/nio/file/Path;>;)Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>; runtimeAnnotations @Ljava/lang/Deprecated;(since="13")
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.desktop-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,1402 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name java/awt/Component
+header extends java/lang/Object implements java/awt/image/ImageObserver,java/awt/MenuContainer,java/io/Serializable nestMembers java/awt/Component$AccessibleAWTComponent,java/awt/Component$AccessibleAWTComponent$AccessibleAWTFocusHandler,java/awt/Component$AccessibleAWTComponent$AccessibleAWTComponentHandler,java/awt/Component$BltBufferStrategy,java/awt/Component$FlipBufferStrategy,java/awt/Component$BaselineResizeBehavior flags 421
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass java/awt/BufferCapabilities$FlipContents outerClass java/awt/BufferCapabilities innerClassName FlipContents flags 19
+innerclass innerClass java/awt/Component$BltBufferStrategy outerClass java/awt/Component innerClassName BltBufferStrategy flags 4
+innerclass innerClass java/awt/Component$FlipBufferStrategy outerClass java/awt/Component innerClassName FlipBufferStrategy flags 4
+innerclass innerClass java/awt/event/FocusEvent$Cause outerClass java/awt/event/FocusEvent innerClassName Cause flags 4019
+innerclass innerClass java/awt/Component$AccessibleAWTComponent outerClass java/awt/Component innerClassName AccessibleAWTComponent flags 404
+innerclass innerClass java/awt/Component$AccessibleAWTComponent$AccessibleAWTFocusHandler outerClass java/awt/Component$AccessibleAWTComponent innerClassName AccessibleAWTFocusHandler flags 4
+innerclass innerClass java/awt/Component$AccessibleAWTComponent$AccessibleAWTComponentHandler outerClass java/awt/Component$AccessibleAWTComponent innerClassName AccessibleAWTComponentHandler flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/Component$AccessibleAWTComponent
+header extends javax/accessibility/AccessibleContext implements java/io/Serializable,javax/accessibility/AccessibleComponent nestHost java/awt/Component flags 421
+innerclass innerClass java/awt/Component$AccessibleAWTComponent outerClass java/awt/Component innerClassName AccessibleAWTComponent flags 404
+innerclass innerClass java/awt/Component$AccessibleAWTComponent$AccessibleAWTComponentHandler outerClass java/awt/Component$AccessibleAWTComponent innerClassName AccessibleAWTComponentHandler flags 4
+innerclass innerClass java/awt/Component$AccessibleAWTComponent$AccessibleAWTFocusHandler outerClass java/awt/Component$AccessibleAWTComponent innerClassName AccessibleAWTFocusHandler flags 4
+
+class name java/awt/Container
+header extends java/awt/Component nestMembers java/awt/Container$AccessibleAWTContainer,java/awt/Container$AccessibleAWTContainer$AccessibleContainerHandler flags 21
+innerclass innerClass java/awt/event/FocusEvent$Cause outerClass java/awt/event/FocusEvent innerClassName Cause flags 4019
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/awt/Container$AccessibleAWTContainer outerClass java/awt/Container innerClassName AccessibleAWTContainer flags 4
+innerclass innerClass java/awt/Container$AccessibleAWTContainer$AccessibleContainerHandler outerClass java/awt/Container$AccessibleAWTContainer innerClassName AccessibleContainerHandler flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/Container$AccessibleAWTContainer
+header extends java/awt/Component$AccessibleAWTComponent nestHost java/awt/Container flags 21
+innerclass innerClass java/awt/Container$AccessibleAWTContainer outerClass java/awt/Container innerClassName AccessibleAWTContainer flags 4
+innerclass innerClass java/awt/Component$AccessibleAWTComponent outerClass java/awt/Component innerClassName AccessibleAWTComponent flags 404
+innerclass innerClass java/awt/Container$AccessibleAWTContainer$AccessibleContainerHandler outerClass java/awt/Container$AccessibleAWTContainer innerClassName AccessibleContainerHandler flags 4
+
+class name java/awt/Dialog
+header extends java/awt/Window nestMembers java/awt/Dialog$AccessibleAWTDialog,java/awt/Dialog$ModalExclusionType,java/awt/Dialog$ModalityType flags 21
+innerclass innerClass java/awt/Dialog$ModalityType outerClass java/awt/Dialog innerClassName ModalityType flags 4019
+innerclass innerClass java/awt/Dialog$ModalExclusionType outerClass java/awt/Dialog innerClassName ModalExclusionType flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/awt/Dialog$AccessibleAWTDialog outerClass java/awt/Dialog innerClassName AccessibleAWTDialog flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/JobAttributes
+header extends java/lang/Object implements java/lang/Cloneable nestMembers java/awt/JobAttributes$SidesType,java/awt/JobAttributes$MultipleDocumentHandlingType,java/awt/JobAttributes$DialogType,java/awt/JobAttributes$DestinationType,java/awt/JobAttributes$DefaultSelectionType flags 31
+innerclass innerClass java/awt/JobAttributes$DefaultSelectionType outerClass java/awt/JobAttributes innerClassName DefaultSelectionType flags 19
+innerclass innerClass java/awt/JobAttributes$DestinationType outerClass java/awt/JobAttributes innerClassName DestinationType flags 19
+innerclass innerClass java/awt/JobAttributes$DialogType outerClass java/awt/JobAttributes innerClassName DialogType flags 19
+innerclass innerClass java/awt/JobAttributes$MultipleDocumentHandlingType outerClass java/awt/JobAttributes innerClassName MultipleDocumentHandlingType flags 19
+innerclass innerClass java/awt/JobAttributes$SidesType outerClass java/awt/JobAttributes innerClassName SidesType flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/LinearGradientPaint
+header extends java/awt/MultipleGradientPaint flags 31
+innerclass innerClass java/awt/geom/Point2D$Float outerClass java/awt/geom/Point2D innerClassName Float flags 9
+innerclass innerClass java/awt/MultipleGradientPaint$CycleMethod outerClass java/awt/MultipleGradientPaint innerClassName CycleMethod flags 4019
+innerclass innerClass java/awt/MultipleGradientPaint$ColorSpaceType outerClass java/awt/MultipleGradientPaint innerClassName ColorSpaceType flags 4019
+innerclass innerClass java/awt/geom/Point2D$Double outerClass java/awt/geom/Point2D innerClassName Double flags 9
+
+class name java/awt/List$AccessibleAWTList
+header extends java/awt/Component$AccessibleAWTComponent implements javax/accessibility/AccessibleSelection,java/awt/event/ItemListener,java/awt/event/ActionListener nestHost java/awt/List flags 21
+innerclass innerClass java/awt/List$AccessibleAWTList outerClass java/awt/List innerClassName AccessibleAWTList flags 4
+innerclass innerClass java/awt/Component$AccessibleAWTComponent outerClass java/awt/Component innerClassName AccessibleAWTComponent flags 404
+innerclass innerClass java/awt/List$AccessibleAWTList$AccessibleAWTListChild outerClass java/awt/List$AccessibleAWTList innerClassName AccessibleAWTListChild flags 4
+
+class name java/awt/PageAttributes
+header extends java/lang/Object implements java/lang/Cloneable nestMembers java/awt/PageAttributes$PrintQualityType,java/awt/PageAttributes$OriginType,java/awt/PageAttributes$OrientationRequestedType,java/awt/PageAttributes$MediaType,java/awt/PageAttributes$ColorType flags 31
+innerclass innerClass java/awt/PageAttributes$ColorType outerClass java/awt/PageAttributes innerClassName ColorType flags 19
+innerclass innerClass java/awt/PageAttributes$OriginType outerClass java/awt/PageAttributes innerClassName OriginType flags 19
+innerclass innerClass java/awt/PageAttributes$MediaType outerClass java/awt/PageAttributes innerClassName MediaType flags 19
+innerclass innerClass java/awt/PageAttributes$OrientationRequestedType outerClass java/awt/PageAttributes innerClassName OrientationRequestedType flags 19
+innerclass innerClass java/awt/PageAttributes$PrintQualityType outerClass java/awt/PageAttributes innerClassName PrintQualityType flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/RadialGradientPaint
+header extends java/awt/MultipleGradientPaint flags 31
+innerclass innerClass java/awt/MultipleGradientPaint$CycleMethod outerClass java/awt/MultipleGradientPaint innerClassName CycleMethod flags 4019
+innerclass innerClass java/awt/geom/Point2D$Float outerClass java/awt/geom/Point2D innerClassName Float flags 9
+innerclass innerClass java/awt/MultipleGradientPaint$ColorSpaceType outerClass java/awt/MultipleGradientPaint innerClassName ColorSpaceType flags 4019
+innerclass innerClass java/awt/geom/Point2D$Double outerClass java/awt/geom/Point2D innerClassName Double flags 9
+
+class name java/awt/ScrollPane
+header extends java/awt/Container implements javax/accessibility/Accessible nestMembers java/awt/ScrollPane$AccessibleAWTScrollPane flags 21
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/awt/ScrollPane$AccessibleAWTScrollPane outerClass java/awt/ScrollPane innerClassName AccessibleAWTScrollPane flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/Taskbar
+header extends java/lang/Object nestMembers java/awt/Taskbar$State,java/awt/Taskbar$Feature flags 21
+innerclass innerClass java/awt/Taskbar$Feature outerClass java/awt/Taskbar innerClassName Feature flags 4019
+innerclass innerClass java/awt/Taskbar$State outerClass java/awt/Taskbar innerClassName State flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/Window
+header extends java/awt/Container implements javax/accessibility/Accessible nestMembers java/awt/Window$AccessibleAWTWindow,java/awt/Window$Type flags 21
+innerclass innerClass java/awt/Window$Type outerClass java/awt/Window innerClassName Type flags 4019
+innerclass innerClass java/awt/Dialog$ModalExclusionType outerClass java/awt/Dialog innerClassName ModalExclusionType flags 4019
+innerclass innerClass java/awt/event/FocusEvent$Cause outerClass java/awt/event/FocusEvent innerClassName Cause flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/awt/Window$AccessibleAWTWindow outerClass java/awt/Window innerClassName AccessibleAWTWindow flags 4
+innerclass innerClass java/awt/GraphicsDevice$WindowTranslucency outerClass java/awt/GraphicsDevice innerClassName WindowTranslucency flags 4019
+innerclass innerClass java/awt/geom/Path2D$Float outerClass java/awt/geom/Path2D innerClassName Float flags 9
+innerclass innerClass java/awt/geom/Point2D$Double outerClass java/awt/geom/Point2D innerClassName Double flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/dnd/DropTarget
+header extends java/lang/Object implements java/awt/dnd/DropTargetListener,java/io/Serializable nestMembers java/awt/dnd/DropTarget$DropTargetAutoScroller flags 21
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/awt/dnd/DropTarget$DropTargetAutoScroller outerClass java/awt/dnd/DropTarget innerClassName DropTargetAutoScroller flags c
+
+class name java/awt/font/TextLayout
+header extends java/lang/Object implements java/lang/Cloneable nestMembers java/awt/font/TextLayout$CaretPolicy flags 31
+innerclass innerClass java/text/AttributedCharacterIterator$Attribute outerClass java/text/AttributedCharacterIterator innerClassName Attribute flags 9
+innerclass innerClass java/awt/geom/Rectangle2D$Float outerClass java/awt/geom/Rectangle2D innerClassName Float flags 9
+innerclass innerClass java/awt/font/TextLayout$CaretPolicy outerClass java/awt/font/TextLayout innerClassName CaretPolicy flags 9
+innerclass innerClass java/awt/geom/Point2D$Float outerClass java/awt/geom/Point2D innerClassName Float flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/geom/Arc2D
+header extends java/awt/geom/RectangularShape nestMembers java/awt/geom/Arc2D$Double,java/awt/geom/Arc2D$Float flags 421
+innerclass innerClass java/awt/geom/Point2D$Double outerClass java/awt/geom/Point2D innerClassName Double flags 9
+innerclass innerClass java/awt/geom/Rectangle2D$Double outerClass java/awt/geom/Rectangle2D innerClassName Double flags 9
+innerclass innerClass java/awt/geom/Arc2D$Double outerClass java/awt/geom/Arc2D innerClassName Double flags 9
+innerclass innerClass java/awt/geom/Arc2D$Float outerClass java/awt/geom/Arc2D innerClassName Float flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/awt/geom/Line2D
+header extends java/lang/Object implements java/awt/Shape,java/lang/Cloneable nestMembers java/awt/geom/Line2D$Double,java/awt/geom/Line2D$Float flags 421
+innerclass innerClass java/awt/geom/Rectangle2D$Double outerClass java/awt/geom/Rectangle2D innerClassName Double flags 9
+innerclass innerClass java/awt/geom/Line2D$Double outerClass java/awt/geom/Line2D innerClassName Double flags 9
+innerclass innerClass java/awt/geom/Line2D$Float outerClass java/awt/geom/Line2D innerClassName Float flags 9
+
+class name java/awt/image/AffineTransformOp
+header extends java/lang/Object implements java/awt/image/BufferedImageOp,java/awt/image/RasterOp flags 21
+innerclass innerClass java/awt/RenderingHints$Key outerClass java/awt/RenderingHints innerClassName Key flags 409
+innerclass innerClass java/awt/geom/Rectangle2D$Float outerClass java/awt/geom/Rectangle2D innerClassName Float flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/beans/beancontext/BeanContextServicesSupport
+header extends java/beans/beancontext/BeanContextSupport implements java/beans/beancontext/BeanContextServices nestMembers java/beans/beancontext/BeanContextServicesSupport$BCSSProxyServiceProvider,java/beans/beancontext/BeanContextServicesSupport$BCSSServiceProvider,java/beans/beancontext/BeanContextServicesSupport$BCSSChild flags 21
+innerclass innerClass java/beans/beancontext/BeanContextServicesSupport$BCSSChild outerClass java/beans/beancontext/BeanContextServicesSupport innerClassName BCSSChild flags 4
+innerclass innerClass java/beans/beancontext/BeanContextServicesSupport$BCSSServiceProvider outerClass java/beans/beancontext/BeanContextServicesSupport innerClassName BCSSServiceProvider flags c
+innerclass innerClass java/beans/beancontext/BeanContextServicesSupport$BCSSProxyServiceProvider outerClass java/beans/beancontext/BeanContextServicesSupport innerClassName BCSSProxyServiceProvider flags 4
+innerclass innerClass java/beans/beancontext/BeanContextSupport$BCSIterator outerClass java/beans/beancontext/BeanContextSupport innerClassName BCSIterator flags 1c
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/beans/beancontext/BeanContextSupport$BCSChild outerClass java/beans/beancontext/BeanContextSupport innerClassName BCSChild flags 4
+
+class name java/beans/beancontext/BeanContextServicesSupport$BCSSChild
+header extends java/beans/beancontext/BeanContextSupport$BCSChild nestHost java/beans/beancontext/BeanContextServicesSupport flags 21
+innerclass innerClass java/beans/beancontext/BeanContextServicesSupport$BCSSChild outerClass java/beans/beancontext/BeanContextServicesSupport innerClassName BCSSChild flags 4
+innerclass innerClass java/beans/beancontext/BeanContextSupport$BCSChild outerClass java/beans/beancontext/BeanContextSupport innerClassName BCSChild flags 4
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+
+class name java/beans/beancontext/BeanContextServicesSupport$BCSSProxyServiceProvider
+header extends java/lang/Object implements java/beans/beancontext/BeanContextServiceProvider,java/beans/beancontext/BeanContextServiceRevokedListener nestHost java/beans/beancontext/BeanContextServicesSupport flags 21
+innerclass innerClass java/beans/beancontext/BeanContextServicesSupport$BCSSProxyServiceProvider outerClass java/beans/beancontext/BeanContextServicesSupport innerClassName BCSSProxyServiceProvider flags 4
+innerclass innerClass java/beans/beancontext/BeanContextServicesSupport$BCSSChild outerClass java/beans/beancontext/BeanContextServicesSupport innerClassName BCSSChild flags 4
+innerclass innerClass java/beans/beancontext/BeanContextSupport$BCSChild outerClass java/beans/beancontext/BeanContextSupport innerClassName BCSChild flags 4
+
+class name java/beans/beancontext/BeanContextSupport
+header extends java/beans/beancontext/BeanContextChildSupport implements java/beans/beancontext/BeanContext,java/io/Serializable,java/beans/PropertyChangeListener,java/beans/VetoableChangeListener nestMembers java/beans/beancontext/BeanContextSupport$BCSChild,java/beans/beancontext/BeanContextSupport$BCSIterator flags 21
+innerclass innerClass java/beans/beancontext/BeanContextSupport$BCSIterator outerClass java/beans/beancontext/BeanContextSupport innerClassName BCSIterator flags 1c
+innerclass innerClass java/beans/beancontext/BeanContextSupport$BCSChild outerClass java/beans/beancontext/BeanContextSupport innerClassName BCSChild flags 4
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+
+class name javax/accessibility/AccessibleBundle
+header extends java/lang/Object flags 421 classAnnotations @Ljdk/Profile+Annotation;(value=I4)
+
+class name javax/print/attribute/standard/MediaSize
+header extends javax/print/attribute/Size2DSyntax implements javax/print/attribute/Attribute nestMembers javax/print/attribute/standard/MediaSize$Other,javax/print/attribute/standard/MediaSize$Engineering,javax/print/attribute/standard/MediaSize$NA,javax/print/attribute/standard/MediaSize$JIS,javax/print/attribute/standard/MediaSize$ISO flags 21
+innerclass innerClass javax/print/attribute/standard/MediaSize$ISO outerClass javax/print/attribute/standard/MediaSize innerClassName ISO flags 19
+innerclass innerClass javax/print/attribute/standard/MediaSize$JIS outerClass javax/print/attribute/standard/MediaSize innerClassName JIS flags 19
+innerclass innerClass javax/print/attribute/standard/MediaSize$NA outerClass javax/print/attribute/standard/MediaSize innerClassName NA flags 19
+innerclass innerClass javax/print/attribute/standard/MediaSize$Engineering outerClass javax/print/attribute/standard/MediaSize innerClassName Engineering flags 19
+innerclass innerClass javax/print/attribute/standard/MediaSize$Other outerClass javax/print/attribute/standard/MediaSize innerClassName Other flags 19
+
+class name javax/sound/sampled/AudioSystem
+header extends java/lang/Object flags 21
+innerclass innerClass javax/sound/sampled/Mixer$Info outerClass javax/sound/sampled/Mixer innerClassName Info flags 9
+innerclass innerClass javax/sound/sampled/Line$Info outerClass javax/sound/sampled/Line innerClassName Info flags 9
+innerclass innerClass javax/sound/sampled/AudioFormat$Encoding outerClass javax/sound/sampled/AudioFormat innerClassName Encoding flags 9
+innerclass innerClass javax/sound/sampled/DataLine$Info outerClass javax/sound/sampled/DataLine innerClassName Info flags 9
+innerclass innerClass javax/sound/sampled/AudioFileFormat$Type outerClass javax/sound/sampled/AudioFileFormat innerClassName Type flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/sound/sampled/BooleanControl
+header extends javax/sound/sampled/Control nestMembers javax/sound/sampled/BooleanControl$Type flags 421
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/BooleanControl$Type outerClass javax/sound/sampled/BooleanControl innerClassName Type flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/sound/sampled/BooleanControl$Type
+header extends javax/sound/sampled/Control$Type nestHost javax/sound/sampled/BooleanControl flags 21
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/BooleanControl$Type outerClass javax/sound/sampled/BooleanControl innerClassName Type flags 9
+
+class name javax/sound/sampled/CompoundControl
+header extends javax/sound/sampled/Control nestMembers javax/sound/sampled/CompoundControl$Type flags 421
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/CompoundControl$Type outerClass javax/sound/sampled/CompoundControl innerClassName Type flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/sound/sampled/CompoundControl$Type
+header extends javax/sound/sampled/Control$Type nestHost javax/sound/sampled/CompoundControl flags 21
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/CompoundControl$Type outerClass javax/sound/sampled/CompoundControl innerClassName Type flags 9
+
+class name javax/sound/sampled/DataLine$Info
+header extends javax/sound/sampled/Line$Info nestHost javax/sound/sampled/DataLine flags 21
+innerclass innerClass javax/sound/sampled/Line$Info outerClass javax/sound/sampled/Line innerClassName Info flags 9
+innerclass innerClass javax/sound/sampled/DataLine$Info outerClass javax/sound/sampled/DataLine innerClassName Info flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/sound/sampled/EnumControl
+header extends javax/sound/sampled/Control nestMembers javax/sound/sampled/EnumControl$Type flags 421
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/EnumControl$Type outerClass javax/sound/sampled/EnumControl innerClassName Type flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/sound/sampled/EnumControl$Type
+header extends javax/sound/sampled/Control$Type nestHost javax/sound/sampled/EnumControl flags 21
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/EnumControl$Type outerClass javax/sound/sampled/EnumControl innerClassName Type flags 9
+
+class name javax/sound/sampled/FloatControl
+header extends javax/sound/sampled/Control nestMembers javax/sound/sampled/FloatControl$Type flags 421
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/FloatControl$Type outerClass javax/sound/sampled/FloatControl innerClassName Type flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/sound/sampled/FloatControl$Type
+header extends javax/sound/sampled/Control$Type nestHost javax/sound/sampled/FloatControl flags 21
+innerclass innerClass javax/sound/sampled/Control$Type outerClass javax/sound/sampled/Control innerClassName Type flags 9
+innerclass innerClass javax/sound/sampled/FloatControl$Type outerClass javax/sound/sampled/FloatControl innerClassName Type flags 9
+
+class name javax/sound/sampled/Line$Info
+header extends java/lang/Object nestHost javax/sound/sampled/Line flags 21
+innerclass innerClass javax/sound/sampled/Line$Info outerClass javax/sound/sampled/Line innerClassName Info flags 9
+
+class name javax/sound/sampled/Port$Info
+header extends javax/sound/sampled/Line$Info nestHost javax/sound/sampled/Port flags 21
+innerclass innerClass javax/sound/sampled/Line$Info outerClass javax/sound/sampled/Line innerClassName Info flags 9
+innerclass innerClass javax/sound/sampled/Port$Info outerClass javax/sound/sampled/Port innerClassName Info flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/AbstractButton$AccessibleAbstractButton
+header extends javax/swing/JComponent$AccessibleJComponent implements javax/accessibility/AccessibleAction,javax/accessibility/AccessibleValue,javax/accessibility/AccessibleText,javax/accessibility/AccessibleExtendedComponent nestHost javax/swing/AbstractButton flags 421
+innerclass innerClass javax/swing/AbstractButton$AccessibleAbstractButton outerClass javax/swing/AbstractButton innerClassName AccessibleAbstractButton flags 404
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass java/awt/geom/Rectangle2D$Float outerClass java/awt/geom/Rectangle2D innerClassName Float flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+
+class name javax/swing/Box
+header extends javax/swing/JComponent implements javax/accessibility/Accessible nestMembers javax/swing/Box$AccessibleBox,javax/swing/Box$Filler,javax/swing/Box$Filler$AccessibleBoxFiller flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="accessibleContext")
+innerclass innerClass javax/swing/Box$Filler outerClass javax/swing/Box innerClassName Filler flags 9
+innerclass innerClass javax/swing/Box$AccessibleBox outerClass javax/swing/Box innerClassName AccessibleBox flags 4
+innerclass innerClass javax/swing/Box$Filler$AccessibleBoxFiller outerClass javax/swing/Box$Filler innerClassName AccessibleBoxFiller flags 4
+
+class name javax/swing/DefaultListCellRenderer
+header extends javax/swing/JLabel implements javax/swing/ListCellRenderer,java/io/Serializable nestMembers javax/swing/DefaultListCellRenderer$UIResource flags 21 signature Ljavax/swing/JLabel;Ljavax/swing/ListCellRenderer<Ljava/lang/Object;>;Ljava/io/Serializable;
+innerclass innerClass javax/swing/JList$DropLocation outerClass javax/swing/JList innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/DefaultListCellRenderer$UIResource outerClass javax/swing/DefaultListCellRenderer innerClassName UIResource flags 9
+
+class name javax/swing/GroupLayout
+header extends java/lang/Object implements java/awt/LayoutManager2 nestMembers javax/swing/GroupLayout$ParallelGroup,javax/swing/GroupLayout$SequentialGroup,javax/swing/GroupLayout$Group,javax/swing/GroupLayout$Spring,javax/swing/GroupLayout$Alignment flags 21
+innerclass innerClass javax/swing/GroupLayout$Alignment outerClass javax/swing/GroupLayout innerClassName Alignment flags 4019
+innerclass innerClass javax/swing/GroupLayout$ParallelGroup outerClass javax/swing/GroupLayout innerClassName ParallelGroup flags 1
+innerclass innerClass javax/swing/GroupLayout$Group outerClass javax/swing/GroupLayout innerClassName Group flags 401
+innerclass innerClass javax/swing/GroupLayout$SequentialGroup outerClass javax/swing/GroupLayout innerClassName SequentialGroup flags 1
+innerclass innerClass javax/swing/GroupLayout$Spring outerClass javax/swing/GroupLayout innerClassName Spring flags 402
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/GroupLayout$Group
+header extends javax/swing/GroupLayout$Spring nestHost javax/swing/GroupLayout flags 421
+innerclass innerClass javax/swing/GroupLayout$Group outerClass javax/swing/GroupLayout innerClassName Group flags 401
+innerclass innerClass javax/swing/GroupLayout$Spring outerClass javax/swing/GroupLayout innerClassName Spring flags 402
+
+class name javax/swing/GroupLayout$ParallelGroup
+header extends javax/swing/GroupLayout$Group nestHost javax/swing/GroupLayout flags 21
+innerclass innerClass javax/swing/GroupLayout$ParallelGroup outerClass javax/swing/GroupLayout innerClassName ParallelGroup flags 1
+innerclass innerClass javax/swing/GroupLayout$Group outerClass javax/swing/GroupLayout innerClassName Group flags 401
+innerclass innerClass javax/swing/GroupLayout$Alignment outerClass javax/swing/GroupLayout innerClassName Alignment flags 4019
+innerclass innerClass javax/swing/GroupLayout$Spring outerClass javax/swing/GroupLayout innerClassName Spring flags 402
+
+class name javax/swing/GroupLayout$SequentialGroup
+header extends javax/swing/GroupLayout$Group nestHost javax/swing/GroupLayout flags 21
+innerclass innerClass javax/swing/GroupLayout$SequentialGroup outerClass javax/swing/GroupLayout innerClassName SequentialGroup flags 1
+innerclass innerClass javax/swing/GroupLayout$Group outerClass javax/swing/GroupLayout innerClassName Group flags 401
+innerclass innerClass javax/swing/GroupLayout$Spring outerClass javax/swing/GroupLayout innerClassName Spring flags 402
+innerclass innerClass javax/swing/LayoutStyle$ComponentPlacement outerClass javax/swing/LayoutStyle innerClassName ComponentPlacement flags 4019
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+
+class name javax/swing/JCheckBoxMenuItem
+header extends javax/swing/JMenuItem implements javax/swing/SwingConstants,javax/accessibility/Accessible nestMembers javax/swing/JCheckBoxMenuItem$AccessibleJCheckBoxMenuItem flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(description="A\u005C;u0020;menu\u005C;u0020;item\u005C;u0020;which\u005C;u0020;can\u005C;u0020;be\u005C;u0020;selected\u005C;u0020;or\u005C;u0020;deselected.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JToggleButton$ToggleButtonModel outerClass javax/swing/JToggleButton innerClassName ToggleButtonModel flags 9
+innerclass innerClass javax/swing/JCheckBoxMenuItem$AccessibleJCheckBoxMenuItem outerClass javax/swing/JCheckBoxMenuItem innerClassName AccessibleJCheckBoxMenuItem flags 4
+
+class name javax/swing/JComboBox
+header extends javax/swing/JComponent implements java/awt/ItemSelectable,javax/swing/event/ListDataListener,java/awt/event/ActionListener,javax/accessibility/Accessible nestMembers javax/swing/JComboBox$AccessibleJComboBox,javax/swing/JComboBox$KeySelectionManager flags 21 signature <E:Ljava/lang/Object;>Ljavax/swing/JComponent;Ljava/awt/ItemSelectable;Ljavax/swing/event/ListDataListener;Ljava/awt/event/ActionListener;Ljavax/accessibility/Accessible; runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;combination\u005C;u0020;of\u005C;u0020;a\u005C;u0020;text\u005C;u0020;field\u005C;u0020;and\u005C;u0020;a\u005C;u0020;drop-down\u005C;u0020;list.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JComboBox$KeySelectionManager outerClass javax/swing/JComboBox innerClassName KeySelectionManager flags 609
+innerclass innerClass javax/swing/JComboBox$AccessibleJComboBox outerClass javax/swing/JComboBox innerClassName AccessibleJComboBox flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JComponent
+header extends java/awt/Container implements java/io/Serializable,javax/swing/TransferHandler$HasGetTransferHandler nestMembers javax/swing/JComponent$AccessibleJComponent,javax/swing/JComponent$AccessibleJComponent$AccessibleFocusHandler,javax/swing/JComponent$AccessibleJComponent$AccessibleContainerHandler flags 421 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UIClassID")
+innerclass innerClass java/awt/RenderingHints$Key outerClass java/awt/RenderingHints innerClassName Key flags 409
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/TransferHandler$HasGetTransferHandler outerClass javax/swing/TransferHandler innerClassName HasGetTransferHandler flags 608
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent$AccessibleFocusHandler outerClass javax/swing/JComponent$AccessibleJComponent innerClassName AccessibleFocusHandler flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent$AccessibleContainerHandler outerClass javax/swing/JComponent$AccessibleJComponent innerClassName AccessibleContainerHandler flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JComponent$AccessibleJComponent
+header extends java/awt/Container$AccessibleAWTContainer implements javax/accessibility/AccessibleExtendedComponent nestHost javax/swing/JComponent flags 421
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass java/awt/Container$AccessibleAWTContainer outerClass java/awt/Container innerClassName AccessibleAWTContainer flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent$AccessibleFocusHandler outerClass javax/swing/JComponent$AccessibleJComponent innerClassName AccessibleFocusHandler flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent$AccessibleContainerHandler outerClass javax/swing/JComponent$AccessibleJComponent innerClassName AccessibleContainerHandler flags 4
+
+class name javax/swing/JDesktopPane
+header extends javax/swing/JLayeredPane implements javax/accessibility/Accessible nestMembers javax/swing/JDesktopPane$AccessibleJDesktopPane flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI")
+innerclass innerClass javax/swing/JInternalFrame$JDesktopIcon outerClass javax/swing/JInternalFrame innerClassName JDesktopIcon flags 9
+innerclass innerClass javax/swing/JDesktopPane$AccessibleJDesktopPane outerClass javax/swing/JDesktopPane innerClassName AccessibleJDesktopPane flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JDialog
+header extends java/awt/Dialog implements javax/swing/WindowConstants,javax/accessibility/Accessible,javax/swing/RootPaneContainer,javax/swing/TransferHandler$HasGetTransferHandler nestMembers javax/swing/JDialog$AccessibleJDialog flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="JMenuBar",description="A\u005C;u0020;toplevel\u005C;u0020;window\u005C;u0020;for\u005C;u0020;creating\u005C;u0020;dialog\u005C;u0020;boxes.")@Ljavax/swing/SwingContainer;(delegate="getContentPane")
+innerclass innerClass java/awt/Dialog$ModalityType outerClass java/awt/Dialog innerClassName ModalityType flags 4019
+innerclass innerClass javax/swing/JDialog$AccessibleJDialog outerClass javax/swing/JDialog innerClassName AccessibleJDialog flags 4
+innerclass innerClass javax/swing/TransferHandler$HasGetTransferHandler outerClass javax/swing/TransferHandler innerClassName HasGetTransferHandler flags 608
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JEditorPane
+header extends javax/swing/text/JTextComponent nestMembers javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport,javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport$HTMLLink,javax/swing/JEditorPane$AccessibleJEditorPaneHTML,javax/swing/JEditorPane$AccessibleJEditorPane flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UIClassID",description="A\u005C;u0020;text\u005C;u0020;component\u005C;u0020;to\u005C;u0020;edit\u005C;u0020;various\u005C;u0020;types\u005C;u0020;of\u005C;u0020;content.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTMLDocument$Iterator outerClass javax/swing/text/html/HTMLDocument innerClassName Iterator flags 409
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/JEditorPane$AccessibleJEditorPaneHTML outerClass javax/swing/JEditorPane innerClassName AccessibleJEditorPaneHTML flags 4
+innerclass innerClass javax/swing/JEditorPane$AccessibleJEditorPane outerClass javax/swing/JEditorPane innerClassName AccessibleJEditorPane flags 4
+innerclass innerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport outerClass javax/swing/JEditorPane innerClassName JEditorPaneAccessibleHypertextSupport flags 4
+innerclass innerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport$HTMLLink outerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport innerClassName HTMLLink flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JEditorPane$AccessibleJEditorPaneHTML
+header extends javax/swing/JEditorPane$AccessibleJEditorPane nestHost javax/swing/JEditorPane flags 21
+innerclass innerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport outerClass javax/swing/JEditorPane innerClassName JEditorPaneAccessibleHypertextSupport flags 4
+innerclass innerClass javax/swing/JEditorPane$AccessibleJEditorPaneHTML outerClass javax/swing/JEditorPane innerClassName AccessibleJEditorPaneHTML flags 4
+innerclass innerClass javax/swing/JEditorPane$AccessibleJEditorPane outerClass javax/swing/JEditorPane innerClassName AccessibleJEditorPane flags 4
+
+class name javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport
+header extends javax/swing/JEditorPane$AccessibleJEditorPane implements javax/accessibility/AccessibleHypertext nestHost javax/swing/JEditorPane flags 21
+innerclass innerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport outerClass javax/swing/JEditorPane innerClassName JEditorPaneAccessibleHypertextSupport flags 4
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport$HTMLLink outerClass javax/swing/JEditorPane$JEditorPaneAccessibleHypertextSupport innerClassName HTMLLink flags 1
+innerclass innerClass javax/swing/JEditorPane$AccessibleJEditorPane outerClass javax/swing/JEditorPane innerClassName AccessibleJEditorPane flags 4
+
+class name javax/swing/JFileChooser
+header extends javax/swing/JComponent implements javax/accessibility/Accessible nestMembers javax/swing/JFileChooser$AccessibleJFileChooser flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;which\u005C;u0020;allows\u005C;u0020;for\u005C;u0020;the\u005C;u0020;interactive\u005C;u0020;selection\u005C;u0020;of\u005C;u0020;a\u005C;u0020;file.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/JFileChooser$AccessibleJFileChooser outerClass javax/swing/JFileChooser innerClassName AccessibleJFileChooser flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JFormattedTextField
+header extends javax/swing/JTextField nestMembers javax/swing/JFormattedTextField$AbstractFormatter,javax/swing/JFormattedTextField$AbstractFormatterFactory flags 21 runtimeAnnotations @Ljava/beans/JavaBean;
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatterFactory outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatterFactory flags 409
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatter outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatter flags 409
+
+class name javax/swing/JLabel$AccessibleJLabel
+header extends javax/swing/JComponent$AccessibleJComponent implements javax/accessibility/AccessibleText,javax/accessibility/AccessibleExtendedComponent nestHost javax/swing/JLabel flags 21
+innerclass innerClass javax/swing/JLabel$AccessibleJLabel outerClass javax/swing/JLabel innerClassName AccessibleJLabel flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass java/awt/geom/Rectangle2D$Float outerClass java/awt/geom/Rectangle2D innerClassName Float flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+
+class name javax/swing/JList
+header extends javax/swing/JComponent implements javax/swing/Scrollable,javax/accessibility/Accessible nestMembers javax/swing/JList$AccessibleJList,javax/swing/JList$AccessibleJList$AccessibleJListChild,javax/swing/JList$DropLocation flags 21 signature <E:Ljava/lang/Object;>Ljavax/swing/JComponent;Ljavax/swing/Scrollable;Ljavax/accessibility/Accessible; runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;which\u005C;u0020;allows\u005C;u0020;for\u005C;u0020;the\u005C;u0020;selection\u005C;u0020;of\u005C;u0020;one\u005C;u0020;or\u005C;u0020;more\u005C;u0020;objects\u005C;u0020;from\u005C;u0020;a\u005C;u0020;list.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JList$DropLocation outerClass javax/swing/JList innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/JList$AccessibleJList outerClass javax/swing/JList innerClassName AccessibleJList flags 4
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JList$AccessibleJList$AccessibleJListChild outerClass javax/swing/JList$AccessibleJList innerClassName AccessibleJListChild flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JList$AccessibleJList
+header extends javax/swing/JComponent$AccessibleJComponent implements javax/accessibility/AccessibleSelection,java/beans/PropertyChangeListener,javax/swing/event/ListSelectionListener,javax/swing/event/ListDataListener nestHost javax/swing/JList flags 21
+innerclass innerClass javax/swing/JList$AccessibleJList outerClass javax/swing/JList innerClassName AccessibleJList flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass javax/swing/JList$AccessibleJList$AccessibleJListChild outerClass javax/swing/JList$AccessibleJList innerClassName AccessibleJListChild flags 4
+
+class name javax/swing/JList$DropLocation
+header extends javax/swing/TransferHandler$DropLocation nestHost javax/swing/JList flags 31
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JList$DropLocation outerClass javax/swing/JList innerClassName DropLocation flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JMenu
+header extends javax/swing/JMenuItem implements javax/accessibility/Accessible,javax/swing/MenuElement nestMembers javax/swing/JMenu$AccessibleJMenu,javax/swing/JMenu$WinListener flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(description="A\u005C;u0020;popup\u005C;u0020;window\u005C;u0020;containing\u005C;u0020;menu\u005C;u0020;items\u005C;u0020;displayed\u005C;u0020;in\u005C;u0020;a\u005C;u0020;menu\u005C;u0020;bar.")@Ljavax/swing/SwingContainer;
+innerclass innerClass javax/swing/JMenu$WinListener outerClass javax/swing/JMenu innerClassName WinListener flags 4
+innerclass innerClass javax/swing/JPopupMenu$Separator outerClass javax/swing/JPopupMenu innerClassName Separator flags 9
+innerclass innerClass javax/swing/JMenu$AccessibleJMenu outerClass javax/swing/JMenu innerClassName AccessibleJMenu flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JOptionPane
+header extends javax/swing/JComponent implements javax/accessibility/Accessible nestMembers javax/swing/JOptionPane$AccessibleJOptionPane flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;which\u005C;u0020;implements\u005C;u0020;standard\u005C;u0020;dialog\u005C;u0020;box\u005C;u0020;controls.")@Ljavax/swing/SwingContainer;
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/JOptionPane$AccessibleJOptionPane outerClass javax/swing/JOptionPane innerClassName AccessibleJOptionPane flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JRadioButtonMenuItem
+header extends javax/swing/JMenuItem implements javax/accessibility/Accessible nestMembers javax/swing/JRadioButtonMenuItem$AccessibleJRadioButtonMenuItem flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(description="A\u005C;u0020;component\u005C;u0020;within\u005C;u0020;a\u005C;u0020;group\u005C;u0020;of\u005C;u0020;menu\u005C;u0020;items\u005C;u0020;which\u005C;u0020;can\u005C;u0020;be\u005C;u0020;selected.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JToggleButton$ToggleButtonModel outerClass javax/swing/JToggleButton innerClassName ToggleButtonModel flags 9
+innerclass innerClass javax/swing/JRadioButtonMenuItem$AccessibleJRadioButtonMenuItem outerClass javax/swing/JRadioButtonMenuItem innerClassName AccessibleJRadioButtonMenuItem flags 4
+
+class name javax/swing/JRootPane
+header extends javax/swing/JComponent implements javax/accessibility/Accessible nestMembers javax/swing/JRootPane$AccessibleJRootPane,javax/swing/JRootPane$RootLayout flags 21
+innerclass innerClass javax/swing/JRootPane$RootLayout outerClass javax/swing/JRootPane innerClassName RootLayout flags 4
+innerclass innerClass javax/swing/JRootPane$AccessibleJRootPane outerClass javax/swing/JRootPane innerClassName AccessibleJRootPane flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JScrollPane
+header extends javax/swing/JComponent implements javax/swing/ScrollPaneConstants,javax/accessibility/Accessible nestMembers javax/swing/JScrollPane$AccessibleJScrollPane,javax/swing/JScrollPane$ScrollBar flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;specialized\u005C;u0020;container\u005C;u0020;that\u005C;u0020;manages\u005C;u0020;a\u005C;u0020;viewport,\u005C;u0020;optional\u005C;u0020;scrollbars\u005C;u0020;and\u005C;u0020;headers")@Ljavax/swing/SwingContainer;(delegate="getViewport")
+innerclass innerClass javax/swing/ScrollPaneLayout$UIResource outerClass javax/swing/ScrollPaneLayout innerClassName UIResource flags 9
+innerclass innerClass javax/swing/JScrollPane$ScrollBar outerClass javax/swing/JScrollPane innerClassName ScrollBar flags 4
+innerclass innerClass javax/swing/JScrollPane$AccessibleJScrollPane outerClass javax/swing/JScrollPane innerClassName AccessibleJScrollPane flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JSpinner
+header extends javax/swing/JComponent implements javax/accessibility/Accessible nestMembers javax/swing/JSpinner$AccessibleJSpinner,javax/swing/JSpinner$ListEditor,javax/swing/JSpinner$NumberEditor,javax/swing/JSpinner$DateEditor,javax/swing/JSpinner$DefaultEditor flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;single\u005C;u0020;line\u005C;u0020;input\u005C;u0020;field\u005C;u0020;that\u005C;u0020;lets\u005C;u0020;the\u005C;u0020;user\u005C;u0020;select\u005C;u0020;a\u005C;u0020;number\u005C;u0020;or\u005C;u0020;an\u005C;u0020;object\u005C;u0020;value\u005C;u0020;from\u005C;u0020;an\u005C;u0020;ordered\u005C;u0020;set.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JSpinner$DateEditor outerClass javax/swing/JSpinner innerClassName DateEditor flags 9
+innerclass innerClass javax/swing/JSpinner$ListEditor outerClass javax/swing/JSpinner innerClassName ListEditor flags 9
+innerclass innerClass javax/swing/JSpinner$NumberEditor outerClass javax/swing/JSpinner innerClassName NumberEditor flags 9
+innerclass innerClass javax/swing/JSpinner$DefaultEditor outerClass javax/swing/JSpinner innerClassName DefaultEditor flags 9
+innerclass innerClass javax/swing/JSpinner$AccessibleJSpinner outerClass javax/swing/JSpinner innerClassName AccessibleJSpinner flags 4
+
+class name javax/swing/JSpinner$AccessibleJSpinner
+header extends javax/swing/JComponent$AccessibleJComponent implements javax/accessibility/AccessibleValue,javax/accessibility/AccessibleAction,javax/accessibility/AccessibleText,javax/accessibility/AccessibleEditableText,javax/swing/event/ChangeListener nestHost javax/swing/JSpinner flags 21
+innerclass innerClass javax/swing/JSpinner$AccessibleJSpinner outerClass javax/swing/JSpinner innerClassName AccessibleJSpinner flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass javax/swing/JSpinner$DefaultEditor outerClass javax/swing/JSpinner innerClassName DefaultEditor flags 9
+
+class name javax/swing/JSpinner$ListEditor
+header extends javax/swing/JSpinner$DefaultEditor nestHost javax/swing/JSpinner flags 21
+innerclass innerClass javax/swing/JSpinner$DefaultEditor outerClass javax/swing/JSpinner innerClassName DefaultEditor flags 9
+innerclass innerClass javax/swing/JSpinner$ListEditor outerClass javax/swing/JSpinner innerClassName ListEditor flags 9
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatter outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatter flags 409
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatterFactory outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatterFactory flags 409
+
+class name javax/swing/JTabbedPane
+header extends javax/swing/JComponent implements java/io/Serializable,javax/accessibility/Accessible,javax/swing/SwingConstants nestMembers javax/swing/JTabbedPane$AccessibleJTabbedPane,javax/swing/JTabbedPane$ModelListener flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;which\u005C;u0020;provides\u005C;u0020;a\u005C;u0020;tab\u005C;u0020;folder\u005C;u0020;metaphor\u005C;u0020;for\u005C;u0020;displaying\u005C;u0020;one\u005C;u0020;component\u005C;u0020;from\u005C;u0020;a\u005C;u0020;set\u005C;u0020;of\u005C;u0020;components.")@Ljavax/swing/SwingContainer;
+innerclass innerClass javax/swing/JTabbedPane$ModelListener outerClass javax/swing/JTabbedPane innerClassName ModelListener flags 4
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/JTabbedPane$AccessibleJTabbedPane outerClass javax/swing/JTabbedPane innerClassName AccessibleJTabbedPane flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JTable
+header extends javax/swing/JComponent implements javax/swing/event/TableModelListener,javax/swing/Scrollable,javax/swing/event/TableColumnModelListener,javax/swing/event/ListSelectionListener,javax/swing/event/CellEditorListener,javax/accessibility/Accessible,javax/swing/event/RowSorterListener nestMembers javax/swing/JTable$AccessibleJTable,javax/swing/JTable$AccessibleJTable$AccessibleJTableCell,javax/swing/JTable$AccessibleJTable$AccessibleJTableModelChange,javax/swing/JTable$DropLocation,javax/swing/JTable$PrintMode flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;which\u005C;u0020;displays\u005C;u0020;data\u005C;u0020;in\u005C;u0020;a\u005C;u0020;two\u005C;u0020;dimensional\u005C;u0020;grid.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JTable$DropLocation outerClass javax/swing/JTable innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/event/RowSorterEvent$Type outerClass javax/swing/event/RowSorterEvent innerClassName Type flags 4019
+innerclass innerClass javax/swing/UIDefaults$LazyValue outerClass javax/swing/UIDefaults innerClassName LazyValue flags 609
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/JTable$PrintMode outerClass javax/swing/JTable innerClassName PrintMode flags 4019
+innerclass innerClass javax/swing/JTable$AccessibleJTable outerClass javax/swing/JTable innerClassName AccessibleJTable flags 4
+innerclass innerClass javax/swing/table/DefaultTableCellRenderer$UIResource outerClass javax/swing/table/DefaultTableCellRenderer innerClassName UIResource flags 9
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JTable$AccessibleJTable$AccessibleJTableCell outerClass javax/swing/JTable$AccessibleJTable innerClassName AccessibleJTableCell flags 4
+innerclass innerClass javax/swing/JTable$AccessibleJTable$AccessibleJTableModelChange outerClass javax/swing/JTable$AccessibleJTable innerClassName AccessibleJTableModelChange flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JTable$AccessibleJTable
+header extends javax/swing/JComponent$AccessibleJComponent implements javax/accessibility/AccessibleSelection,javax/swing/event/ListSelectionListener,javax/swing/event/TableModelListener,javax/swing/event/TableColumnModelListener,javax/swing/event/CellEditorListener,java/beans/PropertyChangeListener,javax/accessibility/AccessibleExtendedTable nestHost javax/swing/JTable flags 21
+innerclass innerClass javax/swing/JTable$AccessibleJTable outerClass javax/swing/JTable innerClassName AccessibleJTable flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass javax/swing/JTable$AccessibleJTable$AccessibleJTableModelChange outerClass javax/swing/JTable$AccessibleJTable innerClassName AccessibleJTableModelChange flags 4
+innerclass innerClass javax/swing/JTable$AccessibleJTable$AccessibleJTableCell outerClass javax/swing/JTable$AccessibleJTable innerClassName AccessibleJTableCell flags 4
+
+class name javax/swing/JTable$DropLocation
+header extends javax/swing/TransferHandler$DropLocation nestHost javax/swing/JTable flags 31
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JTable$DropLocation outerClass javax/swing/JTable innerClassName DropLocation flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JToggleButton
+header extends javax/swing/AbstractButton implements javax/accessibility/Accessible nestMembers javax/swing/JToggleButton$AccessibleJToggleButton,javax/swing/JToggleButton$ToggleButtonModel flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UIClassID",description="An\u005C;u0020;implementation\u005C;u0020;of\u005C;u0020;a\u005C;u0020;two-state\u005C;u0020;button.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JToggleButton$ToggleButtonModel outerClass javax/swing/JToggleButton innerClassName ToggleButtonModel flags 9
+innerclass innerClass java/awt/event/FocusEvent$Cause outerClass java/awt/event/FocusEvent innerClassName Cause flags 4019
+innerclass innerClass javax/swing/JToggleButton$AccessibleJToggleButton outerClass javax/swing/JToggleButton innerClassName AccessibleJToggleButton flags 4
+
+class name javax/swing/JToolBar
+header extends javax/swing/JComponent implements javax/swing/SwingConstants,javax/accessibility/Accessible nestMembers javax/swing/JToolBar$AccessibleJToolBar,javax/swing/JToolBar$Separator flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;which\u005C;u0020;displays\u005C;u0020;commonly\u005C;u0020;used\u005C;u0020;controls\u005C;u0020;or\u005C;u0020;Actions.")@Ljavax/swing/SwingContainer;
+innerclass innerClass javax/swing/JToolBar$Separator outerClass javax/swing/JToolBar innerClassName Separator flags 9
+innerclass innerClass javax/swing/JToolBar$AccessibleJToolBar outerClass javax/swing/JToolBar innerClassName AccessibleJToolBar flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JTree
+header extends javax/swing/JComponent implements javax/swing/Scrollable,javax/accessibility/Accessible nestMembers javax/swing/JTree$AccessibleJTree,javax/swing/JTree$AccessibleJTree$AccessibleJTreeNode,javax/swing/JTree$DynamicUtilTreeNode,javax/swing/JTree$TreeModelHandler,javax/swing/JTree$TreeSelectionRedirector,javax/swing/JTree$EmptySelectionModel,javax/swing/JTree$DropLocation flags 21 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI",description="A\u005C;u0020;component\u005C;u0020;that\u005C;u0020;displays\u005C;u0020;a\u005C;u0020;set\u005C;u0020;of\u005C;u0020;hierarchical\u005C;u0020;data\u005C;u0020;as\u005C;u0020;an\u005C;u0020;outline.")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/JTree$DynamicUtilTreeNode outerClass javax/swing/JTree innerClassName DynamicUtilTreeNode flags 9
+innerclass innerClass javax/swing/JTree$AccessibleJTree outerClass javax/swing/JTree innerClassName AccessibleJTree flags 4
+innerclass innerClass javax/swing/JTree$DropLocation outerClass javax/swing/JTree innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/JTree$EmptySelectionModel outerClass javax/swing/JTree innerClassName EmptySelectionModel flags c
+innerclass innerClass javax/swing/JTree$TreeSelectionRedirector outerClass javax/swing/JTree innerClassName TreeSelectionRedirector flags 4
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/JTree$TreeModelHandler outerClass javax/swing/JTree innerClassName TreeModelHandler flags 4
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JTree$AccessibleJTree$AccessibleJTreeNode outerClass javax/swing/JTree$AccessibleJTree innerClassName AccessibleJTreeNode flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JTree$AccessibleJTree
+header extends javax/swing/JComponent$AccessibleJComponent implements javax/accessibility/AccessibleSelection,javax/swing/event/TreeSelectionListener,javax/swing/event/TreeModelListener,javax/swing/event/TreeExpansionListener nestHost javax/swing/JTree flags 21
+innerclass innerClass javax/swing/JTree$AccessibleJTree outerClass javax/swing/JTree innerClassName AccessibleJTree flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass javax/swing/JTree$AccessibleJTree$AccessibleJTreeNode outerClass javax/swing/JTree$AccessibleJTree innerClassName AccessibleJTreeNode flags 4
+
+class name javax/swing/JTree$DropLocation
+header extends javax/swing/TransferHandler$DropLocation nestHost javax/swing/JTree flags 31
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/JTree$DropLocation outerClass javax/swing/JTree innerClassName DropLocation flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/JViewport
+header extends javax/swing/JComponent implements javax/accessibility/Accessible nestMembers javax/swing/JViewport$AccessibleJViewport,javax/swing/JViewport$ViewListener flags 21
+innerclass innerClass javax/swing/JViewport$ViewListener outerClass javax/swing/JViewport innerClassName ViewListener flags 4
+innerclass innerClass javax/swing/JViewport$AccessibleJViewport outerClass javax/swing/JViewport innerClassName AccessibleJViewport flags 4
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/RowFilter
+header extends java/lang/Object nestMembers javax/swing/RowFilter$Entry,javax/swing/RowFilter$ComparisonType flags 421 signature <M:Ljava/lang/Object;I:Ljava/lang/Object;>Ljava/lang/Object;
+innerclass innerClass javax/swing/RowFilter$ComparisonType outerClass javax/swing/RowFilter innerClassName ComparisonType flags 4019
+innerclass innerClass javax/swing/RowFilter$Entry outerClass javax/swing/RowFilter innerClassName Entry flags 409
+
+class name javax/swing/RowSorter
+header extends java/lang/Object nestMembers javax/swing/RowSorter$SortKey flags 421 signature <M:Ljava/lang/Object;>Ljava/lang/Object;
+innerclass innerClass javax/swing/event/RowSorterEvent$Type outerClass javax/swing/event/RowSorterEvent innerClassName Type flags 4019
+innerclass innerClass javax/swing/RowSorter$SortKey outerClass javax/swing/RowSorter innerClassName SortKey flags 9
+
+class name javax/swing/ToolTipManager
+header extends java/awt/event/MouseAdapter implements java/awt/event/MouseMotionListener nestMembers javax/swing/ToolTipManager$stillInsideTimerAction,javax/swing/ToolTipManager$outsideTimerAction,javax/swing/ToolTipManager$insideTimerAction flags 21
+innerclass innerClass javax/swing/ToolTipManager$insideTimerAction outerClass javax/swing/ToolTipManager innerClassName insideTimerAction flags 4
+innerclass innerClass javax/swing/ToolTipManager$outsideTimerAction outerClass javax/swing/ToolTipManager innerClassName outsideTimerAction flags 4
+innerclass innerClass javax/swing/ToolTipManager$stillInsideTimerAction outerClass javax/swing/ToolTipManager innerClassName stillInsideTimerAction flags 4
+
+class name javax/swing/TransferHandler$TransferSupport
+header extends java/lang/Object nestHost javax/swing/TransferHandler flags 31
+innerclass innerClass javax/swing/TransferHandler$TransferSupport outerClass javax/swing/TransferHandler innerClassName TransferSupport flags 19
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/UIDefaults
+header extends java/util/Hashtable nestMembers javax/swing/UIDefaults$LazyInputMap,javax/swing/UIDefaults$ProxyLazyValue,javax/swing/UIDefaults$ActiveValue,javax/swing/UIDefaults$LazyValue flags 21 signature Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
+innerclass innerClass javax/swing/UIDefaults$ActiveValue outerClass javax/swing/UIDefaults innerClassName ActiveValue flags 609
+innerclass innerClass javax/swing/UIDefaults$LazyValue outerClass javax/swing/UIDefaults innerClassName LazyValue flags 609
+innerclass innerClass javax/swing/UIDefaults$LazyInputMap outerClass javax/swing/UIDefaults innerClassName LazyInputMap flags 9
+innerclass innerClass javax/swing/UIDefaults$ProxyLazyValue outerClass javax/swing/UIDefaults innerClassName ProxyLazyValue flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/border/StrokeBorder
+header extends javax/swing/border/AbstractBorder flags 21
+innerclass innerClass java/awt/RenderingHints$Key outerClass java/awt/RenderingHints innerClassName Key flags 409
+innerclass innerClass java/awt/geom/Rectangle2D$Float outerClass java/awt/geom/Rectangle2D innerClassName Float flags 9
+
+class name javax/swing/border/TitledBorder
+header extends javax/swing/border/AbstractBorder flags 21
+innerclass innerClass java/awt/geom/Path2D$Float outerClass java/awt/geom/Path2D innerClassName Float flags 9
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass java/lang/ref/Cleaner$Cleanable outerClass java/lang/ref/Cleaner innerClassName Cleanable flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/plaf/BorderUIResource
+header extends java/lang/Object implements javax/swing/border/Border,javax/swing/plaf/UIResource,java/io/Serializable nestMembers javax/swing/plaf/BorderUIResource$TitledBorderUIResource,javax/swing/plaf/BorderUIResource$MatteBorderUIResource,javax/swing/plaf/BorderUIResource$EtchedBorderUIResource,javax/swing/plaf/BorderUIResource$BevelBorderUIResource,javax/swing/plaf/BorderUIResource$LineBorderUIResource,javax/swing/plaf/BorderUIResource$EmptyBorderUIResource,javax/swing/plaf/BorderUIResource$CompoundBorderUIResource flags 21
+innerclass innerClass javax/swing/plaf/BorderUIResource$EtchedBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName EtchedBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$BevelBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName BevelBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$LineBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName LineBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$TitledBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName TitledBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$MatteBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName MatteBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$EmptyBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName EmptyBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$CompoundBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName CompoundBorderUIResource flags 9
+
+class name javax/swing/plaf/basic/BasicBorders
+header extends java/lang/Object nestMembers javax/swing/plaf/basic/BasicBorders$SplitPaneBorder,javax/swing/plaf/basic/BasicBorders$FieldBorder,javax/swing/plaf/basic/BasicBorders$MarginBorder,javax/swing/plaf/basic/BasicBorders$MenuBarBorder,javax/swing/plaf/basic/BasicBorders$RadioButtonBorder,javax/swing/plaf/basic/BasicBorders$ToggleButtonBorder,javax/swing/plaf/basic/BasicBorders$ButtonBorder,javax/swing/plaf/basic/BasicBorders$RolloverButtonBorder flags 21
+innerclass innerClass javax/swing/plaf/BorderUIResource$CompoundBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName CompoundBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$MarginBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName MarginBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$RadioButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName RadioButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ToggleButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ToggleButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$MenuBarBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName MenuBarBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$SplitPaneBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName SplitPaneBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$FieldBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName FieldBorder flags 9
+innerclass innerClass javax/swing/plaf/BorderUIResource$LineBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName LineBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$RolloverButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName RolloverButtonBorder flags 9
+
+class name javax/swing/plaf/basic/BasicBorders$RadioButtonBorder
+header extends javax/swing/plaf/basic/BasicBorders$ButtonBorder nestHost javax/swing/plaf/basic/BasicBorders flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$RadioButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName RadioButtonBorder flags 9
+
+class name javax/swing/plaf/basic/BasicBorders$RolloverButtonBorder
+header extends javax/swing/plaf/basic/BasicBorders$ButtonBorder nestHost javax/swing/plaf/basic/BasicBorders flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$RolloverButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName RolloverButtonBorder flags 9
+
+class name javax/swing/plaf/basic/BasicBorders$ToggleButtonBorder
+header extends javax/swing/plaf/basic/BasicBorders$ButtonBorder nestHost javax/swing/plaf/basic/BasicBorders flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ToggleButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ToggleButtonBorder flags 9
+
+class name javax/swing/plaf/basic/BasicComboBoxUI
+header extends javax/swing/plaf/ComboBoxUI nestMembers javax/swing/plaf/basic/BasicComboBoxUI$ComboBoxLayoutManager,javax/swing/plaf/basic/BasicComboBoxUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicComboBoxUI$ItemHandler,javax/swing/plaf/basic/BasicComboBoxUI$ListDataHandler,javax/swing/plaf/basic/BasicComboBoxUI$FocusHandler,javax/swing/plaf/basic/BasicComboBoxUI$KeyHandler flags 21
+innerclass innerClass javax/swing/JComboBox$KeySelectionManager outerClass javax/swing/JComboBox innerClassName KeySelectionManager flags 609
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxRenderer$UIResource outerClass javax/swing/plaf/basic/BasicComboBoxRenderer innerClassName UIResource flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxEditor$UIResource outerClass javax/swing/plaf/basic/BasicComboBoxEditor innerClassName UIResource flags 9
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxUI$ComboBoxLayoutManager outerClass javax/swing/plaf/basic/BasicComboBoxUI innerClassName ComboBoxLayoutManager flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicComboBoxUI innerClassName PropertyChangeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxUI$ItemHandler outerClass javax/swing/plaf/basic/BasicComboBoxUI innerClassName ItemHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxUI$ListDataHandler outerClass javax/swing/plaf/basic/BasicComboBoxUI innerClassName ListDataHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxUI$FocusHandler outerClass javax/swing/plaf/basic/BasicComboBoxUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicComboBoxUI$KeyHandler outerClass javax/swing/plaf/basic/BasicComboBoxUI innerClassName KeyHandler flags 1
+
+class name javax/swing/plaf/basic/BasicDesktopIconUI
+header extends javax/swing/plaf/DesktopIconUI nestMembers javax/swing/plaf/basic/BasicDesktopIconUI$MouseInputHandler flags 21
+innerclass innerClass javax/swing/JInternalFrame$JDesktopIcon outerClass javax/swing/JInternalFrame innerClassName JDesktopIcon flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicDesktopIconUI$MouseInputHandler outerClass javax/swing/plaf/basic/BasicDesktopIconUI innerClassName MouseInputHandler flags 1
+
+class name javax/swing/plaf/basic/BasicFileChooserUI
+header extends javax/swing/plaf/FileChooserUI nestMembers javax/swing/plaf/basic/BasicFileChooserUI$BasicFileView,javax/swing/plaf/basic/BasicFileChooserUI$AcceptAllFileFilter,javax/swing/plaf/basic/BasicFileChooserUI$UpdateAction,javax/swing/plaf/basic/BasicFileChooserUI$CancelSelectionAction,javax/swing/plaf/basic/BasicFileChooserUI$ApproveSelectionAction,javax/swing/plaf/basic/BasicFileChooserUI$ChangeToParentDirectoryAction,javax/swing/plaf/basic/BasicFileChooserUI$GoHomeAction,javax/swing/plaf/basic/BasicFileChooserUI$NewFolderAction,javax/swing/plaf/basic/BasicFileChooserUI$SelectionListener,javax/swing/plaf/basic/BasicFileChooserUI$DoubleClickListener flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$ApproveSelectionAction outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName ApproveSelectionAction flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$CancelSelectionAction outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName CancelSelectionAction flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$UpdateAction outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName UpdateAction flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$GoHomeAction outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName GoHomeAction flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$ChangeToParentDirectoryAction outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName ChangeToParentDirectoryAction flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$AcceptAllFileFilter outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName AcceptAllFileFilter flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$BasicFileView outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName BasicFileView flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$NewFolderAction outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName NewFolderAction flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$SelectionListener outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName SelectionListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicFileChooserUI$DoubleClickListener outerClass javax/swing/plaf/basic/BasicFileChooserUI innerClassName DoubleClickListener flags 4
+
+class name javax/swing/plaf/basic/BasicInternalFrameTitlePane
+header extends javax/swing/JComponent nestMembers javax/swing/plaf/basic/BasicInternalFrameTitlePane$SystemMenuBar,javax/swing/plaf/basic/BasicInternalFrameTitlePane$SizeAction,javax/swing/plaf/basic/BasicInternalFrameTitlePane$MoveAction,javax/swing/plaf/basic/BasicInternalFrameTitlePane$RestoreAction,javax/swing/plaf/basic/BasicInternalFrameTitlePane$IconifyAction,javax/swing/plaf/basic/BasicInternalFrameTitlePane$MaximizeAction,javax/swing/plaf/basic/BasicInternalFrameTitlePane$CloseAction,javax/swing/plaf/basic/BasicInternalFrameTitlePane$TitlePaneLayout,javax/swing/plaf/basic/BasicInternalFrameTitlePane$PropertyChangeHandler flags 21
+innerclass innerClass java/awt/RenderingHints$Key outerClass java/awt/RenderingHints innerClassName Key flags 409
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$MaximizeAction outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName MaximizeAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$IconifyAction outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName IconifyAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$CloseAction outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName CloseAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$RestoreAction outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName RestoreAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$MoveAction outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName MoveAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$SizeAction outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName SizeAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$SystemMenuBar outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName SystemMenuBar flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$TitlePaneLayout outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName TitlePaneLayout flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicInternalFrameTitlePane innerClassName PropertyChangeHandler flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/plaf/basic/BasicInternalFrameUI
+header extends javax/swing/plaf/InternalFrameUI nestMembers javax/swing/plaf/basic/BasicInternalFrameUI$BasicInternalFrameListener,javax/swing/plaf/basic/BasicInternalFrameUI$GlassPaneDispatcher,javax/swing/plaf/basic/BasicInternalFrameUI$ComponentHandler,javax/swing/plaf/basic/BasicInternalFrameUI$BorderListener,javax/swing/plaf/basic/BasicInternalFrameUI$InternalFrameLayout,javax/swing/plaf/basic/BasicInternalFrameUI$InternalFramePropertyChangeListener flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameUI$BorderListener outerClass javax/swing/plaf/basic/BasicInternalFrameUI innerClassName BorderListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameUI$BasicInternalFrameListener outerClass javax/swing/plaf/basic/BasicInternalFrameUI innerClassName BasicInternalFrameListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameUI$GlassPaneDispatcher outerClass javax/swing/plaf/basic/BasicInternalFrameUI innerClassName GlassPaneDispatcher flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameUI$ComponentHandler outerClass javax/swing/plaf/basic/BasicInternalFrameUI innerClassName ComponentHandler flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameUI$InternalFrameLayout outerClass javax/swing/plaf/basic/BasicInternalFrameUI innerClassName InternalFrameLayout flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicInternalFrameUI$InternalFramePropertyChangeListener outerClass javax/swing/plaf/basic/BasicInternalFrameUI innerClassName InternalFramePropertyChangeListener flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/plaf/basic/BasicListUI
+header extends javax/swing/plaf/ListUI nestMembers javax/swing/plaf/basic/BasicListUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicListUI$ListDataHandler,javax/swing/plaf/basic/BasicListUI$ListSelectionHandler,javax/swing/plaf/basic/BasicListUI$FocusHandler,javax/swing/plaf/basic/BasicListUI$MouseInputHandler flags 21
+innerclass innerClass javax/swing/JList$DropLocation outerClass javax/swing/JList innerClassName DropLocation flags 19
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/plaf/basic/BasicListUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicListUI innerClassName PropertyChangeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicListUI$ListDataHandler outerClass javax/swing/plaf/basic/BasicListUI innerClassName ListDataHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicListUI$ListSelectionHandler outerClass javax/swing/plaf/basic/BasicListUI innerClassName ListSelectionHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicListUI$FocusHandler outerClass javax/swing/plaf/basic/BasicListUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicListUI$MouseInputHandler outerClass javax/swing/plaf/basic/BasicListUI innerClassName MouseInputHandler flags 1
+
+class name javax/swing/plaf/basic/BasicOptionPaneUI
+header extends javax/swing/plaf/OptionPaneUI nestMembers javax/swing/plaf/basic/BasicOptionPaneUI$ButtonActionListener,javax/swing/plaf/basic/BasicOptionPaneUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicOptionPaneUI$ButtonAreaLayout flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicOptionPaneUI$ButtonAreaLayout outerClass javax/swing/plaf/basic/BasicOptionPaneUI innerClassName ButtonAreaLayout flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicOptionPaneUI$ButtonActionListener outerClass javax/swing/plaf/basic/BasicOptionPaneUI innerClassName ButtonActionListener flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicOptionPaneUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicOptionPaneUI innerClassName PropertyChangeHandler flags 1
+
+class name javax/swing/plaf/basic/BasicProgressBarUI
+header extends javax/swing/plaf/ProgressBarUI nestMembers javax/swing/plaf/basic/BasicProgressBarUI$ChangeHandler flags 21
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/plaf/basic/BasicProgressBarUI$ChangeHandler outerClass javax/swing/plaf/basic/BasicProgressBarUI innerClassName ChangeHandler flags 1
+
+class name javax/swing/plaf/basic/BasicScrollBarUI
+header extends javax/swing/plaf/ScrollBarUI implements java/awt/LayoutManager,javax/swing/SwingConstants nestMembers javax/swing/plaf/basic/BasicScrollBarUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicScrollBarUI$ScrollListener,javax/swing/plaf/basic/BasicScrollBarUI$ArrowButtonListener,javax/swing/plaf/basic/BasicScrollBarUI$TrackListener,javax/swing/plaf/basic/BasicScrollBarUI$ModelListener flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicScrollBarUI$TrackListener outerClass javax/swing/plaf/basic/BasicScrollBarUI innerClassName TrackListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicScrollBarUI$ArrowButtonListener outerClass javax/swing/plaf/basic/BasicScrollBarUI innerClassName ArrowButtonListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicScrollBarUI$ModelListener outerClass javax/swing/plaf/basic/BasicScrollBarUI innerClassName ModelListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicScrollBarUI$ScrollListener outerClass javax/swing/plaf/basic/BasicScrollBarUI innerClassName ScrollListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicScrollBarUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicScrollBarUI innerClassName PropertyChangeHandler flags 1
+
+class name javax/swing/plaf/basic/BasicScrollPaneUI
+header extends javax/swing/plaf/ScrollPaneUI implements javax/swing/ScrollPaneConstants nestMembers javax/swing/plaf/basic/BasicScrollPaneUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicScrollPaneUI$MouseWheelHandler,javax/swing/plaf/basic/BasicScrollPaneUI$VSBChangeListener,javax/swing/plaf/basic/BasicScrollPaneUI$HSBChangeListener,javax/swing/plaf/basic/BasicScrollPaneUI$ViewportChangeHandler flags 21
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/plaf/basic/BasicScrollPaneUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicScrollPaneUI innerClassName PropertyChangeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicScrollPaneUI$MouseWheelHandler outerClass javax/swing/plaf/basic/BasicScrollPaneUI innerClassName MouseWheelHandler flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicScrollPaneUI$VSBChangeListener outerClass javax/swing/plaf/basic/BasicScrollPaneUI innerClassName VSBChangeListener flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicScrollPaneUI$HSBChangeListener outerClass javax/swing/plaf/basic/BasicScrollPaneUI innerClassName HSBChangeListener flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicScrollPaneUI$ViewportChangeHandler outerClass javax/swing/plaf/basic/BasicScrollPaneUI innerClassName ViewportChangeHandler flags 1
+
+class name javax/swing/plaf/basic/BasicSliderUI
+header extends javax/swing/plaf/SliderUI nestMembers javax/swing/plaf/basic/BasicSliderUI$ActionScroller,javax/swing/plaf/basic/BasicSliderUI$FocusHandler,javax/swing/plaf/basic/BasicSliderUI$ComponentHandler,javax/swing/plaf/basic/BasicSliderUI$ScrollListener,javax/swing/plaf/basic/BasicSliderUI$TrackListener,javax/swing/plaf/basic/BasicSliderUI$ChangeHandler,javax/swing/plaf/basic/BasicSliderUI$PropertyChangeHandler flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$TrackListener outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName TrackListener flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$ScrollListener outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName ScrollListener flags 1
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$ActionScroller outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName ActionScroller flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$FocusHandler outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$ComponentHandler outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName ComponentHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$ChangeHandler outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName ChangeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName PropertyChangeHandler flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/plaf/basic/BasicSpinnerUI
+header extends javax/swing/plaf/SpinnerUI flags 21
+innerclass innerClass javax/swing/JSpinner$DefaultEditor outerClass javax/swing/JSpinner innerClassName DefaultEditor flags 9
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+
+class name javax/swing/plaf/basic/BasicSplitPaneDivider
+header extends java/awt/Container implements java/beans/PropertyChangeListener nestMembers javax/swing/plaf/basic/BasicSplitPaneDivider$DividerLayout,javax/swing/plaf/basic/BasicSplitPaneDivider$VerticalDragController,javax/swing/plaf/basic/BasicSplitPaneDivider$DragController,javax/swing/plaf/basic/BasicSplitPaneDivider$MouseHandler flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneDivider$DividerLayout outerClass javax/swing/plaf/basic/BasicSplitPaneDivider innerClassName DividerLayout flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneDivider$MouseHandler outerClass javax/swing/plaf/basic/BasicSplitPaneDivider innerClassName MouseHandler flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneDivider$VerticalDragController outerClass javax/swing/plaf/basic/BasicSplitPaneDivider innerClassName VerticalDragController flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneDivider$DragController outerClass javax/swing/plaf/basic/BasicSplitPaneDivider innerClassName DragController flags 4
+
+class name javax/swing/plaf/basic/BasicSplitPaneUI
+header extends javax/swing/plaf/SplitPaneUI nestMembers javax/swing/plaf/basic/BasicSplitPaneUI$BasicVerticalLayoutManager,javax/swing/plaf/basic/BasicSplitPaneUI$BasicHorizontalLayoutManager,javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardResizeToggleHandler,javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardEndHandler,javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardHomeHandler,javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardDownRightHandler,javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardUpLeftHandler,javax/swing/plaf/basic/BasicSplitPaneUI$FocusHandler,javax/swing/plaf/basic/BasicSplitPaneUI$PropertyHandler flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$BasicHorizontalLayoutManager outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName BasicHorizontalLayoutManager flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardUpLeftHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName KeyboardUpLeftHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardDownRightHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName KeyboardDownRightHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardHomeHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName KeyboardHomeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardEndHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName KeyboardEndHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$KeyboardResizeToggleHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName KeyboardResizeToggleHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$BasicVerticalLayoutManager outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName BasicVerticalLayoutManager flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$FocusHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicSplitPaneUI$PropertyHandler outerClass javax/swing/plaf/basic/BasicSplitPaneUI innerClassName PropertyHandler flags 1
+
+class name javax/swing/plaf/basic/BasicTabbedPaneUI
+header extends javax/swing/plaf/TabbedPaneUI implements javax/swing/SwingConstants nestMembers javax/swing/plaf/basic/BasicTabbedPaneUI$FocusHandler,javax/swing/plaf/basic/BasicTabbedPaneUI$MouseHandler,javax/swing/plaf/basic/BasicTabbedPaneUI$TabSelectionHandler,javax/swing/plaf/basic/BasicTabbedPaneUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicTabbedPaneUI$TabbedPaneLayout flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicTabbedPaneUI$TabbedPaneLayout outerClass javax/swing/plaf/basic/BasicTabbedPaneUI innerClassName TabbedPaneLayout flags 1
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/plaf/basic/BasicTabbedPaneUI$FocusHandler outerClass javax/swing/plaf/basic/BasicTabbedPaneUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTabbedPaneUI$MouseHandler outerClass javax/swing/plaf/basic/BasicTabbedPaneUI innerClassName MouseHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTabbedPaneUI$TabSelectionHandler outerClass javax/swing/plaf/basic/BasicTabbedPaneUI innerClassName TabSelectionHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTabbedPaneUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicTabbedPaneUI innerClassName PropertyChangeHandler flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/plaf/basic/BasicTableUI
+header extends javax/swing/plaf/TableUI nestMembers javax/swing/plaf/basic/BasicTableUI$MouseInputHandler,javax/swing/plaf/basic/BasicTableUI$FocusHandler,javax/swing/plaf/basic/BasicTableUI$KeyHandler flags 21
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/JTable$PrintMode outerClass javax/swing/JTable innerClassName PrintMode flags 4019
+innerclass innerClass javax/swing/JTable$DropLocation outerClass javax/swing/JTable innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/plaf/basic/BasicTableUI$MouseInputHandler outerClass javax/swing/plaf/basic/BasicTableUI innerClassName MouseInputHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTableUI$FocusHandler outerClass javax/swing/plaf/basic/BasicTableUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTableUI$KeyHandler outerClass javax/swing/plaf/basic/BasicTableUI innerClassName KeyHandler flags 1
+
+class name javax/swing/plaf/basic/BasicTextUI
+header extends javax/swing/plaf/TextUI implements javax/swing/text/ViewFactory nestMembers javax/swing/plaf/basic/BasicTextUI$BasicHighlighter,javax/swing/plaf/basic/BasicTextUI$BasicCaret flags 421
+innerclass innerClass javax/swing/plaf/basic/BasicTextUI$BasicCaret outerClass javax/swing/plaf/basic/BasicTextUI innerClassName BasicCaret flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicTextUI$BasicHighlighter outerClass javax/swing/plaf/basic/BasicTextUI innerClassName BasicHighlighter flags 9
+innerclass innerClass javax/swing/text/JTextComponent$KeyBinding outerClass javax/swing/text/JTextComponent innerClassName KeyBinding flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$InsertBreakAction outerClass javax/swing/text/DefaultEditorKit innerClassName InsertBreakAction flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/plaf/basic/BasicToolBarUI
+header extends javax/swing/plaf/ToolBarUI implements javax/swing/SwingConstants nestMembers javax/swing/plaf/basic/BasicToolBarUI$DragWindow,javax/swing/plaf/basic/BasicToolBarUI$DockingListener,javax/swing/plaf/basic/BasicToolBarUI$PropertyListener,javax/swing/plaf/basic/BasicToolBarUI$ToolBarFocusListener,javax/swing/plaf/basic/BasicToolBarUI$ToolBarContListener,javax/swing/plaf/basic/BasicToolBarUI$FrameListener flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$DragWindow outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName DragWindow flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$RolloverButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName RolloverButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$ButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$RadioButtonBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName RadioButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$FrameListener outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName FrameListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$DockingListener outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName DockingListener flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$PropertyListener outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName PropertyListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$ToolBarFocusListener outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName ToolBarFocusListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$ToolBarContListener outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName ToolBarContListener flags 4
+
+class name javax/swing/plaf/basic/BasicTreeUI
+header extends javax/swing/plaf/TreeUI nestMembers javax/swing/plaf/basic/BasicTreeUI$MouseInputHandler,javax/swing/plaf/basic/BasicTreeUI$TreeCancelEditingAction,javax/swing/plaf/basic/BasicTreeUI$TreeToggleAction,javax/swing/plaf/basic/BasicTreeUI$TreeHomeAction,javax/swing/plaf/basic/BasicTreeUI$TreeIncrementAction,javax/swing/plaf/basic/BasicTreeUI$TreePageAction,javax/swing/plaf/basic/BasicTreeUI$TreeTraverseAction,javax/swing/plaf/basic/BasicTreeUI$SelectionModelPropertyChangeHandler,javax/swing/plaf/basic/BasicTreeUI$PropertyChangeHandler,javax/swing/plaf/basic/BasicTreeUI$MouseHandler,javax/swing/plaf/basic/BasicTreeUI$NodeDimensionsHandler,javax/swing/plaf/basic/BasicTreeUI$FocusHandler,javax/swing/plaf/basic/BasicTreeUI$KeyHandler,javax/swing/plaf/basic/BasicTreeUI$CellEditorHandler,javax/swing/plaf/basic/BasicTreeUI$TreeSelectionHandler,javax/swing/plaf/basic/BasicTreeUI$TreeModelHandler,javax/swing/plaf/basic/BasicTreeUI$ComponentHandler,javax/swing/plaf/basic/BasicTreeUI$TreeExpansionHandler flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$NodeDimensionsHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName NodeDimensionsHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$ComponentHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName ComponentHandler flags 1
+innerclass innerClass java/awt/Component$BaselineResizeBehavior outerClass java/awt/Component innerClassName BaselineResizeBehavior flags 4019
+innerclass innerClass javax/swing/JTree$DropLocation outerClass javax/swing/JTree innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/tree/AbstractLayoutCache$NodeDimensions outerClass javax/swing/tree/AbstractLayoutCache innerClassName NodeDimensions flags 409
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$MouseInputHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName MouseInputHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeCancelEditingAction outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeCancelEditingAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeToggleAction outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeToggleAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeHomeAction outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeHomeAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeIncrementAction outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeIncrementAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreePageAction outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreePageAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeTraverseAction outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeTraverseAction flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$SelectionModelPropertyChangeHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName SelectionModelPropertyChangeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$PropertyChangeHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName PropertyChangeHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$MouseHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName MouseHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$FocusHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName FocusHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$KeyHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName KeyHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$CellEditorHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName CellEditorHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeSelectionHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeSelectionHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeModelHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeModelHandler flags 1
+innerclass innerClass javax/swing/plaf/basic/BasicTreeUI$TreeExpansionHandler outerClass javax/swing/plaf/basic/BasicTreeUI innerClassName TreeExpansionHandler flags 1
+
+class name javax/swing/plaf/metal/MetalBorders
+header extends java/lang/Object nestMembers javax/swing/plaf/metal/MetalBorders$TableHeaderBorder,javax/swing/plaf/metal/MetalBorders$ToggleButtonBorder,javax/swing/plaf/metal/MetalBorders$ScrollPaneBorder,javax/swing/plaf/metal/MetalBorders$TextFieldBorder,javax/swing/plaf/metal/MetalBorders$ToolBarBorder,javax/swing/plaf/metal/MetalBorders$RolloverButtonBorder,javax/swing/plaf/metal/MetalBorders$PopupMenuBorder,javax/swing/plaf/metal/MetalBorders$MenuItemBorder,javax/swing/plaf/metal/MetalBorders$MenuBarBorder,javax/swing/plaf/metal/MetalBorders$OptionDialogBorder,javax/swing/plaf/metal/MetalBorders$PaletteBorder,javax/swing/plaf/metal/MetalBorders$InternalFrameBorder,javax/swing/plaf/metal/MetalBorders$ButtonBorder,javax/swing/plaf/metal/MetalBorders$Flush3DBorder flags 21
+innerclass innerClass javax/swing/plaf/BorderUIResource$CompoundBorderUIResource outerClass javax/swing/plaf/BorderUIResource innerClassName CompoundBorderUIResource flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/basic/BasicBorders$MarginBorder outerClass javax/swing/plaf/basic/BasicBorders innerClassName MarginBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$Flush3DBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName Flush3DBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$TextFieldBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName TextFieldBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ToggleButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ToggleButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$RolloverButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName RolloverButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$TableHeaderBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName TableHeaderBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ScrollPaneBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ScrollPaneBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ToolBarBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ToolBarBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$PopupMenuBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName PopupMenuBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$MenuItemBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName MenuItemBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$MenuBarBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName MenuBarBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$OptionDialogBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName OptionDialogBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$PaletteBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName PaletteBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$InternalFrameBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName InternalFrameBorder flags 9
+
+class name javax/swing/plaf/metal/MetalBorders$RolloverButtonBorder
+header extends javax/swing/plaf/metal/MetalBorders$ButtonBorder nestHost javax/swing/plaf/metal/MetalBorders flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$RolloverButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName RolloverButtonBorder flags 9
+
+class name javax/swing/plaf/metal/MetalBorders$TextFieldBorder
+header extends javax/swing/plaf/metal/MetalBorders$Flush3DBorder nestHost javax/swing/plaf/metal/MetalBorders flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$Flush3DBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName Flush3DBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$TextFieldBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName TextFieldBorder flags 9
+
+class name javax/swing/plaf/metal/MetalBorders$ToggleButtonBorder
+header extends javax/swing/plaf/metal/MetalBorders$ButtonBorder nestHost javax/swing/plaf/metal/MetalBorders flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ButtonBorder flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalBorders$ToggleButtonBorder outerClass javax/swing/plaf/metal/MetalBorders innerClassName ToggleButtonBorder flags 9
+
+class name javax/swing/plaf/metal/MetalComboBoxUI
+header extends javax/swing/plaf/basic/BasicComboBoxUI nestMembers javax/swing/plaf/metal/MetalComboBoxUI$MetalComboPopup,javax/swing/plaf/metal/MetalComboBoxUI$MetalComboBoxLayoutManager,javax/swing/plaf/metal/MetalComboBoxUI$MetalPropertyChangeListener flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalComboBoxEditor$UIResource outerClass javax/swing/plaf/metal/MetalComboBoxEditor innerClassName UIResource flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalComboBoxUI$MetalPropertyChangeListener outerClass javax/swing/plaf/metal/MetalComboBoxUI innerClassName MetalPropertyChangeListener flags 1
+innerclass innerClass javax/swing/plaf/metal/MetalComboBoxUI$MetalComboBoxLayoutManager outerClass javax/swing/plaf/metal/MetalComboBoxUI innerClassName MetalComboBoxLayoutManager flags 1
+innerclass innerClass javax/swing/plaf/metal/MetalComboBoxUI$MetalComboPopup outerClass javax/swing/plaf/metal/MetalComboBoxUI innerClassName MetalComboPopup flags 1
+
+class name javax/swing/plaf/metal/MetalFileChooserUI
+header extends javax/swing/plaf/basic/BasicFileChooserUI nestMembers javax/swing/plaf/metal/MetalFileChooserUI$DirectoryComboBoxAction,javax/swing/plaf/metal/MetalFileChooserUI$FilterComboBoxModel,javax/swing/plaf/metal/MetalFileChooserUI$FilterComboBoxRenderer,javax/swing/plaf/metal/MetalFileChooserUI$DirectoryComboBoxModel,javax/swing/plaf/metal/MetalFileChooserUI$FileRenderer,javax/swing/plaf/metal/MetalFileChooserUI$SingleClickListener flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalFileChooserUI$DirectoryComboBoxAction outerClass javax/swing/plaf/metal/MetalFileChooserUI innerClassName DirectoryComboBoxAction flags 4
+innerclass innerClass javax/swing/plaf/metal/MetalFileChooserUI$DirectoryComboBoxModel outerClass javax/swing/plaf/metal/MetalFileChooserUI innerClassName DirectoryComboBoxModel flags 4
+innerclass innerClass javax/swing/plaf/metal/MetalFileChooserUI$FilterComboBoxModel outerClass javax/swing/plaf/metal/MetalFileChooserUI innerClassName FilterComboBoxModel flags 4
+innerclass innerClass javax/swing/plaf/metal/MetalFileChooserUI$FilterComboBoxRenderer outerClass javax/swing/plaf/metal/MetalFileChooserUI innerClassName FilterComboBoxRenderer flags 1
+innerclass innerClass javax/swing/plaf/metal/MetalFileChooserUI$FileRenderer outerClass javax/swing/plaf/metal/MetalFileChooserUI innerClassName FileRenderer flags 4
+innerclass innerClass javax/swing/plaf/metal/MetalFileChooserUI$SingleClickListener outerClass javax/swing/plaf/metal/MetalFileChooserUI innerClassName SingleClickListener flags 4
+
+class name javax/swing/plaf/metal/MetalIconFactory
+header extends java/lang/Object implements java/io/Serializable nestMembers javax/swing/plaf/metal/MetalIconFactory$TreeControlIcon,javax/swing/plaf/metal/MetalIconFactory$TreeLeafIcon,javax/swing/plaf/metal/MetalIconFactory$FileIcon16,javax/swing/plaf/metal/MetalIconFactory$TreeFolderIcon,javax/swing/plaf/metal/MetalIconFactory$FolderIcon16,javax/swing/plaf/metal/MetalIconFactory$PaletteCloseIcon flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$TreeFolderIcon outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName TreeFolderIcon flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$TreeLeafIcon outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName TreeLeafIcon flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$TreeControlIcon outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName TreeControlIcon flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$FileIcon16 outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName FileIcon16 flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$FolderIcon16 outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName FolderIcon16 flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$PaletteCloseIcon outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName PaletteCloseIcon flags 9
+
+class name javax/swing/plaf/metal/MetalIconFactory$TreeFolderIcon
+header extends javax/swing/plaf/metal/MetalIconFactory$FolderIcon16 nestHost javax/swing/plaf/metal/MetalIconFactory flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$FolderIcon16 outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName FolderIcon16 flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$TreeFolderIcon outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName TreeFolderIcon flags 9
+
+class name javax/swing/plaf/metal/MetalIconFactory$TreeLeafIcon
+header extends javax/swing/plaf/metal/MetalIconFactory$FileIcon16 nestHost javax/swing/plaf/metal/MetalIconFactory flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$FileIcon16 outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName FileIcon16 flags 9
+innerclass innerClass javax/swing/plaf/metal/MetalIconFactory$TreeLeafIcon outerClass javax/swing/plaf/metal/MetalIconFactory innerClassName TreeLeafIcon flags 9
+
+class name javax/swing/plaf/metal/MetalSliderUI
+header extends javax/swing/plaf/basic/BasicSliderUI nestMembers javax/swing/plaf/metal/MetalSliderUI$MetalPropertyListener flags 21
+innerclass innerClass javax/swing/plaf/basic/BasicSliderUI$ScrollListener outerClass javax/swing/plaf/basic/BasicSliderUI innerClassName ScrollListener flags 1
+innerclass innerClass javax/swing/plaf/metal/MetalSliderUI$MetalPropertyListener outerClass javax/swing/plaf/metal/MetalSliderUI innerClassName MetalPropertyListener flags 4
+
+class name javax/swing/plaf/metal/MetalToolBarUI
+header extends javax/swing/plaf/basic/BasicToolBarUI nestMembers javax/swing/plaf/metal/MetalToolBarUI$MetalDockingListener,javax/swing/plaf/metal/MetalToolBarUI$MetalRolloverListener,javax/swing/plaf/metal/MetalToolBarUI$MetalContainerListener flags 21
+innerclass innerClass javax/swing/plaf/metal/MetalToolBarUI$MetalDockingListener outerClass javax/swing/plaf/metal/MetalToolBarUI innerClassName MetalDockingListener flags 4
+innerclass innerClass javax/swing/plaf/basic/BasicToolBarUI$DragWindow outerClass javax/swing/plaf/basic/BasicToolBarUI innerClassName DragWindow flags 4
+innerclass innerClass javax/swing/plaf/metal/MetalToolBarUI$MetalRolloverListener outerClass javax/swing/plaf/metal/MetalToolBarUI innerClassName MetalRolloverListener flags 4
+innerclass innerClass javax/swing/plaf/metal/MetalToolBarUI$MetalContainerListener outerClass javax/swing/plaf/metal/MetalToolBarUI innerClassName MetalContainerListener flags 4
+
+class name javax/swing/table/DefaultTableCellRenderer
+header extends javax/swing/JLabel implements javax/swing/table/TableCellRenderer,java/io/Serializable nestMembers javax/swing/table/DefaultTableCellRenderer$UIResource flags 21
+innerclass innerClass javax/swing/JTable$DropLocation outerClass javax/swing/JTable innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/table/DefaultTableCellRenderer$UIResource outerClass javax/swing/table/DefaultTableCellRenderer innerClassName UIResource flags 9
+
+class name javax/swing/table/JTableHeader$AccessibleJTableHeader
+header extends javax/swing/JComponent$AccessibleJComponent nestHost javax/swing/table/JTableHeader flags 21
+innerclass innerClass javax/swing/table/JTableHeader$AccessibleJTableHeader outerClass javax/swing/table/JTableHeader innerClassName AccessibleJTableHeader flags 4
+innerclass innerClass javax/swing/JComponent$AccessibleJComponent outerClass javax/swing/JComponent innerClassName AccessibleJComponent flags 401
+innerclass innerClass javax/swing/table/JTableHeader$AccessibleJTableHeader$AccessibleJTableHeaderEntry outerClass javax/swing/table/JTableHeader$AccessibleJTableHeader innerClassName AccessibleJTableHeaderEntry flags 4
+
+class name javax/swing/text/AbstractDocument
+header extends java/lang/Object implements javax/swing/text/Document,java/io/Serializable nestMembers javax/swing/text/AbstractDocument$ElementEdit,javax/swing/text/AbstractDocument$DefaultDocumentEvent,javax/swing/text/AbstractDocument$LeafElement,javax/swing/text/AbstractDocument$BranchElement,javax/swing/text/AbstractDocument$AbstractElement,javax/swing/text/AbstractDocument$AttributeContext,javax/swing/text/AbstractDocument$Content flags 421
+innerclass innerClass javax/swing/text/AbstractDocument$Content outerClass javax/swing/text/AbstractDocument innerClassName Content flags 609
+innerclass innerClass javax/swing/text/AbstractDocument$AttributeContext outerClass javax/swing/text/AbstractDocument innerClassName AttributeContext flags 609
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/event/DocumentEvent$EventType outerClass javax/swing/event/DocumentEvent innerClassName EventType flags 19
+innerclass innerClass javax/swing/text/DocumentFilter$FilterBypass outerClass javax/swing/text/DocumentFilter innerClassName FilterBypass flags 409
+innerclass innerClass javax/swing/text/AbstractDocument$ElementEdit outerClass javax/swing/text/AbstractDocument innerClassName ElementEdit flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$AbstractElement outerClass javax/swing/text/AbstractDocument innerClassName AbstractElement flags 401
+innerclass innerClass javax/swing/text/AbstractDocument$LeafElement outerClass javax/swing/text/AbstractDocument innerClassName LeafElement flags 1
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/AbstractDocument$AbstractElement
+header extends java/lang/Object implements javax/swing/text/Element,javax/swing/text/MutableAttributeSet,java/io/Serializable,javax/swing/tree/TreeNode nestHost javax/swing/text/AbstractDocument flags 421
+innerclass innerClass javax/swing/text/AbstractDocument$AbstractElement outerClass javax/swing/text/AbstractDocument innerClassName AbstractElement flags 401
+innerclass innerClass javax/swing/text/AbstractDocument$AttributeContext outerClass javax/swing/text/AbstractDocument innerClassName AttributeContext flags 609
+innerclass innerClass javax/swing/text/AbstractDocument$Content outerClass javax/swing/text/AbstractDocument innerClassName Content flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/AbstractDocument$BranchElement
+header extends javax/swing/text/AbstractDocument$AbstractElement nestHost javax/swing/text/AbstractDocument flags 21
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$AbstractElement outerClass javax/swing/text/AbstractDocument innerClassName AbstractElement flags 401
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/AbstractDocument$DefaultDocumentEvent
+header extends javax/swing/undo/CompoundEdit implements javax/swing/event/DocumentEvent nestHost javax/swing/text/AbstractDocument flags 21
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/event/DocumentEvent$EventType outerClass javax/swing/event/DocumentEvent innerClassName EventType flags 19
+innerclass innerClass javax/swing/event/DocumentEvent$ElementChange outerClass javax/swing/event/DocumentEvent innerClassName ElementChange flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/AsyncBoxView
+header extends javax/swing/text/View nestMembers javax/swing/text/AsyncBoxView$ChildState,javax/swing/text/AsyncBoxView$ChildLocator flags 21
+innerclass innerClass javax/swing/text/AsyncBoxView$ChildLocator outerClass javax/swing/text/AsyncBoxView innerClassName ChildLocator flags 1
+innerclass innerClass javax/swing/text/AsyncBoxView$ChildState outerClass javax/swing/text/AsyncBoxView innerClassName ChildState flags 1
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/event/DocumentEvent$ElementChange outerClass javax/swing/event/DocumentEvent innerClassName ElementChange flags 609
+
+class name javax/swing/text/AsyncBoxView$ChildLocator
+header extends java/lang/Object nestHost javax/swing/text/AsyncBoxView flags 21
+innerclass innerClass javax/swing/text/AsyncBoxView$ChildLocator outerClass javax/swing/text/AsyncBoxView innerClassName ChildLocator flags 1
+innerclass innerClass javax/swing/text/AsyncBoxView$ChildState outerClass javax/swing/text/AsyncBoxView innerClassName ChildState flags 1
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+
+class name javax/swing/text/DefaultCaret
+header extends java/awt/Rectangle implements javax/swing/text/Caret,java/awt/event/FocusListener,java/awt/event/MouseListener,java/awt/event/MouseMotionListener flags 21
+innerclass innerClass javax/swing/text/LayeredHighlighter$LayerPainter outerClass javax/swing/text/LayeredHighlighter innerClassName LayerPainter flags 409
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/awt/event/FocusEvent$Cause outerClass java/awt/event/FocusEvent innerClassName Cause flags 4019
+innerclass innerClass javax/swing/text/Highlighter$HighlightPainter outerClass javax/swing/text/Highlighter innerClassName HighlightPainter flags 609
+innerclass innerClass javax/swing/text/NavigationFilter$FilterBypass outerClass javax/swing/text/NavigationFilter innerClassName FilterBypass flags 409
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/DefaultEditorKit
+header extends javax/swing/text/EditorKit nestMembers javax/swing/text/DefaultEditorKit$BeepAction,javax/swing/text/DefaultEditorKit$PasteAction,javax/swing/text/DefaultEditorKit$CopyAction,javax/swing/text/DefaultEditorKit$CutAction,javax/swing/text/DefaultEditorKit$InsertTabAction,javax/swing/text/DefaultEditorKit$InsertBreakAction,javax/swing/text/DefaultEditorKit$InsertContentAction,javax/swing/text/DefaultEditorKit$DefaultKeyTypedAction flags 21
+innerclass innerClass javax/swing/text/DefaultEditorKit$InsertContentAction outerClass javax/swing/text/DefaultEditorKit innerClassName InsertContentAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$CutAction outerClass javax/swing/text/DefaultEditorKit innerClassName CutAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$CopyAction outerClass javax/swing/text/DefaultEditorKit innerClassName CopyAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$PasteAction outerClass javax/swing/text/DefaultEditorKit innerClassName PasteAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$InsertBreakAction outerClass javax/swing/text/DefaultEditorKit innerClassName InsertBreakAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$BeepAction outerClass javax/swing/text/DefaultEditorKit innerClassName BeepAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$DefaultKeyTypedAction outerClass javax/swing/text/DefaultEditorKit innerClassName DefaultKeyTypedAction flags 9
+innerclass innerClass javax/swing/text/DefaultEditorKit$InsertTabAction outerClass javax/swing/text/DefaultEditorKit innerClassName InsertTabAction flags 9
+
+class name javax/swing/text/DefaultFormatter
+header extends javax/swing/JFormattedTextField$AbstractFormatter implements java/lang/Cloneable,java/io/Serializable flags 21
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatter outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatter flags 409
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/text/DocumentFilter$FilterBypass outerClass javax/swing/text/DocumentFilter innerClassName FilterBypass flags 409
+innerclass innerClass javax/swing/text/NavigationFilter$FilterBypass outerClass javax/swing/text/NavigationFilter innerClassName FilterBypass flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/DefaultFormatterFactory
+header extends javax/swing/JFormattedTextField$AbstractFormatterFactory implements java/io/Serializable flags 21
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatterFactory outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatterFactory flags 409
+innerclass innerClass javax/swing/JFormattedTextField$AbstractFormatter outerClass javax/swing/JFormattedTextField innerClassName AbstractFormatter flags 409
+
+class name javax/swing/text/DefaultHighlighter
+header extends javax/swing/text/LayeredHighlighter nestMembers javax/swing/text/DefaultHighlighter$DefaultHighlightPainter flags 21
+innerclass innerClass javax/swing/text/Highlighter$HighlightPainter outerClass javax/swing/text/Highlighter innerClassName HighlightPainter flags 609
+innerclass innerClass javax/swing/text/LayeredHighlighter$LayerPainter outerClass javax/swing/text/LayeredHighlighter innerClassName LayerPainter flags 409
+innerclass innerClass javax/swing/text/Highlighter$Highlight outerClass javax/swing/text/Highlighter innerClassName Highlight flags 609
+innerclass innerClass javax/swing/text/DefaultHighlighter$DefaultHighlightPainter outerClass javax/swing/text/DefaultHighlighter innerClassName DefaultHighlightPainter flags 9
+
+class name javax/swing/text/DefaultHighlighter$DefaultHighlightPainter
+header extends javax/swing/text/LayeredHighlighter$LayerPainter nestHost javax/swing/text/DefaultHighlighter flags 21
+innerclass innerClass javax/swing/text/LayeredHighlighter$LayerPainter outerClass javax/swing/text/LayeredHighlighter innerClassName LayerPainter flags 409
+innerclass innerClass javax/swing/text/DefaultHighlighter$DefaultHighlightPainter outerClass javax/swing/text/DefaultHighlighter innerClassName DefaultHighlightPainter flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+
+class name javax/swing/text/DefaultStyledDocument
+header extends javax/swing/text/AbstractDocument implements javax/swing/text/StyledDocument nestMembers javax/swing/text/DefaultStyledDocument$AttributeUndoableEdit,javax/swing/text/DefaultStyledDocument$ElementBuffer,javax/swing/text/DefaultStyledDocument$ElementSpec,javax/swing/text/DefaultStyledDocument$SectionElement flags 21
+innerclass innerClass javax/swing/text/AbstractDocument$Content outerClass javax/swing/text/AbstractDocument innerClassName Content flags 609
+innerclass innerClass javax/swing/text/AbstractDocument$AttributeContext outerClass javax/swing/text/AbstractDocument innerClassName AttributeContext flags 609
+innerclass innerClass javax/swing/text/DefaultStyledDocument$ElementBuffer outerClass javax/swing/text/DefaultStyledDocument innerClassName ElementBuffer flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$AbstractElement outerClass javax/swing/text/AbstractDocument innerClassName AbstractElement flags 401
+innerclass innerClass javax/swing/text/DefaultStyledDocument$ElementSpec outerClass javax/swing/text/DefaultStyledDocument innerClassName ElementSpec flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/event/DocumentEvent$EventType outerClass javax/swing/event/DocumentEvent innerClassName EventType flags 19
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$ElementEdit outerClass javax/swing/text/AbstractDocument innerClassName ElementEdit flags 9
+innerclass innerClass javax/swing/text/DefaultStyledDocument$AttributeUndoableEdit outerClass javax/swing/text/DefaultStyledDocument innerClassName AttributeUndoableEdit flags 9
+innerclass innerClass javax/swing/text/DefaultStyledDocument$SectionElement outerClass javax/swing/text/DefaultStyledDocument innerClassName SectionElement flags 4
+innerclass innerClass javax/swing/text/AbstractDocument$LeafElement outerClass javax/swing/text/AbstractDocument innerClassName LeafElement flags 1
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+
+class name javax/swing/text/DefaultStyledDocument$ElementBuffer
+header extends java/lang/Object implements java/io/Serializable nestHost javax/swing/text/DefaultStyledDocument flags 21
+innerclass innerClass javax/swing/text/DefaultStyledDocument$ElementBuffer outerClass javax/swing/text/DefaultStyledDocument innerClassName ElementBuffer flags 1
+innerclass innerClass javax/swing/text/DefaultStyledDocument$ElementSpec outerClass javax/swing/text/DefaultStyledDocument innerClassName ElementSpec flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/text/DefaultStyledDocument$AttributeUndoableEdit outerClass javax/swing/text/DefaultStyledDocument innerClassName AttributeUndoableEdit flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$ElementEdit outerClass javax/swing/text/AbstractDocument innerClassName ElementEdit flags 9
+
+class name javax/swing/text/GlyphView$GlyphPainter
+header extends java/lang/Object nestHost javax/swing/text/GlyphView flags 421
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/text/GlyphView$GlyphPainter outerClass javax/swing/text/GlyphView innerClassName GlyphPainter flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/Highlighter$Highlight
+header extends java/lang/Object nestHost javax/swing/text/Highlighter flags 601
+innerclass innerClass javax/swing/text/Highlighter$Highlight outerClass javax/swing/text/Highlighter innerClassName Highlight flags 609
+innerclass innerClass javax/swing/text/Highlighter$HighlightPainter outerClass javax/swing/text/Highlighter innerClassName HighlightPainter flags 609
+
+class name javax/swing/text/JTextComponent
+header extends javax/swing/JComponent implements javax/swing/Scrollable,javax/accessibility/Accessible nestMembers javax/swing/text/JTextComponent$DropLocation,javax/swing/text/JTextComponent$AccessibleJTextComponent,javax/swing/text/JTextComponent$KeyBinding flags 421 runtimeAnnotations @Ljava/beans/JavaBean;(defaultProperty="UI")@Ljavax/swing/SwingContainer;(value=Zfalse)
+innerclass innerClass javax/swing/text/JTextComponent$AccessibleJTextComponent outerClass javax/swing/text/JTextComponent innerClassName AccessibleJTextComponent flags 1
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/text/JTextComponent$DropLocation outerClass javax/swing/text/JTextComponent innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/text/DefaultEditorKit$DefaultKeyTypedAction outerClass javax/swing/text/DefaultEditorKit innerClassName DefaultKeyTypedAction flags 9
+innerclass innerClass javax/swing/text/JTextComponent$KeyBinding outerClass javax/swing/text/JTextComponent innerClassName KeyBinding flags 9
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/JTextComponent$DropLocation
+header extends javax/swing/TransferHandler$DropLocation nestHost javax/swing/text/JTextComponent flags 31
+innerclass innerClass javax/swing/TransferHandler$DropLocation outerClass javax/swing/TransferHandler innerClassName DropLocation flags 9
+innerclass innerClass javax/swing/text/JTextComponent$DropLocation outerClass javax/swing/text/JTextComponent innerClassName DropLocation flags 19
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/ParagraphView
+header extends javax/swing/text/FlowView implements javax/swing/text/TabExpander flags 21
+innerclass innerClass javax/swing/text/FlowView$FlowStrategy outerClass javax/swing/text/FlowView innerClassName FlowStrategy flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/PlainDocument
+header extends javax/swing/text/AbstractDocument flags 21
+innerclass innerClass javax/swing/text/AbstractDocument$Content outerClass javax/swing/text/AbstractDocument innerClassName Content flags 609
+innerclass innerClass javax/swing/text/AbstractDocument$AbstractElement outerClass javax/swing/text/AbstractDocument innerClassName AbstractElement flags 401
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$ElementEdit outerClass javax/swing/text/AbstractDocument innerClassName ElementEdit flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/PlainView
+header extends javax/swing/text/View implements javax/swing/text/TabExpander flags 21
+innerclass innerClass java/awt/geom/Rectangle2D$Float outerClass java/awt/geom/Rectangle2D innerClassName Float flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/event/DocumentEvent$ElementChange outerClass javax/swing/event/DocumentEvent innerClassName ElementChange flags 609
+innerclass innerClass javax/swing/event/DocumentEvent$EventType outerClass javax/swing/event/DocumentEvent innerClassName EventType flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/StyleConstants
+header extends java/lang/Object nestMembers javax/swing/text/StyleConstants$FontConstants,javax/swing/text/StyleConstants$ColorConstants,javax/swing/text/StyleConstants$CharacterConstants,javax/swing/text/StyleConstants$ParagraphConstants flags 21
+innerclass innerClass javax/swing/text/StyleConstants$CharacterConstants outerClass javax/swing/text/StyleConstants innerClassName CharacterConstants flags 9
+innerclass innerClass javax/swing/text/StyleConstants$FontConstants outerClass javax/swing/text/StyleConstants innerClassName FontConstants flags 9
+innerclass innerClass javax/swing/text/StyleConstants$ColorConstants outerClass javax/swing/text/StyleConstants innerClassName ColorConstants flags 9
+innerclass innerClass javax/swing/text/StyleConstants$ParagraphConstants outerClass javax/swing/text/StyleConstants innerClassName ParagraphConstants flags 9
+
+class name javax/swing/text/StyledEditorKit
+header extends javax/swing/text/DefaultEditorKit nestMembers javax/swing/text/StyledEditorKit$UnderlineAction,javax/swing/text/StyledEditorKit$ItalicAction,javax/swing/text/StyledEditorKit$BoldAction,javax/swing/text/StyledEditorKit$AlignmentAction,javax/swing/text/StyledEditorKit$ForegroundAction,javax/swing/text/StyledEditorKit$FontSizeAction,javax/swing/text/StyledEditorKit$FontFamilyAction,javax/swing/text/StyledEditorKit$StyledTextAction flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$FontFamilyAction outerClass javax/swing/text/StyledEditorKit innerClassName FontFamilyAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$FontSizeAction outerClass javax/swing/text/StyledEditorKit innerClassName FontSizeAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$AlignmentAction outerClass javax/swing/text/StyledEditorKit innerClassName AlignmentAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$BoldAction outerClass javax/swing/text/StyledEditorKit innerClassName BoldAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$ItalicAction outerClass javax/swing/text/StyledEditorKit innerClassName ItalicAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$UnderlineAction outerClass javax/swing/text/StyledEditorKit innerClassName UnderlineAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$ForegroundAction outerClass javax/swing/text/StyledEditorKit innerClassName ForegroundAction flags 9
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+
+class name javax/swing/text/StyledEditorKit$AlignmentAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$AlignmentAction outerClass javax/swing/text/StyledEditorKit innerClassName AlignmentAction flags 9
+
+class name javax/swing/text/StyledEditorKit$BoldAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$BoldAction outerClass javax/swing/text/StyledEditorKit innerClassName BoldAction flags 9
+
+class name javax/swing/text/StyledEditorKit$FontFamilyAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$FontFamilyAction outerClass javax/swing/text/StyledEditorKit innerClassName FontFamilyAction flags 9
+
+class name javax/swing/text/StyledEditorKit$FontSizeAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$FontSizeAction outerClass javax/swing/text/StyledEditorKit innerClassName FontSizeAction flags 9
+
+class name javax/swing/text/StyledEditorKit$ForegroundAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$ForegroundAction outerClass javax/swing/text/StyledEditorKit innerClassName ForegroundAction flags 9
+
+class name javax/swing/text/StyledEditorKit$ItalicAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$ItalicAction outerClass javax/swing/text/StyledEditorKit innerClassName ItalicAction flags 9
+
+class name javax/swing/text/StyledEditorKit$UnderlineAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/StyledEditorKit flags 21
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/StyledEditorKit$UnderlineAction outerClass javax/swing/text/StyledEditorKit innerClassName UnderlineAction flags 9
+
+class name javax/swing/text/TableView
+header extends javax/swing/text/BoxView nestMembers javax/swing/text/TableView$GridCell,javax/swing/text/TableView$TableCell,javax/swing/text/TableView$TableRow flags 421
+innerclass innerClass javax/swing/text/TableView$TableRow outerClass javax/swing/text/TableView innerClassName TableRow flags 1
+innerclass innerClass javax/swing/text/TableView$TableCell outerClass javax/swing/text/TableView innerClassName TableCell flags 1
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/event/DocumentEvent$ElementChange outerClass javax/swing/event/DocumentEvent innerClassName ElementChange flags 609
+innerclass innerClass javax/swing/text/TableView$GridCell outerClass javax/swing/text/TableView innerClassName GridCell flags 608
+
+class name javax/swing/text/Utilities
+header extends java/lang/Object flags 21
+innerclass innerClass java/text/AttributedCharacterIterator$Attribute outerClass java/text/AttributedCharacterIterator innerClassName Attribute flags 9
+innerclass innerClass javax/swing/text/GlyphView$GlyphPainter outerClass javax/swing/text/GlyphView innerClassName GlyphPainter flags 409
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/ZoneView
+header extends javax/swing/text/BoxView flags 21
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/event/DocumentEvent$ElementChange outerClass javax/swing/event/DocumentEvent innerClassName ElementChange flags 609
+
+class name javax/swing/text/html/BlockView
+header extends javax/swing/text/BoxView flags 21
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/StyleSheet$BoxPainter outerClass javax/swing/text/html/StyleSheet innerClassName BoxPainter flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/CSS
+header extends java/lang/Object implements java/io/Serializable nestMembers javax/swing/text/html/CSS$Attribute flags 21
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/FormSubmitEvent
+header extends javax/swing/text/html/HTMLFrameHyperlinkEvent nestMembers javax/swing/text/html/FormSubmitEvent$MethodType flags 21
+innerclass innerClass javax/swing/event/HyperlinkEvent$EventType outerClass javax/swing/event/HyperlinkEvent innerClassName EventType flags 19
+innerclass innerClass javax/swing/text/html/FormSubmitEvent$MethodType outerClass javax/swing/text/html/FormSubmitEvent innerClassName MethodType flags 4019
+
+class name javax/swing/text/html/FormView
+header extends javax/swing/text/ComponentView implements java/awt/event/ActionListener nestMembers javax/swing/text/html/FormView$MouseEventListener flags 21
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/FormView$MouseEventListener outerClass javax/swing/text/html/FormView innerClassName MouseEventListener flags 4
+innerclass innerClass javax/swing/JToggleButton$ToggleButtonModel outerClass javax/swing/JToggleButton innerClassName ToggleButtonModel flags 9
+innerclass innerClass javax/swing/text/html/FormSubmitEvent$MethodType outerClass javax/swing/text/html/FormSubmitEvent innerClassName MethodType flags 4019
+innerclass innerClass javax/swing/event/HyperlinkEvent$EventType outerClass javax/swing/event/HyperlinkEvent innerClassName EventType flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/HTML
+header extends java/lang/Object nestMembers javax/swing/text/html/HTML$Attribute,javax/swing/text/html/HTML$UnknownTag,javax/swing/text/html/HTML$Tag flags 21
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$UnknownTag outerClass javax/swing/text/html/HTML innerClassName UnknownTag flags 9
+
+class name javax/swing/text/html/HTML$UnknownTag
+header extends javax/swing/text/html/HTML$Tag implements java/io/Serializable nestHost javax/swing/text/html/HTML flags 21
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$UnknownTag outerClass javax/swing/text/html/HTML innerClassName UnknownTag flags 9
+
+class name javax/swing/text/html/HTMLDocument
+header extends javax/swing/text/DefaultStyledDocument nestMembers javax/swing/text/html/HTMLDocument$BlockElement,javax/swing/text/html/HTMLDocument$RunElement,javax/swing/text/html/HTMLDocument$HTMLReader,javax/swing/text/html/HTMLDocument$HTMLReader$FormAction,javax/swing/text/html/HTMLDocument$HTMLReader$CharacterAction,javax/swing/text/html/HTMLDocument$HTMLReader$PreAction,javax/swing/text/html/HTMLDocument$HTMLReader$HiddenAction,javax/swing/text/html/HTMLDocument$HTMLReader$IsindexAction,javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction,javax/swing/text/html/HTMLDocument$HTMLReader$ParagraphAction,javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction,javax/swing/text/html/HTMLDocument$HTMLReader$TagAction,javax/swing/text/html/HTMLDocument$Iterator flags 21
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$Content outerClass javax/swing/text/AbstractDocument innerClassName Content flags 609
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$ParserCallback outerClass javax/swing/text/html/HTMLEditorKit innerClassName ParserCallback flags 9
+innerclass innerClass javax/swing/text/DefaultStyledDocument$ElementSpec outerClass javax/swing/text/DefaultStyledDocument innerClassName ElementSpec flags 9
+innerclass innerClass javax/swing/event/DocumentEvent$EventType outerClass javax/swing/event/DocumentEvent innerClassName EventType flags 19
+innerclass innerClass javax/swing/text/DefaultStyledDocument$AttributeUndoableEdit outerClass javax/swing/text/DefaultStyledDocument innerClassName AttributeUndoableEdit flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$AttributeContext outerClass javax/swing/text/AbstractDocument innerClassName AttributeContext flags 609
+innerclass innerClass javax/swing/text/html/HTMLDocument$RunElement outerClass javax/swing/text/html/HTMLDocument innerClassName RunElement flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$BlockElement outerClass javax/swing/text/html/HTMLDocument innerClassName BlockElement flags 1
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$Parser outerClass javax/swing/text/html/HTMLEditorKit innerClassName Parser flags 409
+innerclass innerClass javax/swing/text/AbstractDocument$ElementEdit outerClass javax/swing/text/AbstractDocument innerClassName ElementEdit flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$Iterator outerClass javax/swing/text/html/HTMLDocument innerClassName Iterator flags 409
+innerclass innerClass javax/swing/text/AbstractDocument$AbstractElement outerClass javax/swing/text/AbstractDocument innerClassName AbstractElement flags 401
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$FormAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName FormAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$CharacterAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName CharacterAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$PreAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName PreAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$HiddenAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName HiddenAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$IsindexAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName IsindexAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName SpecialAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$ParagraphAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName ParagraphAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName BlockAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader
+header extends javax/swing/text/html/HTMLEditorKit$ParserCallback nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$ParserCallback outerClass javax/swing/text/html/HTMLEditorKit innerClassName ParserCallback flags 9
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName BlockAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$ParagraphAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName ParagraphAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$CharacterAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName CharacterAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName SpecialAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$FormAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName FormAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$HiddenAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName HiddenAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$IsindexAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName IsindexAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$PreAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName PreAction flags 1
+innerclass innerClass javax/swing/text/DefaultStyledDocument$ElementSpec outerClass javax/swing/text/DefaultStyledDocument innerClassName ElementSpec flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$BranchElement outerClass javax/swing/text/AbstractDocument innerClassName BranchElement flags 1
+innerclass innerClass javax/swing/text/AbstractDocument$ElementEdit outerClass javax/swing/text/AbstractDocument innerClassName ElementEdit flags 9
+innerclass innerClass javax/swing/text/AbstractDocument$DefaultDocumentEvent outerClass javax/swing/text/AbstractDocument innerClassName DefaultDocumentEvent flags 1
+innerclass innerClass javax/swing/event/DocumentEvent$EventType outerClass javax/swing/event/DocumentEvent innerClassName EventType flags 19
+innerclass innerClass javax/swing/text/AbstractDocument$Content outerClass javax/swing/text/AbstractDocument innerClassName Content flags 609
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$UnknownTag outerClass javax/swing/text/html/HTML innerClassName UnknownTag flags 9
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$TagAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName BlockAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$CharacterAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$TagAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$CharacterAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName CharacterAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$ParserCallback outerClass javax/swing/text/html/HTMLEditorKit innerClassName ParserCallback flags 9
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$FormAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$FormAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName FormAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName SpecialAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/JToggleButton$ToggleButtonModel outerClass javax/swing/JToggleButton innerClassName ToggleButtonModel flags 9
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$HiddenAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$TagAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$HiddenAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName HiddenAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$IsindexAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$TagAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$IsindexAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName IsindexAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$ParagraphAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$ParagraphAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName ParagraphAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName BlockAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$PreAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$PreAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName PreAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$BlockAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName BlockAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+
+class name javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction
+header extends javax/swing/text/html/HTMLDocument$HTMLReader$TagAction nestHost javax/swing/text/html/HTMLDocument flags 21
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader outerClass javax/swing/text/html/HTMLDocument innerClassName HTMLReader flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$SpecialAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName SpecialAction flags 1
+innerclass innerClass javax/swing/text/html/HTMLDocument$HTMLReader$TagAction outerClass javax/swing/text/html/HTMLDocument$HTMLReader innerClassName TagAction flags 1
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+
+class name javax/swing/text/html/HTMLEditorKit
+header extends javax/swing/text/StyledEditorKit implements javax/accessibility/Accessible nestMembers javax/swing/text/html/HTMLEditorKit$InsertHTMLTextAction,javax/swing/text/html/HTMLEditorKit$HTMLTextAction,javax/swing/text/html/HTMLEditorKit$HTMLFactory,javax/swing/text/html/HTMLEditorKit$ParserCallback,javax/swing/text/html/HTMLEditorKit$Parser,javax/swing/text/html/HTMLEditorKit$LinkController flags 21
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$LinkController outerClass javax/swing/text/html/HTMLEditorKit innerClassName LinkController flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$Parser outerClass javax/swing/text/html/HTMLEditorKit innerClassName Parser flags 409
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$ParserCallback outerClass javax/swing/text/html/HTMLEditorKit innerClassName ParserCallback flags 9
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$UnknownTag outerClass javax/swing/text/html/HTML innerClassName UnknownTag flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$HTMLFactory outerClass javax/swing/text/html/HTMLEditorKit innerClassName HTMLFactory flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$InsertHTMLTextAction outerClass javax/swing/text/html/HTMLEditorKit innerClassName InsertHTMLTextAction flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$HTMLTextAction outerClass javax/swing/text/html/HTMLEditorKit innerClassName HTMLTextAction flags 409
+
+class name javax/swing/text/html/HTMLEditorKit$HTMLFactory
+header extends java/lang/Object implements javax/swing/text/ViewFactory nestHost javax/swing/text/html/HTMLEditorKit flags 21
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$HTMLFactory outerClass javax/swing/text/html/HTMLEditorKit innerClassName HTMLFactory flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$UnknownTag outerClass javax/swing/text/html/HTML innerClassName UnknownTag flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/HTMLEditorKit$HTMLTextAction
+header extends javax/swing/text/StyledEditorKit$StyledTextAction nestHost javax/swing/text/html/HTMLEditorKit flags 421
+innerclass innerClass javax/swing/text/StyledEditorKit$StyledTextAction outerClass javax/swing/text/StyledEditorKit innerClassName StyledTextAction flags 409
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$HTMLTextAction outerClass javax/swing/text/html/HTMLEditorKit innerClassName HTMLTextAction flags 409
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+
+class name javax/swing/text/html/HTMLEditorKit$InsertHTMLTextAction
+header extends javax/swing/text/html/HTMLEditorKit$HTMLTextAction nestHost javax/swing/text/html/HTMLEditorKit flags 21
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$InsertHTMLTextAction outerClass javax/swing/text/html/HTMLEditorKit innerClassName InsertHTMLTextAction flags 9
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$HTMLTextAction outerClass javax/swing/text/html/HTMLEditorKit innerClassName HTMLTextAction flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/HTMLEditorKit$LinkController
+header extends java/awt/event/MouseAdapter implements java/awt/event/MouseMotionListener,java/io/Serializable nestHost javax/swing/text/html/HTMLEditorKit flags 21
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$LinkController outerClass javax/swing/text/html/HTMLEditorKit innerClassName LinkController flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/event/HyperlinkEvent$EventType outerClass javax/swing/event/HyperlinkEvent innerClassName EventType flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/HTMLWriter
+header extends javax/swing/text/AbstractWriter flags 21
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/ImageView
+header extends javax/swing/text/View flags 21
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/Position$Bias outerClass javax/swing/text/Position innerClassName Bias flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/StyleSheet
+header extends javax/swing/text/StyleContext nestMembers javax/swing/text/html/StyleSheet$ListPainter,javax/swing/text/html/StyleSheet$BoxPainter flags 21
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/StyleSheet$BoxPainter outerClass javax/swing/text/html/StyleSheet innerClassName BoxPainter flags 9
+innerclass innerClass javax/swing/text/html/StyleSheet$ListPainter outerClass javax/swing/text/html/StyleSheet innerClassName ListPainter flags 9
+innerclass innerClass javax/swing/text/StyleContext$SmallAttributeSet outerClass javax/swing/text/StyleContext innerClassName SmallAttributeSet flags 1
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/StyleSheet$ListPainter
+header extends java/lang/Object implements java/io/Serializable nestHost javax/swing/text/html/StyleSheet flags 21
+innerclass innerClass javax/swing/text/html/StyleSheet$ListPainter outerClass javax/swing/text/html/StyleSheet innerClassName ListPainter flags 9
+innerclass innerClass javax/swing/text/html/CSS$Attribute outerClass javax/swing/text/html/CSS innerClassName Attribute flags 19
+innerclass innerClass javax/swing/text/html/HTML$Tag outerClass javax/swing/text/html/HTML innerClassName Tag flags 9
+innerclass innerClass javax/swing/text/html/HTML$Attribute outerClass javax/swing/text/html/HTML innerClassName Attribute flags 19
+innerclass innerClass java/awt/RenderingHints$Key outerClass java/awt/RenderingHints innerClassName Key flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/swing/text/html/parser/ParserDelegator
+header extends javax/swing/text/html/HTMLEditorKit$Parser implements java/io/Serializable flags 21
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$Parser outerClass javax/swing/text/html/HTMLEditorKit innerClassName Parser flags 409
+innerclass innerClass javax/swing/text/html/HTMLEditorKit$ParserCallback outerClass javax/swing/text/html/HTMLEditorKit innerClassName ParserCallback flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.management-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,102 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name javax/management/modelmbean/DescriptorSupport
+header extends java/lang/Object implements javax/management/Descriptor flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/modelmbean/ModelMBeanAttributeInfo
+header extends javax/management/MBeanAttributeInfo implements javax/management/DescriptorAccess flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/modelmbean/ModelMBeanConstructorInfo
+header extends javax/management/MBeanConstructorInfo implements javax/management/DescriptorAccess flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/modelmbean/ModelMBeanInfoSupport
+header extends javax/management/MBeanInfo implements javax/management/modelmbean/ModelMBeanInfo flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/modelmbean/ModelMBeanNotificationInfo
+header extends javax/management/MBeanNotificationInfo implements javax/management/DescriptorAccess flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/modelmbean/ModelMBeanOperationInfo
+header extends javax/management/MBeanOperationInfo implements javax/management/DescriptorAccess flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/relation/MBeanServerNotificationFilter
+header extends javax/management/NotificationFilterSupport flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/relation/RelationService
+header extends javax/management/NotificationBroadcasterSupport implements javax/management/relation/RelationServiceMBean,javax/management/MBeanRegistration,javax/management/NotificationListener flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name javax/management/relation/RelationTypeSupport
+header extends java/lang/Object implements javax/management/relation/RelationType flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/io/ObjectInputStream$GetField outerClass java/io/ObjectInputStream innerClassName GetField flags 409
+innerclass innerClass java/io/ObjectOutputStream$PutField outerClass java/io/ObjectOutputStream innerClassName PutField flags 409
+
+class name javax/management/timer/Timer
+header extends javax/management/NotificationBroadcasterSupport implements javax/management/timer/TimerMBean,javax/management/MBeanRegistration flags 21
+innerclass innerClass java/lang/System$Logger outerClass java/lang/System innerClassName Logger flags 609
+innerclass innerClass java/lang/System$Logger$Level outerClass java/lang/System$Logger innerClassName Level flags 4019
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.management.rmi-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name javax/management/remote/rmi/RMIJRMPServerImpl
+header extends javax/management/remote/rmi/RMIServerImpl flags 21
+innerclass innerClass java/io/ObjectInputFilter$Config outerClass java/io/ObjectInputFilter innerClassName Config flags 19
+innerclass innerClass java/io/ObjectInputFilter$Status outerClass java/io/ObjectInputFilter innerClassName Status flags 4019
+innerclass innerClass java/io/ObjectInputFilter$FilterInfo outerClass java/io/ObjectInputFilter innerClassName FilterInfo flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.net.http-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,89 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name java/net/http/HttpClient
+header extends java/lang/Object nestMembers java/net/http/HttpClient$Redirect,java/net/http/HttpClient$Version,java/net/http/HttpClient$Builder flags 421
+innerclass innerClass java/net/http/HttpClient$Builder outerClass java/net/http/HttpClient innerClassName Builder flags 609
+innerclass innerClass java/net/http/HttpClient$Redirect outerClass java/net/http/HttpClient innerClassName Redirect flags 4019
+innerclass innerClass java/net/http/HttpClient$Version outerClass java/net/http/HttpClient innerClassName Version flags 4019
+innerclass innerClass java/net/http/HttpResponse$BodyHandler outerClass java/net/http/HttpResponse innerClassName BodyHandler flags 609
+innerclass innerClass java/net/http/HttpResponse$PushPromiseHandler outerClass java/net/http/HttpResponse innerClassName PushPromiseHandler flags 609
+innerclass innerClass java/net/http/WebSocket$Builder outerClass java/net/http/WebSocket innerClassName Builder flags 609
+
+class name java/net/http/HttpRequest$BodyPublisher
+header extends java/lang/Object implements java/util/concurrent/Flow$Publisher nestHost java/net/http/HttpRequest flags 601 signature Ljava/lang/Object;Ljava/util/concurrent/Flow$Publisher<Ljava/nio/ByteBuffer;>;
+innerclass innerClass java/net/http/HttpRequest$BodyPublisher outerClass java/net/http/HttpRequest innerClassName BodyPublisher flags 609
+innerclass innerClass java/util/concurrent/Flow$Publisher outerClass java/util/concurrent/Flow innerClassName Publisher flags 609
+
+class name java/net/http/HttpRequest$BodyPublishers
+header extends java/lang/Object nestHost java/net/http/HttpRequest flags 21
+innerclass innerClass java/util/concurrent/Flow$Publisher outerClass java/util/concurrent/Flow innerClassName Publisher flags 609
+innerclass innerClass java/net/http/HttpRequest$BodyPublishers outerClass java/net/http/HttpRequest innerClassName BodyPublishers flags 9
+innerclass innerClass java/net/http/HttpRequest$BodyPublisher outerClass java/net/http/HttpRequest innerClassName BodyPublisher flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/net/http/HttpResponse$BodyHandler
+header extends java/lang/Object nestHost java/net/http/HttpResponse flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object; runtimeAnnotations @Ljava/lang/FunctionalInterface;
+innerclass innerClass java/net/http/HttpResponse$BodyHandler outerClass java/net/http/HttpResponse innerClassName BodyHandler flags 609
+innerclass innerClass java/net/http/HttpResponse$ResponseInfo outerClass java/net/http/HttpResponse innerClassName ResponseInfo flags 609
+innerclass innerClass java/net/http/HttpResponse$BodySubscriber outerClass java/net/http/HttpResponse innerClassName BodySubscriber flags 609
+
+class name java/net/http/HttpResponse$BodyHandlers
+header extends java/lang/Object nestHost java/net/http/HttpResponse flags 21
+innerclass innerClass java/util/concurrent/Flow$Subscriber outerClass java/util/concurrent/Flow innerClassName Subscriber flags 609
+innerclass innerClass java/net/http/HttpResponse$BodyHandler outerClass java/net/http/HttpResponse innerClassName BodyHandler flags 609
+innerclass innerClass java/net/http/HttpResponse$BodyHandlers outerClass java/net/http/HttpResponse innerClassName BodyHandlers flags 9
+innerclass innerClass java/net/http/HttpResponse$ResponseInfo outerClass java/net/http/HttpResponse innerClassName ResponseInfo flags 609
+innerclass innerClass java/net/http/HttpResponse$BodySubscriber outerClass java/net/http/HttpResponse innerClassName BodySubscriber flags 609
+innerclass innerClass java/net/http/HttpResponse$BodySubscribers outerClass java/net/http/HttpResponse innerClassName BodySubscribers flags 9
+innerclass innerClass java/util/concurrent/Flow$Publisher outerClass java/util/concurrent/Flow innerClassName Publisher flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/net/http/HttpResponse$BodySubscriber
+header extends java/lang/Object implements java/util/concurrent/Flow$Subscriber nestHost java/net/http/HttpResponse flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/util/concurrent/Flow$Subscriber<Ljava/util/List<Ljava/nio/ByteBuffer;>;>;
+innerclass innerClass java/net/http/HttpResponse$BodySubscriber outerClass java/net/http/HttpResponse innerClassName BodySubscriber flags 609
+innerclass innerClass java/util/concurrent/Flow$Subscriber outerClass java/util/concurrent/Flow innerClassName Subscriber flags 609
+
+class name java/net/http/HttpResponse$BodySubscribers
+header extends java/lang/Object nestHost java/net/http/HttpResponse flags 21
+innerclass innerClass java/util/concurrent/Flow$Subscriber outerClass java/util/concurrent/Flow innerClassName Subscriber flags 609
+innerclass innerClass java/net/http/HttpResponse$BodySubscribers outerClass java/net/http/HttpResponse innerClassName BodySubscribers flags 9
+innerclass innerClass java/net/http/HttpResponse$BodySubscriber outerClass java/net/http/HttpResponse innerClassName BodySubscriber flags 609
+innerclass innerClass java/util/concurrent/Flow$Publisher outerClass java/util/concurrent/Flow innerClassName Publisher flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name java/net/http/HttpResponse$PushPromiseHandler
+header extends java/lang/Object nestHost java/net/http/HttpResponse flags 601 signature <T:Ljava/lang/Object;>Ljava/lang/Object;
+innerclass innerClass java/net/http/HttpResponse$PushPromiseHandler outerClass java/net/http/HttpResponse innerClassName PushPromiseHandler flags 609
+innerclass innerClass java/net/http/HttpResponse$BodyHandler outerClass java/net/http/HttpResponse innerClassName BodyHandler flags 609
+
+class name java/net/http/HttpResponse$ResponseInfo
+header extends java/lang/Object nestHost java/net/http/HttpResponse flags 601
+innerclass innerClass java/net/http/HttpResponse$ResponseInfo outerClass java/net/http/HttpResponse innerClassName ResponseInfo flags 609
+innerclass innerClass java/net/http/HttpClient$Version outerClass java/net/http/HttpClient innerClassName Version flags 4019
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.xml-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,47 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name javax/xml/catalog/CatalogFeatures$Builder
+header extends java/lang/Object nestHost javax/xml/catalog/CatalogFeatures flags 21
+innerclass innerClass javax/xml/catalog/CatalogFeatures$Builder outerClass javax/xml/catalog/CatalogFeatures innerClassName Builder flags 9
+innerclass innerClass javax/xml/catalog/CatalogFeatures$Feature outerClass javax/xml/catalog/CatalogFeatures innerClassName Feature flags 4019
+
+class name javax/xml/parsers/DocumentBuilderFactory
+method name newDefaultNSInstance descriptor ()Ljavax/xml/parsers/DocumentBuilderFactory; flags 9
+method name newNSInstance descriptor ()Ljavax/xml/parsers/DocumentBuilderFactory; flags 9
+method name newNSInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/parsers/DocumentBuilderFactory; flags 9
+
+class name javax/xml/parsers/SAXParserFactory
+method name newDefaultNSInstance descriptor ()Ljavax/xml/parsers/SAXParserFactory; flags 9
+method name newNSInstance descriptor ()Ljavax/xml/parsers/SAXParserFactory; flags 9
+method name newNSInstance descriptor (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/parsers/SAXParserFactory; flags 9
+
+class name javax/xml/stream/XMLInputFactory
+method name newFactory descriptor ()Ljavax/xml/stream/XMLInputFactory; thrownTypes javax/xml/stream/FactoryConfigurationError flags 9
+-method name newFactory descriptor ()Ljavax/xml/stream/XMLInputFactory;
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/java.xml.crypto-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name javax/xml/crypto/dsig/CanonicalizationMethod
+field name INCLUSIVE_11 descriptor Ljava/lang/String; constantValue http://www.w3.org/2006/12/xml-c14n11 flags 19
+field name INCLUSIVE_11_WITH_COMMENTS descriptor Ljava/lang/String; constantValue http://www.w3.org/2006/12/xml-c14n11#WithComments flags 19
+
+class name javax/xml/crypto/dsig/keyinfo/KeyValue
+field name EC_TYPE descriptor Ljava/lang/String; constantValue http://www.w3.org/2009/xmldsig11#ECKeyValue flags 19
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/jdk.compiler-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name com/sun/source/util/JavacTask
+method name setParameterNameProvider descriptor (Lcom/sun/source/util/ParameterNameProvider;)V flags 1
+
+class name com/sun/source/util/ParameterNameProvider
+header extends java/lang/Object flags 601
+method name getParameterName descriptor (Ljavax/lang/model/element/VariableElement;)Ljava/lang/CharSequence; flags 401
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/jdk.httpserver-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,52 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name com/sun/net/httpserver/Authenticator$Failure
+header extends com/sun/net/httpserver/Authenticator$Result nestHost com/sun/net/httpserver/Authenticator flags 21
+innerclass innerClass com/sun/net/httpserver/Authenticator$Result outerClass com/sun/net/httpserver/Authenticator innerClassName Result flags 409
+innerclass innerClass com/sun/net/httpserver/Authenticator$Failure outerClass com/sun/net/httpserver/Authenticator innerClassName Failure flags 9
+
+class name com/sun/net/httpserver/Authenticator$Retry
+header extends com/sun/net/httpserver/Authenticator$Result nestHost com/sun/net/httpserver/Authenticator flags 21
+innerclass innerClass com/sun/net/httpserver/Authenticator$Result outerClass com/sun/net/httpserver/Authenticator innerClassName Result flags 409
+innerclass innerClass com/sun/net/httpserver/Authenticator$Retry outerClass com/sun/net/httpserver/Authenticator innerClassName Retry flags 9
+
+class name com/sun/net/httpserver/Authenticator$Success
+header extends com/sun/net/httpserver/Authenticator$Result nestHost com/sun/net/httpserver/Authenticator flags 21
+innerclass innerClass com/sun/net/httpserver/Authenticator$Result outerClass com/sun/net/httpserver/Authenticator innerClassName Result flags 409
+innerclass innerClass com/sun/net/httpserver/Authenticator$Success outerClass com/sun/net/httpserver/Authenticator innerClassName Success flags 9
+
+class name com/sun/net/httpserver/BasicAuthenticator
+header extends com/sun/net/httpserver/Authenticator flags 421
+innerclass innerClass com/sun/net/httpserver/Authenticator$Retry outerClass com/sun/net/httpserver/Authenticator innerClassName Retry flags 9
+innerclass innerClass com/sun/net/httpserver/Authenticator$Failure outerClass com/sun/net/httpserver/Authenticator innerClassName Failure flags 9
+innerclass innerClass java/util/Base64$Decoder outerClass java/util/Base64 innerClassName Decoder flags 9
+innerclass innerClass com/sun/net/httpserver/Authenticator$Success outerClass com/sun/net/httpserver/Authenticator innerClassName Success flags 9
+innerclass innerClass com/sun/net/httpserver/Authenticator$Result outerClass com/sun/net/httpserver/Authenticator innerClassName Result flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/jdk.javadoc-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,93 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+module name jdk.javadoc
+header exports jdk/javadoc/doclet requires name\u0020;java.base\u0020;flags\u0020;8000,name\u0020;java.xml\u0020;flags\u0020;0,name\u0020;java.compiler\u0020;flags\u0020;20,name\u0020;jdk.compiler\u0020;flags\u0020;20 provides interface\u0020;java/util/spi/ToolProvider\u0020;impls\u0020;jdk/javadoc/internal/tool/JavadocToolProvider,interface\u0020;javax/tools/DocumentationTool\u0020;impls\u0020;jdk/javadoc/internal/api/JavadocTool,interface\u0020;javax/tools/Tool\u0020;impls\u0020;jdk/javadoc/internal/api/JavadocTool target linux-amd64 flags 8000
+
+-class name com/sun/javadoc/AnnotatedType
+
+-class name com/sun/javadoc/AnnotationDesc
+
+-class name com/sun/javadoc/AnnotationDesc$ElementValuePair
+
+-class name com/sun/javadoc/AnnotationTypeDoc
+
+-class name com/sun/javadoc/AnnotationTypeElementDoc
+
+-class name com/sun/javadoc/AnnotationValue
+
+-class name com/sun/javadoc/ClassDoc
+
+-class name com/sun/javadoc/ConstructorDoc
+
+-class name com/sun/javadoc/Doc
+
+-class name com/sun/javadoc/DocErrorReporter
+
+-class name com/sun/javadoc/Doclet
+
+-class name com/sun/javadoc/ExecutableMemberDoc
+
+-class name com/sun/javadoc/FieldDoc
+
+-class name com/sun/javadoc/LanguageVersion
+
+-class name com/sun/javadoc/MemberDoc
+
+-class name com/sun/javadoc/MethodDoc
+
+-class name com/sun/javadoc/PackageDoc
+
+-class name com/sun/javadoc/ParamTag
+
+-class name com/sun/javadoc/Parameter
+
+-class name com/sun/javadoc/ParameterizedType
+
+-class name com/sun/javadoc/ProgramElementDoc
+
+-class name com/sun/javadoc/RootDoc
+
+-class name com/sun/javadoc/SeeTag
+
+-class name com/sun/javadoc/SerialFieldTag
+
+-class name com/sun/javadoc/SourcePosition
+
+-class name com/sun/javadoc/Tag
+
+-class name com/sun/javadoc/ThrowsTag
+
+-class name com/sun/javadoc/Type
+
+-class name com/sun/javadoc/TypeVariable
+
+-class name com/sun/javadoc/WildcardType
+
+-class name com/sun/tools/javadoc/Main
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/jdk.jlink-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,31 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+module name jdk.jlink
+header requires name\u0020;java.base\u0020;flags\u0020;8000,name\u0020;jdk.internal.opt\u0020;flags\u0020;0,name\u0020;jdk.jdeps\u0020;flags\u0020;0 uses jdk/tools/jlink/plugin/Plugin provides interface\u0020;java/util/spi/ToolProvider\u0020;impls\u0020;jdk/tools/jmod/Main$JmodToolProvider\u005C;u002C;jdk/tools/jlink/internal/Main$JlinkToolProvider,interface\u0020;jdk/tools/jlink/plugin/Plugin\u0020;impls\u0020;jdk/tools/jlink/internal/plugins/DefaultStripDebugPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/StripJavaDebugAttributesPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/ExcludePlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/ExcludeFilesPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/ExcludeJmodSectionPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/LegalNoticeFilePlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/SystemModulesPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/StripNativeCommandsPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/OrderResourcesPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/DefaultCompressPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/ExcludeVMPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/IncludeLocalesPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/GenerateJLIClassesPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/ReleaseInfoPlugin\u005C;u002C;jdk/tools/jlink/internal/plugins/StripNativeDebugSymbolsPlugin target linux-amd64 flags 8000
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/data/symbols/jdk.jshell-D.sym.txt	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,148 @@
+#
+# Copyright (c) 2019, 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.
+#
+# ##########################################################
+# ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
+# ##########################################################
+#
+class name jdk/jshell/ErroneousSnippet
+header extends jdk/jshell/Snippet flags 21
+innerclass innerClass jdk/jshell/Snippet$SubKind outerClass jdk/jshell/Snippet innerClassName SubKind flags 4019
+innerclass innerClass jdk/jshell/Snippet$Kind outerClass jdk/jshell/Snippet innerClassName Kind flags 4019
+
+class name jdk/jshell/JShell
+header extends java/lang/Object implements java/lang/AutoCloseable nestMembers jdk/jshell/JShell$Subscription,jdk/jshell/JShell$Builder flags 21
+innerclass innerClass jdk/jshell/JShell$Builder outerClass jdk/jshell/JShell innerClassName Builder flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ExecutionControlException outerClass jdk/jshell/spi/ExecutionControl innerClassName ExecutionControlException flags 409
+innerclass innerClass jdk/jshell/Snippet$Status outerClass jdk/jshell/Snippet innerClassName Status flags 4019
+innerclass innerClass jdk/jshell/spi/ExecutionControl$EngineTerminationException outerClass jdk/jshell/spi/ExecutionControl innerClassName EngineTerminationException flags 9
+innerclass innerClass jdk/jshell/JShell$Subscription outerClass jdk/jshell/JShell innerClassName Subscription flags 1
+innerclass innerClass jdk/jshell/Snippet$Kind outerClass jdk/jshell/Snippet innerClassName Kind flags 4019
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/Snippet
+header extends java/lang/Object nestMembers jdk/jshell/Snippet$Status,jdk/jshell/Snippet$SubKind,jdk/jshell/Snippet$Kind flags 421
+innerclass innerClass jdk/jshell/Snippet$SubKind outerClass jdk/jshell/Snippet innerClassName SubKind flags 4019
+innerclass innerClass jdk/jshell/Snippet$Status outerClass jdk/jshell/Snippet innerClassName Status flags 4019
+innerclass innerClass jdk/jshell/Snippet$Kind outerClass jdk/jshell/Snippet innerClassName Kind flags 4019
+
+class name jdk/jshell/SourceCodeAnalysis$CompletionInfo
+header extends java/lang/Object nestHost jdk/jshell/SourceCodeAnalysis flags 601
+innerclass innerClass jdk/jshell/SourceCodeAnalysis$CompletionInfo outerClass jdk/jshell/SourceCodeAnalysis innerClassName CompletionInfo flags 609
+innerclass innerClass jdk/jshell/SourceCodeAnalysis$Completeness outerClass jdk/jshell/SourceCodeAnalysis innerClassName Completeness flags 4019
+
+class name jdk/jshell/SourceCodeAnalysis$SnippetWrapper
+header extends java/lang/Object nestHost jdk/jshell/SourceCodeAnalysis flags 601
+innerclass innerClass jdk/jshell/SourceCodeAnalysis$SnippetWrapper outerClass jdk/jshell/SourceCodeAnalysis innerClassName SnippetWrapper flags 609
+innerclass innerClass jdk/jshell/Snippet$Kind outerClass jdk/jshell/Snippet innerClassName Kind flags 4019
+
+class name jdk/jshell/execution/DirectExecutionControl
+header extends java/lang/Object implements jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassBytecodes outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassBytecodes flags 19
+innerclass innerClass jdk/jshell/spi/ExecutionControl$NotImplementedException outerClass jdk/jshell/spi/ExecutionControl innerClassName NotImplementedException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$InternalException outerClass jdk/jshell/spi/ExecutionControl innerClassName InternalException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$RunException outerClass jdk/jshell/spi/ExecutionControl innerClassName RunException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$EngineTerminationException outerClass jdk/jshell/spi/ExecutionControl innerClassName EngineTerminationException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ResolutionException outerClass jdk/jshell/spi/ExecutionControl innerClassName ResolutionException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$UserException outerClass jdk/jshell/spi/ExecutionControl innerClassName UserException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassInstallException outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassInstallException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ExecutionControlException outerClass jdk/jshell/spi/ExecutionControl innerClassName ExecutionControlException flags 409
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/execution/JdiExecutionControl
+header extends jdk/jshell/execution/StreamingExecutionControl implements jdk/jshell/spi/ExecutionControl flags 421
+innerclass innerClass jdk/jshell/spi/ExecutionControl$EngineTerminationException outerClass jdk/jshell/spi/ExecutionControl innerClassName EngineTerminationException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassInstallException outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassInstallException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassBytecodes outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassBytecodes flags 19
+innerclass innerClass jdk/jshell/spi/ExecutionControl$NotImplementedException outerClass jdk/jshell/spi/ExecutionControl innerClassName NotImplementedException flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/execution/JdiInitiator
+header extends java/lang/Object flags 21
+innerclass innerClass java/util/Map$Entry outerClass java/util/Map innerClassName Entry flags 609
+innerclass innerClass com/sun/jdi/connect/Connector$Argument outerClass com/sun/jdi/connect/Connector innerClassName Argument flags 609
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/execution/LocalExecutionControl
+header extends jdk/jshell/execution/DirectExecutionControl flags 21
+innerclass innerClass java/lang/Thread$UncaughtExceptionHandler outerClass java/lang/Thread innerClassName UncaughtExceptionHandler flags 609
+innerclass innerClass jdk/jshell/spi/ExecutionControl$StoppedException outerClass jdk/jshell/spi/ExecutionControl innerClassName StoppedException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$InternalException outerClass jdk/jshell/spi/ExecutionControl innerClassName InternalException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$EngineTerminationException outerClass jdk/jshell/spi/ExecutionControl innerClassName EngineTerminationException flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/execution/StreamingExecutionControl
+header extends java/lang/Object implements jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$EngineTerminationException outerClass jdk/jshell/spi/ExecutionControl innerClassName EngineTerminationException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$NotImplementedException outerClass jdk/jshell/spi/ExecutionControl innerClassName NotImplementedException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$InternalException outerClass jdk/jshell/spi/ExecutionControl innerClassName InternalException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassInstallException outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassInstallException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$UserException outerClass jdk/jshell/spi/ExecutionControl innerClassName UserException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ResolutionException outerClass jdk/jshell/spi/ExecutionControl innerClassName ResolutionException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$RunException outerClass jdk/jshell/spi/ExecutionControl innerClassName RunException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$StoppedException outerClass jdk/jshell/spi/ExecutionControl innerClassName StoppedException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassBytecodes outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassBytecodes flags 19
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/spi/ExecutionControl$ClassInstallException
+header extends jdk/jshell/spi/ExecutionControl$ExecutionControlException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ExecutionControlException outerClass jdk/jshell/spi/ExecutionControl innerClassName ExecutionControlException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ClassInstallException outerClass jdk/jshell/spi/ExecutionControl innerClassName ClassInstallException flags 9
+
+class name jdk/jshell/spi/ExecutionControl$EngineTerminationException
+header extends jdk/jshell/spi/ExecutionControl$ExecutionControlException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ExecutionControlException outerClass jdk/jshell/spi/ExecutionControl innerClassName ExecutionControlException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$EngineTerminationException outerClass jdk/jshell/spi/ExecutionControl innerClassName EngineTerminationException flags 9
+
+class name jdk/jshell/spi/ExecutionControl$InternalException
+header extends jdk/jshell/spi/ExecutionControl$ExecutionControlException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ExecutionControlException outerClass jdk/jshell/spi/ExecutionControl innerClassName ExecutionControlException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$InternalException outerClass jdk/jshell/spi/ExecutionControl innerClassName InternalException flags 9
+
+class name jdk/jshell/spi/ExecutionControl$NotImplementedException
+header extends jdk/jshell/spi/ExecutionControl$InternalException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$InternalException outerClass jdk/jshell/spi/ExecutionControl innerClassName InternalException flags 9
+innerclass innerClass jdk/jshell/spi/ExecutionControl$NotImplementedException outerClass jdk/jshell/spi/ExecutionControl innerClassName NotImplementedException flags 9
+
+class name jdk/jshell/spi/ExecutionControl$ResolutionException
+header extends jdk/jshell/spi/ExecutionControl$RunException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$RunException outerClass jdk/jshell/spi/ExecutionControl innerClassName RunException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ResolutionException outerClass jdk/jshell/spi/ExecutionControl innerClassName ResolutionException flags 9
+innerclass innerClass java/lang/invoke/MethodHandles$Lookup outerClass java/lang/invoke/MethodHandles innerClassName Lookup flags 19
+
+class name jdk/jshell/spi/ExecutionControl$RunException
+header extends jdk/jshell/spi/ExecutionControl$ExecutionControlException nestHost jdk/jshell/spi/ExecutionControl flags 421
+innerclass innerClass jdk/jshell/spi/ExecutionControl$ExecutionControlException outerClass jdk/jshell/spi/ExecutionControl innerClassName ExecutionControlException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$RunException outerClass jdk/jshell/spi/ExecutionControl innerClassName RunException flags 409
+
+class name jdk/jshell/spi/ExecutionControl$StoppedException
+header extends jdk/jshell/spi/ExecutionControl$RunException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$RunException outerClass jdk/jshell/spi/ExecutionControl innerClassName RunException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$StoppedException outerClass jdk/jshell/spi/ExecutionControl innerClassName StoppedException flags 9
+
+class name jdk/jshell/spi/ExecutionControl$UserException
+header extends jdk/jshell/spi/ExecutionControl$RunException nestHost jdk/jshell/spi/ExecutionControl flags 21
+innerclass innerClass jdk/jshell/spi/ExecutionControl$RunException outerClass jdk/jshell/spi/ExecutionControl innerClassName RunException flags 409
+innerclass innerClass jdk/jshell/spi/ExecutionControl$UserException outerClass jdk/jshell/spi/ExecutionControl innerClassName UserException flags 9
+
--- a/make/data/symbols/symbols	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/data/symbols/symbols	Fri Jun 21 09:05:45 2019 -0700
@@ -29,10 +29,11 @@
 #command used to generate this file:
 #build.tools.symbolgenerator.CreateSymbols build-description-incremental symbols include.list
 #
-generate platforms 7:8:9:A:B:C
+generate platforms 7:8:9:A:B:C:D
 platform version 8 files java.activation-8.sym.txt:java.base-8.sym.txt:java.compiler-8.sym.txt:java.corba-8.sym.txt:java.datatransfer-8.sym.txt:java.desktop-8.sym.txt:java.instrument-8.sym.txt:java.logging-8.sym.txt:java.management-8.sym.txt:java.management.rmi-8.sym.txt:java.naming-8.sym.txt:java.prefs-8.sym.txt:java.rmi-8.sym.txt:java.scripting-8.sym.txt:java.security.jgss-8.sym.txt:java.security.sasl-8.sym.txt:java.sql-8.sym.txt:java.sql.rowset-8.sym.txt:java.transaction-8.sym.txt:java.xml-8.sym.txt:java.xml.bind-8.sym.txt:java.xml.crypto-8.sym.txt:java.xml.ws-8.sym.txt:java.xml.ws.annotation-8.sym.txt:jdk.httpserver-8.sym.txt:jdk.management-8.sym.txt:jdk.scripting.nashorn-8.sym.txt:jdk.sctp-8.sym.txt:jdk.security.auth-8.sym.txt:jdk.security.jgss-8.sym.txt
 platform version 7 base 8 files java.base-7.sym.txt:java.compiler-7.sym.txt:java.datatransfer-7.sym.txt:java.desktop-7.sym.txt:java.logging-7.sym.txt:java.management-7.sym.txt:java.naming-7.sym.txt:java.prefs-7.sym.txt:java.rmi-7.sym.txt:java.scripting-7.sym.txt:java.security.jgss-7.sym.txt:java.security.sasl-7.sym.txt:java.sql-7.sym.txt:java.sql.rowset-7.sym.txt:java.xml-7.sym.txt:java.xml.bind-7.sym.txt:java.xml.ws.annotation-7.sym.txt:jdk.httpserver-7.sym.txt:jdk.management-7.sym.txt:jdk.scripting.nashorn-7.sym.txt:jdk.sctp-7.sym.txt:jdk.security.auth-7.sym.txt:jdk.security.jgss-7.sym.txt
 platform version 9 base 8 files java.activation-9.sym.txt:java.base-9.sym.txt:java.compiler-9.sym.txt:java.corba-9.sym.txt:java.datatransfer-9.sym.txt:java.desktop-9.sym.txt:java.instrument-9.sym.txt:java.logging-9.sym.txt:java.management-9.sym.txt:java.management.rmi-9.sym.txt:java.naming-9.sym.txt:java.prefs-9.sym.txt:java.rmi-9.sym.txt:java.scripting-9.sym.txt:java.se-9.sym.txt:java.se.ee-9.sym.txt:java.security.jgss-9.sym.txt:java.security.sasl-9.sym.txt:java.smartcardio-9.sym.txt:java.sql-9.sym.txt:java.sql.rowset-9.sym.txt:java.transaction-9.sym.txt:java.xml-9.sym.txt:java.xml.bind-9.sym.txt:java.xml.crypto-9.sym.txt:java.xml.ws-9.sym.txt:java.xml.ws.annotation-9.sym.txt:jdk.accessibility-9.sym.txt:jdk.attach-9.sym.txt:jdk.charsets-9.sym.txt:jdk.compiler-9.sym.txt:jdk.crypto.cryptoki-9.sym.txt:jdk.crypto.ec-9.sym.txt:jdk.dynalink-9.sym.txt:jdk.editpad-9.sym.txt:jdk.hotspot.agent-9.sym.txt:jdk.httpserver-9.sym.txt:jdk.incubator.httpclient-9.sym.txt:jdk.jartool-9.sym.txt:jdk.javadoc-9.sym.txt:jdk.jcmd-9.sym.txt:jdk.jconsole-9.sym.txt:jdk.jdeps-9.sym.txt:jdk.jdi-9.sym.txt:jdk.jdwp.agent-9.sym.txt:jdk.jlink-9.sym.txt:jdk.jshell-9.sym.txt:jdk.jsobject-9.sym.txt:jdk.jstatd-9.sym.txt:jdk.localedata-9.sym.txt:jdk.management-9.sym.txt:jdk.management.agent-9.sym.txt:jdk.naming.dns-9.sym.txt:jdk.naming.rmi-9.sym.txt:jdk.net-9.sym.txt:jdk.pack-9.sym.txt:jdk.policytool-9.sym.txt:jdk.rmic-9.sym.txt:jdk.scripting.nashorn-9.sym.txt:jdk.sctp-9.sym.txt:jdk.security.auth-9.sym.txt:jdk.security.jgss-9.sym.txt:jdk.unsupported-9.sym.txt:jdk.xml.dom-9.sym.txt:jdk.zipfs-9.sym.txt
 platform version A base 9 files java.activation-A.sym.txt:java.base-A.sym.txt:java.compiler-A.sym.txt:java.corba-A.sym.txt:java.datatransfer-A.sym.txt:java.desktop-A.sym.txt:java.instrument-A.sym.txt:java.logging-A.sym.txt:java.management-A.sym.txt:java.management.rmi-A.sym.txt:java.naming-A.sym.txt:java.prefs-A.sym.txt:java.rmi-A.sym.txt:java.scripting-A.sym.txt:java.se-A.sym.txt:java.se.ee-A.sym.txt:java.security.jgss-A.sym.txt:java.security.sasl-A.sym.txt:java.smartcardio-A.sym.txt:java.sql-A.sym.txt:java.sql.rowset-A.sym.txt:java.transaction-A.sym.txt:java.xml-A.sym.txt:java.xml.bind-A.sym.txt:java.xml.crypto-A.sym.txt:java.xml.ws-A.sym.txt:java.xml.ws.annotation-A.sym.txt:jdk.accessibility-A.sym.txt:jdk.attach-A.sym.txt:jdk.charsets-A.sym.txt:jdk.compiler-A.sym.txt:jdk.crypto.cryptoki-A.sym.txt:jdk.crypto.ec-A.sym.txt:jdk.dynalink-A.sym.txt:jdk.editpad-A.sym.txt:jdk.hotspot.agent-A.sym.txt:jdk.httpserver-A.sym.txt:jdk.incubator.httpclient-A.sym.txt:jdk.jartool-A.sym.txt:jdk.javadoc-A.sym.txt:jdk.jcmd-A.sym.txt:jdk.jconsole-A.sym.txt:jdk.jdeps-A.sym.txt:jdk.jdi-A.sym.txt:jdk.jdwp.agent-A.sym.txt:jdk.jlink-A.sym.txt:jdk.jshell-A.sym.txt:jdk.jsobject-A.sym.txt:jdk.jstatd-A.sym.txt:jdk.localedata-A.sym.txt:jdk.management-A.sym.txt:jdk.management.agent-A.sym.txt:jdk.naming.dns-A.sym.txt:jdk.naming.rmi-A.sym.txt:jdk.net-A.sym.txt:jdk.pack-A.sym.txt:jdk.policytool-A.sym.txt:jdk.rmic-A.sym.txt:jdk.scripting.nashorn-A.sym.txt:jdk.sctp-A.sym.txt:jdk.security.auth-A.sym.txt:jdk.security.jgss-A.sym.txt:jdk.unsupported-A.sym.txt:jdk.xml.dom-A.sym.txt:jdk.zipfs-A.sym.txt
 platform version B base A files java.activation-B.sym.txt:java.base-B.sym.txt:java.compiler-B.sym.txt:java.corba-B.sym.txt:java.datatransfer-B.sym.txt:java.desktop-B.sym.txt:java.instrument-B.sym.txt:java.logging-B.sym.txt:java.management-B.sym.txt:java.management.rmi-B.sym.txt:java.naming-B.sym.txt:java.net.http-B.sym.txt:java.prefs-B.sym.txt:java.rmi-B.sym.txt:java.scripting-B.sym.txt:java.se-B.sym.txt:java.se.ee-B.sym.txt:java.security.jgss-B.sym.txt:java.security.sasl-B.sym.txt:java.smartcardio-B.sym.txt:java.sql-B.sym.txt:java.sql.rowset-B.sym.txt:java.transaction-B.sym.txt:java.transaction.xa-B.sym.txt:java.xml-B.sym.txt:java.xml.bind-B.sym.txt:java.xml.crypto-B.sym.txt:java.xml.ws-B.sym.txt:java.xml.ws.annotation-B.sym.txt:jdk.accessibility-B.sym.txt:jdk.attach-B.sym.txt:jdk.charsets-B.sym.txt:jdk.compiler-B.sym.txt:jdk.crypto.cryptoki-B.sym.txt:jdk.crypto.ec-B.sym.txt:jdk.dynalink-B.sym.txt:jdk.editpad-B.sym.txt:jdk.hotspot.agent-B.sym.txt:jdk.httpserver-B.sym.txt:jdk.incubator.httpclient-B.sym.txt:jdk.jartool-B.sym.txt:jdk.javadoc-B.sym.txt:jdk.jcmd-B.sym.txt:jdk.jconsole-B.sym.txt:jdk.jdeps-B.sym.txt:jdk.jdi-B.sym.txt:jdk.jdwp.agent-B.sym.txt:jdk.jfr-B.sym.txt:jdk.jlink-B.sym.txt:jdk.jshell-B.sym.txt:jdk.jsobject-B.sym.txt:jdk.jstatd-B.sym.txt:jdk.localedata-B.sym.txt:jdk.management-B.sym.txt:jdk.management.agent-B.sym.txt:jdk.management.jfr-B.sym.txt:jdk.naming.dns-B.sym.txt:jdk.naming.rmi-B.sym.txt:jdk.net-B.sym.txt:jdk.pack-B.sym.txt:jdk.rmic-B.sym.txt:jdk.scripting.nashorn-B.sym.txt:jdk.sctp-B.sym.txt:jdk.security.auth-B.sym.txt:jdk.security.jgss-B.sym.txt:jdk.unsupported-B.sym.txt:jdk.xml.dom-B.sym.txt:jdk.zipfs-B.sym.txt
 platform version C base B files java.base-C.sym.txt:java.compiler-C.sym.txt:java.desktop-C.sym.txt:java.naming-C.sym.txt:java.rmi-C.sym.txt:java.xml-C.sym.txt:jdk.compiler-C.sym.txt:jdk.jfr-C.sym.txt:jdk.jsobject-C.sym.txt:jdk.unsupported-C.sym.txt
+platform version D base C files java.base-D.sym.txt:java.compiler-D.sym.txt:java.desktop-D.sym.txt:java.management-D.sym.txt:java.management.rmi-D.sym.txt:java.net.http-D.sym.txt:java.xml-D.sym.txt:java.xml.crypto-D.sym.txt:jdk.compiler-D.sym.txt:jdk.httpserver-D.sym.txt:jdk.javadoc-D.sym.txt:jdk.jlink-D.sym.txt:jdk.jshell-D.sym.txt
--- a/make/jdk/src/classes/build/tools/generatecacerts/GenerateCacerts.java	Tue Jun 18 21:40:50 2019 -0700
+++ b/make/jdk/src/classes/build/tools/generatecacerts/GenerateCacerts.java	Fri Jun 21 09:05:45 2019 -0700
@@ -25,12 +25,23 @@
 
 package build.tools.generatecacerts;
 
+import java.io.DataOutputStream;
 import java.io.FileOutputStream;
+import java.io.IOException;
 import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
 import java.nio.file.Files;
 import java.nio.file.Path;
-import java.security.KeyStore;
+import java.security.DigestOutputStream;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.cert.CertificateException;
 import java.security.cert.CertificateFactory;
+import java.security.cert.X509Certificate;
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * Generate cacerts
@@ -39,23 +50,99 @@
  */
 public class GenerateCacerts {
     public static void main(String[] args) throws Exception {
-        KeyStore ks = KeyStore.getInstance("JKS");
-        ks.load(null, null);
-        CertificateFactory cf = CertificateFactory.getInstance("X509");
-        Files.list(Path.of(args[0]))
-                .filter(p -> !p.getFileName().toString().equals("README"))
-                .forEach(p -> {
-                    try {
-                        String alias = p.getFileName().toString() + " [jdk]";
-                        try (InputStream fis = Files.newInputStream(p)) {
-                            ks.setCertificateEntry(alias, cf.generateCertificate(fis));
-                        }
-                    } catch (Exception e) {
-                        throw new RuntimeException(e);
-                    }
-                });
         try (FileOutputStream fos = new FileOutputStream(args[1])) {
-            ks.store(fos, "changeit".toCharArray());
+            store(args[0], fos, "changeit".toCharArray());
         }
     }
+
+    // The following code are copied from JavaKeyStore.java.
+
+    private static final int MAGIC = 0xfeedfeed;
+    private static final int VERSION_2 = 0x02;
+
+    // This method is a simplified version of JavaKeyStore::engineStore.
+    // A new "dir" argument is added. All cert names in "dir" is collected into
+    // a sorted array. Each cert is stored with a creation date set to its
+    // notBefore value. Thus the output is determined as long as the certs
+    // are the same.
+    public static void store(String dir, OutputStream stream, char[] password)
+            throws IOException, NoSuchAlgorithmException, CertificateException
+    {
+        byte[] encoded; // the certificate encoding
+        CertificateFactory cf = CertificateFactory.getInstance("X509");
+
+        MessageDigest md = getPreKeyedHash(password);
+        DataOutputStream dos
+                = new DataOutputStream(new DigestOutputStream(stream, md));
+
+        dos.writeInt(MAGIC);
+        // always write the latest version
+        dos.writeInt(VERSION_2);
+
+        // All file names in dir sorted.
+        // README is excluded. Name starting with "." excluded.
+        List<String> entries = Files.list(Path.of(dir))
+                .map(p -> p.getFileName().toString())
+                .filter(s -> !s.equals("README") && !s.startsWith("."))
+                .collect(Collectors.toList());
+
+        entries.sort(String::compareTo);
+
+        dos.writeInt(entries.size());
+
+        for (String entry : entries) {
+
+            String alias = entry + " [jdk]";
+            X509Certificate cert;
+            try (InputStream fis = Files.newInputStream(Path.of(dir, entry))) {
+                cert = (X509Certificate) cf.generateCertificate(fis);
+            }
+
+            dos.writeInt(2);
+
+            // Write the alias
+            dos.writeUTF(alias);
+
+            // Write the (entry creation) date, which is notBefore of the cert
+            dos.writeLong(cert.getNotBefore().getTime());
+
+            // Write the trusted certificate
+            encoded = cert.getEncoded();
+            dos.writeUTF(cert.getType());
+            dos.writeInt(encoded.length);
+            dos.write(encoded);
+        }
+
+        /*
+         * Write the keyed hash which is used to detect tampering with
+         * the keystore (such as deleting or modifying key or
+         * certificate entries).
+         */
+        byte[] digest = md.digest();
+
+        dos.write(digest);
+        dos.flush();
+    }
+
+    private static MessageDigest getPreKeyedHash(char[] password)
+            throws NoSuchAlgorithmException, UnsupportedEncodingException
+    {
+
+        MessageDigest md = MessageDigest.getInstance("SHA");
+        byte[] passwdBytes = convertToBytes(password);
+        md.update(passwdBytes);
+        Arrays.fill(passwdBytes, (byte) 0x00);
+        md.update("Mighty Aphrodite".getBytes("UTF8"));
+        return md;
+    }
+
+    private static byte[] convertToBytes(char[] password) {
+        int i, j;
+        byte[] passwdBytes = new byte[password.length * 2];
+        for (i=0, j=0; i<password.length; i++) {
+            passwdBytes[j++] = (byte)(password[i] >> 8);
+            passwdBytes[j++] = (byte)password[i];
+        }
+        return passwdBytes;
+    }
 }
--- a/src/hotspot/cpu/aarch64/aarch64.ad	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/aarch64.ad	Fri Jun 21 09:05:45 2019 -0700
@@ -957,6 +957,146 @@
     V3, V3_H
 );
 
+// Class for 128 bit register v4
+reg_class v4_reg(
+    V4, V4_H
+);
+
+// Class for 128 bit register v5
+reg_class v5_reg(
+    V5, V5_H
+);
+
+// Class for 128 bit register v6
+reg_class v6_reg(
+    V6, V6_H
+);
+
+// Class for 128 bit register v7
+reg_class v7_reg(
+    V7, V7_H
+);
+
+// Class for 128 bit register v8
+reg_class v8_reg(
+    V8, V8_H
+);
+
+// Class for 128 bit register v9
+reg_class v9_reg(
+    V9, V9_H
+);
+
+// Class for 128 bit register v10
+reg_class v10_reg(
+    V10, V10_H
+);
+
+// Class for 128 bit register v11
+reg_class v11_reg(
+    V11, V11_H
+);
+
+// Class for 128 bit register v12
+reg_class v12_reg(
+    V12, V12_H
+);
+
+// Class for 128 bit register v13
+reg_class v13_reg(
+    V13, V13_H
+);
+
+// Class for 128 bit register v14
+reg_class v14_reg(
+    V14, V14_H
+);
+
+// Class for 128 bit register v15
+reg_class v15_reg(
+    V15, V15_H
+);
+
+// Class for 128 bit register v16
+reg_class v16_reg(
+    V16, V16_H
+);
+
+// Class for 128 bit register v17
+reg_class v17_reg(
+    V17, V17_H
+);
+
+// Class for 128 bit register v18
+reg_class v18_reg(
+    V18, V18_H
+);
+
+// Class for 128 bit register v19
+reg_class v19_reg(
+    V19, V19_H
+);
+
+// Class for 128 bit register v20
+reg_class v20_reg(
+    V20, V20_H
+);
+
+// Class for 128 bit register v21
+reg_class v21_reg(
+    V21, V21_H
+);
+
+// Class for 128 bit register v22
+reg_class v22_reg(
+    V22, V22_H
+);
+
+// Class for 128 bit register v23
+reg_class v23_reg(
+    V23, V23_H
+);
+
+// Class for 128 bit register v24
+reg_class v24_reg(
+    V24, V24_H
+);
+
+// Class for 128 bit register v25
+reg_class v25_reg(
+    V25, V25_H
+);
+
+// Class for 128 bit register v26
+reg_class v26_reg(
+    V26, V26_H
+);
+
+// Class for 128 bit register v27
+reg_class v27_reg(
+    V27, V27_H
+);
+
+// Class for 128 bit register v28
+reg_class v28_reg(
+    V28, V28_H
+);
+
+// Class for 128 bit register v29
+reg_class v29_reg(
+    V29, V29_H
+);
+
+// Class for 128 bit register v30
+reg_class v30_reg(
+    V30, V30_H
+);
+
+// Class for 128 bit register v31
+reg_class v31_reg(
+    V31, V31_H
+);
+
 // Singleton class for condition codes
 reg_class int_flags(RFLAGS);
 
@@ -4774,6 +4914,258 @@
   interface(REG_INTER);
 %}
 
+operand vRegD_V4()
+%{
+  constraint(ALLOC_IN_RC(v4_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V5()
+%{
+  constraint(ALLOC_IN_RC(v5_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V6()
+%{
+  constraint(ALLOC_IN_RC(v6_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V7()
+%{
+  constraint(ALLOC_IN_RC(v7_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V8()
+%{
+  constraint(ALLOC_IN_RC(v8_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V9()
+%{
+  constraint(ALLOC_IN_RC(v9_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V10()
+%{
+  constraint(ALLOC_IN_RC(v10_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V11()
+%{
+  constraint(ALLOC_IN_RC(v11_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V12()
+%{
+  constraint(ALLOC_IN_RC(v12_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V13()
+%{
+  constraint(ALLOC_IN_RC(v13_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V14()
+%{
+  constraint(ALLOC_IN_RC(v14_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V15()
+%{
+  constraint(ALLOC_IN_RC(v15_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V16()
+%{
+  constraint(ALLOC_IN_RC(v16_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V17()
+%{
+  constraint(ALLOC_IN_RC(v17_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V18()
+%{
+  constraint(ALLOC_IN_RC(v18_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V19()
+%{
+  constraint(ALLOC_IN_RC(v19_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V20()
+%{
+  constraint(ALLOC_IN_RC(v20_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V21()
+%{
+  constraint(ALLOC_IN_RC(v21_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V22()
+%{
+  constraint(ALLOC_IN_RC(v22_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V23()
+%{
+  constraint(ALLOC_IN_RC(v23_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V24()
+%{
+  constraint(ALLOC_IN_RC(v24_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V25()
+%{
+  constraint(ALLOC_IN_RC(v25_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V26()
+%{
+  constraint(ALLOC_IN_RC(v26_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V27()
+%{
+  constraint(ALLOC_IN_RC(v27_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V28()
+%{
+  constraint(ALLOC_IN_RC(v28_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V29()
+%{
+  constraint(ALLOC_IN_RC(v29_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V30()
+%{
+  constraint(ALLOC_IN_RC(v30_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
+operand vRegD_V31()
+%{
+  constraint(ALLOC_IN_RC(v31_reg));
+  match(RegD);
+  op_cost(0);
+  format %{ %}
+  interface(REG_INTER);
+%}
+
 // Flags register, used as output of signed compare instructions
 
 // note that on AArch64 we also use this register as the output for
@@ -13863,7 +14255,7 @@
   format %{ "fcmps $src1, 0.0" %}
 
   ins_encode %{
-    __ fcmps(as_FloatRegister($src1$$reg), 0.0D);
+    __ fcmps(as_FloatRegister($src1$$reg), 0.0);
   %}
 
   ins_pipe(pipe_class_compare);
@@ -13892,7 +14284,7 @@
   format %{ "fcmpd $src1, 0.0" %}
 
   ins_encode %{
-    __ fcmpd(as_FloatRegister($src1$$reg), 0.0D);
+    __ fcmpd(as_FloatRegister($src1$$reg), 0.0);
   %}
 
   ins_pipe(pipe_class_compare);
@@ -13968,7 +14360,7 @@
     Label done;
     FloatRegister s1 = as_FloatRegister($src1$$reg);
     Register d = as_Register($dst$$reg);
-    __ fcmps(s1, 0.0D);
+    __ fcmps(s1, 0.0);
     // installs 0 if EQ else -1
     __ csinvw(d, zr, zr, Assembler::EQ);
     // keeps -1 if less or unordered else installs 1
@@ -13995,7 +14387,7 @@
     Label done;
     FloatRegister s1 = as_FloatRegister($src1$$reg);
     Register d = as_Register($dst$$reg);
-    __ fcmpd(s1, 0.0D);
+    __ fcmpd(s1, 0.0);
     // installs 0 if EQ else -1
     __ csinvw(d, zr, zr, Assembler::EQ);
     // keeps -1 if less or unordered else installs 1
--- a/src/hotspot/cpu/aarch64/assembler_aarch64.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/assembler_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -276,7 +276,7 @@
   unsigned get(int msb = 31, int lsb = 0) {
     int nbits = msb - lsb + 1;
     unsigned mask = ((1U << nbits) - 1) << lsb;
-    assert_cond(bits & mask == mask);
+    assert_cond((bits & mask) == mask);
     return (insn & mask) >> lsb;
   }
 
@@ -2644,7 +2644,7 @@
   // RBIT only allows T8B and T16B but encodes them oddly.  Argh...
   void rbit(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) {
     assert((ASSERTION), MSG);
-    _rbit(Vd, SIMD_Arrangement(T & 1 | 0b010), Vn);
+    _rbit(Vd, SIMD_Arrangement((T & 1) | 0b010), Vn);
   }
 #undef ASSERTION
 
--- a/src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
  * Copyright (c) 2014, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -1015,7 +1015,11 @@
     if (UseCompressedOops && !wide) {
       __ decode_heap_oop(dest->as_register());
     }
-    __ verify_oop(dest->as_register());
+
+    if (!UseZGC) {
+      // Load barrier has not yet been applied, so ZGC can't verify the oop here
+      __ verify_oop(dest->as_register());
+    }
   } else if (type == T_ADDRESS && addr->disp() == oopDesc::klass_offset_in_bytes()) {
     if (UseCompressedClassPointers) {
       __ decode_klass_not_null(dest->as_register());
@@ -1074,8 +1078,8 @@
       // Assembler::EQ does not permit unordered branches, so we add
       // another branch here.  Likewise, Assembler::NE does not permit
       // ordered branches.
-      if (is_unordered && op->cond() == lir_cond_equal
-          || !is_unordered && op->cond() == lir_cond_notEqual)
+      if ((is_unordered && op->cond() == lir_cond_equal)
+          || (!is_unordered && op->cond() == lir_cond_notEqual))
         __ br(Assembler::VS, *(op->ublock()->label()));
       switch(op->cond()) {
       case lir_cond_equal:        acond = Assembler::EQ; break;
@@ -1785,18 +1789,22 @@
     switch (code) {
     case lir_add: __ fadds (dest->as_float_reg(), left->as_float_reg(), right->as_float_reg()); break;
     case lir_sub: __ fsubs (dest->as_float_reg(), left->as_float_reg(), right->as_float_reg()); break;
+    case lir_mul_strictfp: // fall through
     case lir_mul: __ fmuls (dest->as_float_reg(), left->as_float_reg(), right->as_float_reg()); break;
+    case lir_div_strictfp: // fall through
     case lir_div: __ fdivs (dest->as_float_reg(), left->as_float_reg(), right->as_float_reg()); break;
     default:
       ShouldNotReachHere();
     }
   } else if (left->is_double_fpu()) {
     if (right->is_double_fpu()) {
-      // cpu register - cpu register
+      // fpu register - fpu register
       switch (code) {
       case lir_add: __ faddd (dest->as_double_reg(), left->as_double_reg(), right->as_double_reg()); break;
       case lir_sub: __ fsubd (dest->as_double_reg(), left->as_double_reg(), right->as_double_reg()); break;
+      case lir_mul_strictfp: // fall through
       case lir_mul: __ fmuld (dest->as_double_reg(), left->as_double_reg(), right->as_double_reg()); break;
+      case lir_div_strictfp: // fall through
       case lir_div: __ fdivd (dest->as_double_reg(), left->as_double_reg(), right->as_double_reg()); break;
       default:
         ShouldNotReachHere();
@@ -2869,7 +2877,11 @@
 
 
 void LIR_Assembler::leal(LIR_Opr addr, LIR_Opr dest, LIR_PatchCode patch_code, CodeEmitInfo* info) {
-  assert(patch_code == lir_patch_none, "Patch code not supported");
+  if (patch_code != lir_patch_none) {
+    deoptimize_trap(info);
+    return;
+  }
+
   __ lea(dest->as_register_lo(), as_Address(addr->as_address_ptr()));
 }
 
--- a/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
  * Copyright (c) 2014, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -426,7 +426,7 @@
     tmp = new_register(T_DOUBLE);
   }
 
-  arithmetic_op_fpu(x->op(), reg, left.result(), right.result(), NULL);
+  arithmetic_op_fpu(x->op(), reg, left.result(), right.result(), x->is_strictfp());
 
   set_result(x, round_item(reg));
 }
--- a/src/hotspot/cpu/aarch64/frame_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/frame_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
  * Copyright (c) 2014, Red Hat Inc. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
@@ -768,11 +768,13 @@
 
 extern "C" void pf(unsigned long sp, unsigned long fp, unsigned long pc,
                    unsigned long bcx, unsigned long thread) {
-  RegisterMap map((JavaThread*)thread, false);
   if (!reg_map) {
-    reg_map = (RegisterMap*)os::malloc(sizeof map, mtNone);
+    reg_map = NEW_C_HEAP_OBJ(RegisterMap, mtNone);
+    ::new (reg_map) RegisterMap((JavaThread*)thread, false);
+  } else {
+    *reg_map = RegisterMap((JavaThread*)thread, false);
   }
-  memcpy(reg_map, &map, sizeof map);
+
   {
     CodeBlob *cb = CodeCache::find_blob((address)pc);
     if (cb && cb->frame_size())
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/cpu/aarch64/gc/z/zBarrierSetAssembler_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,407 @@
+/*
+ * Copyright (c) 2019, 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.
+ */
+
+#include "precompiled.hpp"
+#include "asm/macroAssembler.inline.hpp"
+#include "code/codeBlob.hpp"
+#include "gc/z/zBarrier.inline.hpp"
+#include "gc/z/zBarrierSet.hpp"
+#include "gc/z/zBarrierSetAssembler.hpp"
+#include "gc/z/zBarrierSetRuntime.hpp"
+#include "memory/resourceArea.hpp"
+#ifdef COMPILER1
+#include "c1/c1_LIRAssembler.hpp"
+#include "c1/c1_MacroAssembler.hpp"
+#include "gc/z/c1/zBarrierSetC1.hpp"
+#endif // COMPILER1
+
+#include "gc/z/zThreadLocalData.hpp"
+
+ZBarrierSetAssembler::ZBarrierSetAssembler() :
+    _load_barrier_slow_stub(),
+    _load_barrier_weak_slow_stub() {}
+
+#ifdef PRODUCT
+#define BLOCK_COMMENT(str) /* nothing */
+#else
+#define BLOCK_COMMENT(str) __ block_comment(str)
+#endif
+
+#undef __
+#define __ masm->
+
+void ZBarrierSetAssembler::load_at(MacroAssembler* masm,
+                                   DecoratorSet decorators,
+                                   BasicType type,
+                                   Register dst,
+                                   Address src,
+                                   Register tmp1,
+                                   Register tmp_thread) {
+  if (!ZBarrierSet::barrier_needed(decorators, type)) {
+    // Barrier not needed
+    BarrierSetAssembler::load_at(masm, decorators, type, dst, src, tmp1, tmp_thread);
+    return;
+  }
+
+  // rscratch1 can be passed as src or dst, so don't use it.
+  RegSet savedRegs = RegSet::of(rscratch2, rheapbase);
+
+  Label done;
+  assert_different_registers(rheapbase, rscratch2, dst);
+  assert_different_registers(rheapbase, rscratch2, src.base());
+
+  __ push(savedRegs, sp);
+
+  // Load bad mask into scratch register.
+  __ ldr(rheapbase, address_bad_mask_from_thread(rthread));
+  __ lea(rscratch2, src);
+  __ ldr(dst, src);
+
+  // Test reference against bad mask. If mask bad, then we need to fix it up.
+  __ tst(dst, rheapbase);
+  __ br(Assembler::EQ, done);
+
+  __ enter();
+
+  __ push(RegSet::range(r0,r28) - RegSet::of(dst), sp);
+
+  if (c_rarg0 != dst) {
+    __ mov(c_rarg0, dst);
+  }
+  __ mov(c_rarg1, rscratch2);
+
+  int step = 4 * wordSize;
+  __ mov(rscratch1, -step);
+  __ sub(sp, sp, step);
+
+  for (int i = 28; i >= 4; i -= 4) {
+    __ st1(as_FloatRegister(i), as_FloatRegister(i+1), as_FloatRegister(i+2),
+        as_FloatRegister(i+3), __ T1D, Address(__ post(sp, rscratch1)));
+  }
+
+  __ call_VM_leaf(ZBarrierSetRuntime::load_barrier_on_oop_field_preloaded_addr(decorators), 2);
+
+  for (int i = 0; i <= 28; i += 4) {
+    __ ld1(as_FloatRegister(i), as_FloatRegister(i+1), as_FloatRegister(i+2),
+        as_FloatRegister(i+3), __ T1D, Address(__ post(sp, step)));
+  }
+
+  // Make sure dst has the return value.
+  if (dst != r0) {
+    __ mov(dst, r0);
+  }
+
+  __ pop(RegSet::range(r0,r28) - RegSet::of(dst), sp);
+  __ leave();
+
+  __ bind(done);
+
+  // Restore tmps
+  __ pop(savedRegs, sp);
+}
+
+#ifdef ASSERT
+
+void ZBarrierSetAssembler::store_at(MacroAssembler* masm,
+                                        DecoratorSet decorators,
+                                        BasicType type,
+                                        Address dst,
+                                        Register val,
+                                        Register tmp1,
+                                        Register tmp2) {
+  // Verify value
+  if (type == T_OBJECT || type == T_ARRAY) {
+    // Note that src could be noreg, which means we
+    // are storing null and can skip verification.
+    if (val != noreg) {
+      Label done;
+
+      // tmp1 and tmp2 are often set to noreg.
+      RegSet savedRegs = RegSet::of(rscratch1);
+      __ push(savedRegs, sp);
+
+      __ ldr(rscratch1, address_bad_mask_from_thread(rthread));
+      __ tst(val, rscratch1);
+      __ br(Assembler::EQ, done);
+      __ stop("Verify oop store failed");
+      __ should_not_reach_here();
+      __ bind(done);
+      __ pop(savedRegs, sp);
+    }
+  }
+
+  // Store value
+  BarrierSetAssembler::store_at(masm, decorators, type, dst, val, tmp1, tmp2);
+}
+
+#endif // ASSERT
+
+void ZBarrierSetAssembler::arraycopy_prologue(MacroAssembler* masm,
+                                              DecoratorSet decorators,
+                                              bool is_oop,
+                                              Register src,
+                                              Register dst,
+                                              Register count,
+                                              RegSet saved_regs) {
+  if (!is_oop) {
+    // Barrier not needed
+    return;
+  }
+
+  BLOCK_COMMENT("ZBarrierSetAssembler::arraycopy_prologue {");
+
+  assert_different_registers(src, count, rscratch1);
+
+  __ pusha();
+
+  if (count == c_rarg0) {
+    if (src == c_rarg1) {
+      // exactly backwards!!
+      __ mov(rscratch1, c_rarg0);
+      __ mov(c_rarg0, c_rarg1);
+      __ mov(c_rarg1, rscratch1);
+    } else {
+      __ mov(c_rarg1, count);
+      __ mov(c_rarg0, src);
+    }
+  } else {
+    __ mov(c_rarg0, src);
+    __ mov(c_rarg1, count);
+  }
+
+  __ call_VM_leaf(ZBarrierSetRuntime::load_barrier_on_oop_array_addr(), 2);
+
+  __ popa();
+  BLOCK_COMMENT("} ZBarrierSetAssembler::arraycopy_prologue");
+}
+
+void ZBarrierSetAssembler::try_resolve_jobject_in_native(MacroAssembler* masm,
+                                                         Register jni_env,
+                                                         Register robj,
+                                                         Register tmp,
+                                                         Label& slowpath) {
+  BLOCK_COMMENT("ZBarrierSetAssembler::try_resolve_jobject_in_native {");
+
+  assert_different_registers(jni_env, robj, tmp);
+
+  // Resolve jobject
+  BarrierSetAssembler::try_resolve_jobject_in_native(masm, jni_env, robj, tmp, slowpath);
+
+  // The Address offset is too large to direct load - -784. Our range is +127, -128.
+  __ mov(tmp, (long int)(in_bytes(ZThreadLocalData::address_bad_mask_offset()) -
+      in_bytes(JavaThread::jni_environment_offset())));
+  // Load address bad mask
+  __ add(tmp, jni_env, tmp);
+  __ ldr(tmp, Address(tmp));
+
+  // Check address bad mask
+  __ tst(robj, tmp);
+  __ br(Assembler::NE, slowpath);
+
+  BLOCK_COMMENT("} ZBarrierSetAssembler::try_resolve_jobject_in_native");
+}
+
+#ifdef COMPILER1
+
+#undef __
+#define __ ce->masm()->
+
+void ZBarrierSetAssembler::generate_c1_load_barrier_test(LIR_Assembler* ce,
+                                                         LIR_Opr ref) const {
+  assert_different_registers(rheapbase, rthread, ref->as_register());
+
+  __ ldr(rheapbase, address_bad_mask_from_thread(rthread));
+  __ tst(ref->as_register(), rheapbase);
+}
+
+void ZBarrierSetAssembler::generate_c1_load_barrier_stub(LIR_Assembler* ce,
+                                                         ZLoadBarrierStubC1* stub) const {
+  // Stub entry
+  __ bind(*stub->entry());
+
+  Register ref = stub->ref()->as_register();
+  Register ref_addr = noreg;
+  Register tmp = noreg;
+
+  if (stub->tmp()->is_valid()) {
+    // Load address into tmp register
+    ce->leal(stub->ref_addr(), stub->tmp());
+    ref_addr = tmp = stub->tmp()->as_pointer_register();
+  } else {
+    // Address already in register
+    ref_addr = stub->ref_addr()->as_address_ptr()->base()->as_pointer_register();
+  }
+
+  assert_different_registers(ref, ref_addr, noreg);
+
+  // Save r0 unless it is the result or tmp register
+  // Set up SP to accomodate parameters and maybe r0..
+  if (ref != r0 && tmp != r0) {
+    __ sub(sp, sp, 32);
+    __ str(r0, Address(sp, 16));
+  } else {
+    __ sub(sp, sp, 16);
+  }
+
+  // Setup arguments and call runtime stub
+  ce->store_parameter(ref_addr, 1);
+  ce->store_parameter(ref, 0);
+
+  __ far_call(stub->runtime_stub());
+
+  // Verify result
+  __ verify_oop(r0, "Bad oop");
+
+  // Move result into place
+  if (ref != r0) {
+    __ mov(ref, r0);
+  }
+
+  // Restore r0 unless it is the result or tmp register
+  if (ref != r0 && tmp != r0) {
+    __ ldr(r0, Address(sp, 16));
+    __ add(sp, sp, 32);
+  } else {
+    __ add(sp, sp, 16);
+  }
+
+  // Stub exit
+  __ b(*stub->continuation());
+}
+
+#undef __
+#define __ sasm->
+
+void ZBarrierSetAssembler::generate_c1_load_barrier_runtime_stub(StubAssembler* sasm,
+                                                                 DecoratorSet decorators) const {
+  __ prologue("zgc_load_barrier stub", false);
+
+  // We don't use push/pop_clobbered_registers() - we need to pull out the result from r0.
+  for (int i = 0; i < 32; i +=2) {
+    __ stpd(as_FloatRegister(i), as_FloatRegister(i+1), Address(__ pre(sp,-16)));
+  }
+
+  RegSet saveRegs = RegSet::range(r0,r28) - RegSet::of(r0);
+  __ push(saveRegs, sp);
+
+  // Setup arguments
+  __ load_parameter(0, c_rarg0);
+  __ load_parameter(1, c_rarg1);
+
+  __ call_VM_leaf(ZBarrierSetRuntime::load_barrier_on_oop_field_preloaded_addr(decorators), 2);
+
+  __ pop(saveRegs, sp);
+
+  for (int i = 30; i >0; i -=2) {
+      __ ldpd(as_FloatRegister(i), as_FloatRegister(i+1), Address(__ post(sp, 16)));
+    }
+
+  __ epilogue();
+}
+#endif // COMPILER1
+
+#undef __
+#define __ cgen->assembler()->
+
+// Generates a register specific stub for calling
+// ZBarrierSetRuntime::load_barrier_on_oop_field_preloaded() or
+// ZBarrierSetRuntime::load_barrier_on_weak_oop_field_preloaded().
+//
+// The raddr register serves as both input and output for this stub. When the stub is
+// called the raddr register contains the object field address (oop*) where the bad oop
+// was loaded from, which caused the slow path to be taken. On return from the stub the
+// raddr register contains the good/healed oop returned from
+// ZBarrierSetRuntime::load_barrier_on_oop_field_preloaded() or
+// ZBarrierSetRuntime::load_barrier_on_weak_oop_field_preloaded().
+static address generate_load_barrier_stub(StubCodeGenerator* cgen, Register raddr, DecoratorSet decorators) {
+  // Don't generate stub for invalid registers
+  if (raddr == zr || raddr == r29 || raddr == r30) {
+    return NULL;
+  }
+
+  // Create stub name
+  char name[64];
+  const bool weak = (decorators & ON_WEAK_OOP_REF) != 0;
+  os::snprintf(name, sizeof(name), "zgc_load_barrier%s_stub_%s", weak ? "_weak" : "", raddr->name());
+
+  __ align(CodeEntryAlignment);
+  StubCodeMark mark(cgen, "StubRoutines", os::strdup(name, mtCode));
+  address start = __ pc();
+
+  // Save live registers
+  RegSet savedRegs = RegSet::range(r0,r18) - RegSet::of(raddr);
+
+  __ enter();
+  __ push(savedRegs, sp);
+
+  // Setup arguments
+  if (raddr != c_rarg1) {
+    __ mov(c_rarg1, raddr);
+  }
+
+  __ ldr(c_rarg0, Address(raddr));
+
+  // Call barrier function
+  __ call_VM_leaf(ZBarrierSetRuntime::load_barrier_on_oop_field_preloaded_addr(decorators), c_rarg0, c_rarg1);
+
+  // Move result returned in r0 to raddr, if needed
+  if (raddr != r0) {
+    __ mov(raddr, r0);
+  }
+
+  __ pop(savedRegs, sp);
+  __ leave();
+  __ ret(lr);
+
+  return start;
+}
+
+#undef __
+
+static void barrier_stubs_init_inner(const char* label, const DecoratorSet decorators, address* stub) {
+  const int nregs = 28;              // Exclude FP, XZR, SP from calculation.
+  const int code_size = nregs * 254; // Rough estimate of code size
+
+  ResourceMark rm;
+
+  CodeBuffer buf(BufferBlob::create(label, code_size));
+  StubCodeGenerator cgen(&buf);
+
+  for (int i = 0; i < nregs; i++) {
+    const Register reg = as_Register(i);
+    stub[i] = generate_load_barrier_stub(&cgen, reg, decorators);
+  }
+}
+
+void ZBarrierSetAssembler::barrier_stubs_init() {
+  barrier_stubs_init_inner("zgc_load_barrier_stubs", ON_STRONG_OOP_REF, _load_barrier_slow_stub);
+  barrier_stubs_init_inner("zgc_load_barrier_weak_stubs", ON_WEAK_OOP_REF, _load_barrier_weak_slow_stub);
+}
+
+address ZBarrierSetAssembler::load_barrier_slow_stub(Register reg) {
+  return _load_barrier_slow_stub[reg->encoding()];
+}
+
+address ZBarrierSetAssembler::load_barrier_weak_slow_stub(Register reg) {
+  return _load_barrier_weak_slow_stub[reg->encoding()];
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/cpu/aarch64/gc/z/zBarrierSetAssembler_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,92 @@
+/*
+ * Copyright (c) 2019, 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.
+ */
+
+#ifndef CPU_AARCH64_GC_Z_ZBARRIERSETASSEMBLER_AARCH64_HPP
+#define CPU_AARCH64_GC_Z_ZBARRIERSETASSEMBLER_AARCH64_HPP
+
+#ifdef COMPILER1
+class LIR_Assembler;
+class LIR_OprDesc;
+typedef LIR_OprDesc* LIR_Opr;
+class StubAssembler;
+class ZLoadBarrierStubC1;
+#endif // COMPILER1
+
+class ZBarrierSetAssembler : public ZBarrierSetAssemblerBase {
+private:
+  address _load_barrier_slow_stub[RegisterImpl::number_of_registers];
+  address _load_barrier_weak_slow_stub[RegisterImpl::number_of_registers];
+
+public:
+  ZBarrierSetAssembler();
+
+  virtual void load_at(MacroAssembler* masm,
+                       DecoratorSet decorators,
+                       BasicType type,
+                       Register dst,
+                       Address src,
+                       Register tmp1,
+                       Register tmp_thread);
+
+#ifdef ASSERT
+  virtual void store_at(MacroAssembler* masm,
+                        DecoratorSet decorators,
+                        BasicType type,
+                        Address dst,
+                        Register val,
+                        Register tmp1,
+                        Register tmp2);
+#endif // ASSERT
+
+  virtual void arraycopy_prologue(MacroAssembler* masm,
+                                  DecoratorSet decorators,
+                                  bool is_oop,
+                                  Register src,
+                                  Register dst,
+                                  Register count,
+                                  RegSet saved_regs);
+
+  virtual void try_resolve_jobject_in_native(MacroAssembler* masm,
+                                             Register jni_env,
+                                             Register robj,
+                                             Register tmp,
+                                             Label& slowpath);
+
+#ifdef COMPILER1
+  void generate_c1_load_barrier_test(LIR_Assembler* ce,
+                                     LIR_Opr ref) const;
+
+  void generate_c1_load_barrier_stub(LIR_Assembler* ce,
+                                     ZLoadBarrierStubC1* stub) const;
+
+  void generate_c1_load_barrier_runtime_stub(StubAssembler* sasm,
+                                             DecoratorSet decorators) const;
+#endif // COMPILER1
+
+  virtual void barrier_stubs_init();
+
+  address load_barrier_slow_stub(Register reg);
+  address load_barrier_weak_slow_stub(Register reg);
+};
+
+#endif // CPU_AARCH64_GC_Z_ZBARRIERSETASSEMBLER_AARCH64_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/cpu/aarch64/gc/z/z_aarch64.ad	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,174 @@
+//
+// Copyright (c) 2019, 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.
+//
+
+source_hpp %{
+
+#include "gc/z/c2/zBarrierSetC2.hpp"
+
+%}
+
+source %{
+
+#include "gc/z/zBarrierSetAssembler.hpp"
+
+static void z_load_barrier_slow_reg(MacroAssembler& _masm, Register dst, 
+                                    Register base, int index, int scale, 
+                                    int disp, bool weak) {
+  const address stub = weak ? ZBarrierSet::assembler()->load_barrier_weak_slow_stub(dst)
+                            : ZBarrierSet::assembler()->load_barrier_slow_stub(dst);
+
+  if (index == -1) {
+    if (disp != 0) {
+      __ lea(dst, Address(base, disp));
+    } else {
+       __ mov(dst, base);
+    }
+  } else {
+    Register index_reg = as_Register(index);
+    if (disp == 0) {
+      __ lea(dst, Address(base, index_reg, Address::lsl(scale)));
+    } else {
+      __ lea(dst, Address(base, disp));
+      __ lea(dst, Address(dst, index_reg, Address::lsl(scale)));
+    }
+  }
+
+  __ far_call(RuntimeAddress(stub));
+}
+
+%}
+
+//
+// Execute ZGC load barrier (strong) slow path
+//
+instruct loadBarrierSlowReg(iRegP dst, memory mem, rFlagsReg cr,
+    vRegD_V0 v0, vRegD_V1 v1, vRegD_V2 v2, vRegD_V3 v3, vRegD_V4 v4,
+    vRegD_V5 v5, vRegD_V6 v6, vRegD_V7 v7, vRegD_V8 v8, vRegD_V9 v9,
+    vRegD_V10 v10, vRegD_V11 v11, vRegD_V12 v12, vRegD_V13 v13, vRegD_V14 v14,
+    vRegD_V15 v15, vRegD_V16 v16, vRegD_V17 v17, vRegD_V18 v18, vRegD_V19 v19,
+    vRegD_V20 v20, vRegD_V21 v21, vRegD_V22 v22, vRegD_V23 v23, vRegD_V24 v24,
+    vRegD_V25 v25, vRegD_V26 v26, vRegD_V27 v27, vRegD_V28 v28, vRegD_V29 v29,
+    vRegD_V30 v30, vRegD_V31 v31) %{
+  match(Set dst (LoadBarrierSlowReg mem));
+  predicate(!n->as_LoadBarrierSlowReg()->is_weak());
+
+  effect(DEF dst, KILL cr,
+     KILL v0, KILL v1, KILL v2, KILL v3, KILL v4, KILL v5, KILL v6, KILL v7,
+     KILL v8, KILL v9, KILL v10, KILL v11, KILL v12, KILL v13, KILL v14,
+     KILL v15, KILL v16, KILL v17, KILL v18, KILL v19, KILL v20, KILL v21,
+     KILL v22, KILL v23, KILL v24, KILL v25, KILL v26, KILL v27, KILL v28,
+     KILL v29, KILL v30, KILL v31);
+
+  format %{"LoadBarrierSlowReg $dst, $mem" %}
+  ins_encode %{
+    z_load_barrier_slow_reg(_masm, $dst$$Register, $mem$$base$$Register,
+                            $mem$$index, $mem$$scale, $mem$$disp, false);
+  %}
+  ins_pipe(pipe_slow);
+%}
+
+//
+// Execute ZGC load barrier (weak) slow path
+//
+instruct loadBarrierWeakSlowReg(iRegP dst, memory mem, rFlagsReg cr,
+    vRegD_V0 v0, vRegD_V1 v1, vRegD_V2 v2, vRegD_V3 v3, vRegD_V4 v4,
+    vRegD_V5 v5, vRegD_V6 v6, vRegD_V7 v7, vRegD_V8 v8, vRegD_V9 v9,
+    vRegD_V10 v10, vRegD_V11 v11, vRegD_V12 v12, vRegD_V13 v13, vRegD_V14 v14,
+    vRegD_V15 v15, vRegD_V16 v16, vRegD_V17 v17, vRegD_V18 v18, vRegD_V19 v19,
+    vRegD_V20 v20, vRegD_V21 v21, vRegD_V22 v22, vRegD_V23 v23, vRegD_V24 v24,
+    vRegD_V25 v25, vRegD_V26 v26, vRegD_V27 v27, vRegD_V28 v28, vRegD_V29 v29,
+    vRegD_V30 v30, vRegD_V31 v31) %{
+  match(Set dst (LoadBarrierSlowReg mem));
+  predicate(n->as_LoadBarrierSlowReg()->is_weak());
+
+  effect(DEF dst, KILL cr,
+     KILL v0, KILL v1, KILL v2, KILL v3, KILL v4, KILL v5, KILL v6, KILL v7,
+     KILL v8, KILL v9, KILL v10, KILL v11, KILL v12, KILL v13, KILL v14,
+     KILL v15, KILL v16, KILL v17, KILL v18, KILL v19, KILL v20, KILL v21,
+     KILL v22, KILL v23, KILL v24, KILL v25, KILL v26, KILL v27, KILL v28,
+     KILL v29, KILL v30, KILL v31);
+
+  format %{"LoadBarrierWeakSlowReg $dst, $mem" %}
+  ins_encode %{
+    z_load_barrier_slow_reg(_masm, $dst$$Register, $mem$$base$$Register,
+                            $mem$$index, $mem$$scale, $mem$$disp, true);
+  %}
+  ins_pipe(pipe_slow);
+%}
+
+
+// Specialized versions of compareAndExchangeP that adds a keepalive that is consumed
+// but doesn't affect output.
+
+instruct z_compareAndExchangeP(iRegPNoSp res, indirect mem,
+                               iRegP oldval, iRegP newval, iRegP keepalive,
+                               rFlagsReg cr) %{
+  match(Set res (ZCompareAndExchangeP (Binary mem keepalive) (Binary oldval newval)));
+  ins_cost(2 * VOLATILE_REF_COST);
+  effect(TEMP_DEF res, KILL cr);
+  format %{
+    "cmpxchg $res = $mem, $oldval, $newval\t# (ptr, weak) if $mem == $oldval then $mem <-- $newval"
+  %}
+  ins_encode %{
+    __ cmpxchg($mem$$Register, $oldval$$Register, $newval$$Register,
+               Assembler::xword, /*acquire*/ false, /*release*/ true,
+               /*weak*/ false, $res$$Register);
+  %}
+  ins_pipe(pipe_slow);
+%}
+
+instruct z_compareAndSwapP(iRegINoSp res,
+                           indirect mem,
+                           iRegP oldval, iRegP newval, iRegP keepalive,
+                            rFlagsReg cr) %{
+
+  match(Set res (ZCompareAndSwapP (Binary mem keepalive) (Binary oldval newval)));
+  match(Set res (ZWeakCompareAndSwapP (Binary mem keepalive) (Binary oldval newval)));
+
+  ins_cost(2 * VOLATILE_REF_COST);
+
+  effect(KILL cr);
+
+ format %{
+    "cmpxchg $mem, $oldval, $newval\t# (ptr) if $mem == $oldval then $mem <-- $newval"
+    "cset $res, EQ\t# $res <-- (EQ ? 1 : 0)"
+ %}
+
+ ins_encode(aarch64_enc_cmpxchg(mem, oldval, newval),
+            aarch64_enc_cset_eq(res));
+
+  ins_pipe(pipe_slow);
+%}
+
+
+instruct z_get_and_setP(indirect mem, iRegP newv, iRegPNoSp prev,
+                        iRegP keepalive) %{
+  match(Set prev (ZGetAndSetP mem (Binary newv keepalive)));
+
+  ins_cost(2 * VOLATILE_REF_COST);
+  format %{ "atomic_xchg  $prev, $newv, [$mem]" %}
+  ins_encode %{
+    __ atomic_xchg($prev$$Register, $newv$$Register, as_Register($mem$$base));
+  %}
+  ins_pipe(pipe_serial);
+%}
--- a/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -38,8 +38,6 @@
  protected:
 
  protected:
-  using MacroAssembler::call_VM_leaf_base;
-
   // Interpreter specific version of call_VM_base
   using MacroAssembler::call_VM_leaf_base;
 
--- a/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -2681,7 +2681,7 @@
   if ((offset & (size-1)) && offset >= (1<<8)) {
     add(tmp, base, offset & ((1<<12)-1));
     base = tmp;
-    offset &= -1<<12;
+    offset &= -1u<<12;
   }
 
   if (offset >= (1<<12) * size) {
--- a/src/hotspot/cpu/aarch64/macroAssembler_aarch64_log.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/macroAssembler_aarch64_log.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -286,7 +286,7 @@
     frecpe(vtmp5, vtmp5, S);                   // vtmp5 ~= 1/vtmp5
     lsr(tmp2, rscratch1, 48);
     movz(tmp4, 0x77f0, 48);
-    fmovd(vtmp4, 1.0d);
+    fmovd(vtmp4, 1.0);
     movz(tmp1, INF_OR_NAN_PREFIX, 48);
     bfm(tmp4, rscratch1, 0, 51);               // tmp4 = 0x77F0 << 48 | mantissa(X)
     // vtmp1 = AS_DOUBLE_BITS(0x77F0 << 48 | mantissa(X)) == mx
@@ -358,7 +358,7 @@
       br(GE, DONE);
       cmp(rscratch1, tmp2);
       br(NE, CHECKED_CORNER_CASES);
-      fmovd(v0, 0.0d);
+      fmovd(v0, 0.0);
   }
   bind(DONE);
     ret(lr);
--- a/src/hotspot/cpu/aarch64/macroAssembler_aarch64_trig.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/macroAssembler_aarch64_trig.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -381,11 +381,11 @@
       }
 
       block_comment("nx calculation with unrolled while(tx[nx-1]==zeroA) nx--;"); {
-        fcmpd(v26, 0.0d);                          // if NE then jx == 2. else it's 1 or 0
+        fcmpd(v26, 0.0);                           // if NE then jx == 2. else it's 1 or 0
         add(iqBase, sp, 480);                      // base of iq[]
         fmuld(v3, v26, v10);
         br(NE, NX_SET);
-        fcmpd(v7, 0.0d);                           // v7 == 0 => jx = 0. Else jx = 1
+        fcmpd(v7, 0.0);                            // v7 == 0 => jx = 0. Else jx = 1
         csetw(jx, NE);
       }
     bind(NX_SET);
@@ -696,7 +696,7 @@
     cmpw(jv, zr);
     addw(tmp4, jx, 4); // tmp4 = m = jx + jk = jx + 4. jx is in {0,1,2} so m is in [4,5,6]
     cselw(jv, jv, zr, GE);
-    fmovd(v26, 0.0d);
+    fmovd(v26, 0.0);
     addw(tmp5, jv, 1);                    // jv+1
     subsw(j, jv, jx);
     add(qBase, sp, 320);                  // base of q[]
@@ -819,8 +819,8 @@
   movw(jz, 4);
   fmovd(v17, i);                               // v17 = twon24
   fmovd(v30, tmp5);                            // 2^q0
-  fmovd(v21, 0.125d);
-  fmovd(v20, 8.0d);
+  fmovd(v21, 0.125);
+  fmovd(v20, 8.0);
   fmovd(v22, tmp4);                            // 2^-q0
 
   block_comment("recompute loop"); {
@@ -877,7 +877,7 @@
           lsr(ih, tmp2, 23);                               // ih = iq[z-1] >> 23
           b(Q0_ZERO_CMP_DONE);
         bind(Q0_ZERO_CMP_LT);
-          fmovd(v4, 0.5d);
+          fmovd(v4, 0.5);
           fcmpd(v18, v4);
           cselw(ih, zr, ih, LT);                           // if (z<0.5) ih = 0
       }
@@ -924,7 +924,7 @@
         br(NE, IH_HANDLED);
 
         block_comment("if(ih==2) {"); {
-          fmovd(v25, 1.0d);
+          fmovd(v25, 1.0);
           fsubd(v18, v25, v18);                            // z = one - z;
           cbzw(rscratch2, IH_HANDLED);
           fsubd(v18, v18, v30);                            // z -= scalbnA(one,q0);
@@ -932,7 +932,7 @@
     }
     bind(IH_HANDLED);
       // check if recomputation is needed
-      fcmpd(v18, 0.0d);
+      fcmpd(v18, 0.0);
       br(NE, RECOMP_CHECK_DONE_NOT_ZERO);
 
       block_comment("if(z==zeroB) {"); {
@@ -994,7 +994,7 @@
     }
     bind(RECOMP_CHECK_DONE);
       // chop off zero terms
-      fcmpd(v18, 0.0d);
+      fcmpd(v18, 0.0);
       br(EQ, Z_IS_ZERO);
 
       block_comment("else block of if(z==0.0) {"); {
@@ -1053,7 +1053,7 @@
           movw(tmp2, zr); // tmp2 will keep jz - i == 0 at start
         bind(COMP_FOR);
           // for(fw=0.0,k=0;k<=jp&&k<=jz-i;k++) fw += PIo2[k]*q[i+k];
-          fmovd(v30, 0.0d);
+          fmovd(v30, 0.0);
           add(tmp5, qBase, i, LSL, 3); // address of q[i+k] for k==0
           movw(tmp3, 4);
           movw(tmp4, zr);              // used as k
@@ -1081,7 +1081,7 @@
         // remember prec == 2
 
         block_comment("for (i=jz;i>=0;i--) fw += fq[i];"); {
-            fmovd(v4, 0.0d);
+            fmovd(v4, 0.0);
             mov(i, jz);
           bind(FW_FOR1);
             ldrd(v1, Address(rscratch2, i, Address::lsl(3)));
@@ -1319,7 +1319,7 @@
     ld1(C1, C2, C3, C4, T1D, Address(rscratch2)); // load C1..C3\4
     block_comment("calculate r = z*(C1+z*(C2+z*(C3+z*(C4+z*(C5+z*C6)))))"); {
       fmaddd(r, z, C6, C5);
-      fmovd(half, 0.5d);
+      fmovd(half, 0.5);
       fmaddd(r, z, r, C4);
       fmuld(y, x, y);
       fmaddd(r, z, r, C3);
@@ -1329,7 +1329,7 @@
       fmaddd(r, z, r, C1);                        // r = C1+z(C2+z(C4+z(C5+z*C6)))
     }
     // need to multiply r by z to have "final" r value
-    fmovd(one, 1.0d);
+    fmovd(one, 1.0);
     cmp(ix, rscratch1);
     br(GT, IX_IS_LARGE);
     block_comment("if(ix < 0x3FD33333) return one - (0.5*z - (z*r - x*y))"); {
@@ -1352,7 +1352,7 @@
       b(QX_SET);
     bind(SET_QX_CONST);
       block_comment("if(ix > 0x3fe90000) qx = 0.28125;"); {
-        fmovd(qx, 0.28125d);
+        fmovd(qx, 0.28125);
       }
     bind(QX_SET);
       fnmsub(C6, x, r, y);    // z*r - xy
@@ -1443,7 +1443,7 @@
   block_comment("kernel_sin/kernel_cos: if(ix<0x3e400000) {<fast return>}"); {
     bind(TINY_X);
       if (isCos) {
-        fmovd(v0, 1.0d);
+        fmovd(v0, 1.0);
       }
       ret(lr);
   }
--- a/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -46,6 +46,9 @@
 #ifdef COMPILER2
 #include "opto/runtime.hpp"
 #endif
+#if INCLUDE_ZGC
+#include "gc/z/zThreadLocalData.hpp"
+#endif
 
 #ifdef BUILTIN_SIM
 #include "../../../../../../simulator/simulator.hpp"
@@ -580,6 +583,16 @@
     // make sure object is 'reasonable'
     __ cbz(r0, exit); // if obj is NULL it is OK
 
+#if INCLUDE_ZGC
+    if (UseZGC) {
+      // Check if mask is good.
+      // verifies that ZAddressBadMask & r0 == 0
+      __ ldr(c_rarg3, Address(rthread, ZThreadLocalData::address_bad_mask_offset()));
+      __ andr(c_rarg2, r0, c_rarg3);
+      __ cbnz(c_rarg2, error);
+    }
+#endif
+
     // Check if the oop is in the right area of memory
     __ mov(c_rarg3, (intptr_t) Universe::verify_oop_mask());
     __ andr(c_rarg2, r0, c_rarg3);
--- a/src/hotspot/cpu/aarch64/vm_version_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/cpu/aarch64/vm_version_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -177,7 +177,7 @@
   if (FILE *f = fopen("/proc/cpuinfo", "r")) {
     char buf[128], *p;
     while (fgets(buf, sizeof (buf), f) != NULL) {
-      if (p = strchr(buf, ':')) {
+      if ((p = strchr(buf, ':')) != NULL) {
         long v = strtol(p+1, NULL, 0);
         if (strncmp(buf, "CPU implementer", sizeof "CPU implementer" - 1) == 0) {
           _cpu = v;
--- a/src/hotspot/os/linux/perfMemory_linux.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/os/linux/perfMemory_linux.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -661,7 +661,7 @@
   if (fp) {
     int pid, nspid;
     int ret;
-    while (!feof(fp)) {
+    while (!feof(fp) && !ferror(fp)) {
       ret = fscanf(fp, "NSpid: %d %d", &pid, &nspid);
       if (ret == 1) {
         break;
--- a/src/hotspot/os_cpu/linux_aarch64/atomic_linux_aarch64.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/os_cpu/linux_aarch64/atomic_linux_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -40,7 +40,9 @@
 {
   template<typename I, typename D>
   D add_and_fetch(I add_value, D volatile* dest, atomic_memory_order order) const {
-    return __sync_add_and_fetch(dest, add_value);
+    D res = __atomic_add_fetch(dest, add_value, __ATOMIC_RELEASE);
+    FULL_MEM_BARRIER;
+    return res;
   }
 };
 
--- a/src/hotspot/os_cpu/linux_aarch64/copy_linux_aarch64.s	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/os_cpu/linux_aarch64/copy_linux_aarch64.s	Fri Jun 21 09:05:45 2019 -0700
@@ -159,7 +159,7 @@
         blo     bwd_copy_drain
 
 bwd_copy_again:
-        prfm    pldl1keep, [s, #-256]
+        prfum   pldl1keep, [s, #-256]
         stp     t0, t1, [d, #-16]
         ldp     t0, t1, [s, #-16]
         stp     t2, t3, [d, #-32]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zArguments_linux_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2018, 2019, 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.
+ */
+
+#include "precompiled.hpp"
+#include "gc/z/zArguments.hpp"
+#include "runtime/globals.hpp"
+#include "runtime/globals_extension.hpp"
+#include "utilities/debug.hpp"
+
+void ZArguments::initialize_platform() {
+  // Disable class unloading - we don't support concurrent class unloading yet.
+  FLAG_SET_DEFAULT(ClassUnloading, false);
+  FLAG_SET_DEFAULT(ClassUnloadingWithConcurrentMark, false);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingFile_linux_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,590 @@
+/*
+ * Copyright (c) 2015, 2019, 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.
+ */
+
+#include "precompiled.hpp"
+#include "gc/z/zArray.inline.hpp"
+#include "gc/z/zBackingFile_linux_aarch64.hpp"
+#include "gc/z/zBackingPath_linux_aarch64.hpp"
+#include "gc/z/zErrno.hpp"
+#include "gc/z/zGlobals.hpp"
+#include "gc/z/zLargePages.inline.hpp"
+#include "logging/log.hpp"
+#include "runtime/init.hpp"
+#include "runtime/os.hpp"
+#include "utilities/align.hpp"
+#include "utilities/debug.hpp"
+
+#include <fcntl.h>
+#include <sys/mman.h>
+#include <sys/stat.h>
+#include <sys/statfs.h>
+#include <sys/syscall.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+//
+// Support for building on older Linux systems
+//
+
+// System calls
+#ifndef SYS_fallocate
+#define SYS_fallocate                    47
+#endif
+#ifndef SYS_memfd_create
+#define SYS_memfd_create                 279
+#endif
+
+// memfd_create(2) flags
+#ifndef MFD_CLOEXEC
+#define MFD_CLOEXEC                      0x0001U
+#endif
+#ifndef MFD_HUGETLB
+#define MFD_HUGETLB                      0x0004U
+#endif
+
+// open(2) flags
+#ifndef O_CLOEXEC
+#define O_CLOEXEC                        02000000
+#endif
+#ifndef O_TMPFILE
+#define O_TMPFILE                        (020000000 | O_DIRECTORY)
+#endif
+
+// fallocate(2) flags
+#ifndef FALLOC_FL_KEEP_SIZE
+#define FALLOC_FL_KEEP_SIZE              0x01
+#endif
+#ifndef FALLOC_FL_PUNCH_HOLE
+#define FALLOC_FL_PUNCH_HOLE             0x02
+#endif
+
+// Filesystem types, see statfs(2)
+#ifndef TMPFS_MAGIC
+#define TMPFS_MAGIC                      0x01021994
+#endif
+#ifndef HUGETLBFS_MAGIC
+#define HUGETLBFS_MAGIC                  0x958458f6
+#endif
+
+// Filesystem names
+#define ZFILESYSTEM_TMPFS                "tmpfs"
+#define ZFILESYSTEM_HUGETLBFS            "hugetlbfs"
+
+// Sysfs file for transparent huge page on tmpfs
+#define ZFILENAME_SHMEM_ENABLED          "/sys/kernel/mm/transparent_hugepage/shmem_enabled"
+
+// Java heap filename
+#define ZFILENAME_HEAP                   "java_heap"
+
+// Preferred tmpfs mount points, ordered by priority
+static const char* z_preferred_tmpfs_mountpoints[] = {
+  "/dev/shm",
+  "/run/shm",
+  NULL
+};
+
+// Preferred hugetlbfs mount points, ordered by priority
+static const char* z_preferred_hugetlbfs_mountpoints[] = {
+  "/dev/hugepages",
+  "/hugepages",
+  NULL
+};
+
+static int z_fallocate_hugetlbfs_attempts = 3;
+static bool z_fallocate_supported = true;
+
+static int z_fallocate(int fd, int mode, size_t offset, size_t length) {
+  return syscall(SYS_fallocate, fd, mode, offset, length);
+}
+
+static int z_memfd_create(const char *name, unsigned int flags) {
+  return syscall(SYS_memfd_create, name, flags);
+}
+
+ZBackingFile::ZBackingFile() :
+    _fd(-1),
+    _size(0),
+    _filesystem(0),
+    _block_size(0),
+    _available(0),
+    _initialized(false) {
+
+  // Create backing file
+  _fd = create_fd(ZFILENAME_HEAP);
+  if (_fd == -1) {
+    return;
+  }
+
+  // Get filesystem statistics
+  struct statfs buf;
+  if (fstatfs(_fd, &buf) == -1) {
+    ZErrno err;
+    log_error(gc)("Failed to determine filesystem type for backing file (%s)", err.to_string());
+    return;
+  }
+
+  _filesystem = buf.f_type;
+  _block_size = buf.f_bsize;
+  _available = buf.f_bavail * _block_size;
+
+  // Make sure we're on a supported filesystem
+  if (!is_tmpfs() && !is_hugetlbfs()) {
+    log_error(gc)("Backing file must be located on a %s or a %s filesystem",
+                  ZFILESYSTEM_TMPFS, ZFILESYSTEM_HUGETLBFS);
+    return;
+  }
+
+  // Make sure the filesystem type matches requested large page type
+  if (ZLargePages::is_transparent() && !is_tmpfs()) {
+    log_error(gc)("-XX:+UseTransparentHugePages can only be enable when using a %s filesystem",
+                  ZFILESYSTEM_TMPFS);
+    return;
+  }
+
+  if (ZLargePages::is_transparent() && !tmpfs_supports_transparent_huge_pages()) {
+    log_error(gc)("-XX:+UseTransparentHugePages on a %s filesystem not supported by kernel",
+                  ZFILESYSTEM_TMPFS);
+    return;
+  }
+
+  if (ZLargePages::is_explicit() && !is_hugetlbfs()) {
+    log_error(gc)("-XX:+UseLargePages (without -XX:+UseTransparentHugePages) can only be enabled "
+                  "when using a %s filesystem", ZFILESYSTEM_HUGETLBFS);
+    return;
+  }
+
+  if (!ZLargePages::is_explicit() && is_hugetlbfs()) {
+    log_error(gc)("-XX:+UseLargePages must be enabled when using a %s filesystem",
+                  ZFILESYSTEM_HUGETLBFS);
+    return;
+  }
+
+  const size_t expected_block_size = is_tmpfs() ? os::vm_page_size() : os::large_page_size();
+  if (expected_block_size != _block_size) {
+    log_error(gc)("%s filesystem has unexpected block size " SIZE_FORMAT " (expected " SIZE_FORMAT ")",
+                  is_tmpfs() ? ZFILESYSTEM_TMPFS : ZFILESYSTEM_HUGETLBFS, _block_size, expected_block_size);
+    return;
+  }
+
+  // Successfully initialized
+  _initialized = true;
+}
+
+int ZBackingFile::create_mem_fd(const char* name) const {
+  // Create file name
+  char filename[PATH_MAX];
+  snprintf(filename, sizeof(filename), "%s%s", name, ZLargePages::is_explicit() ? ".hugetlb" : "");
+
+  // Create file
+  const int extra_flags = ZLargePages::is_explicit() ? MFD_HUGETLB : 0;
+  const int fd = z_memfd_create(filename, MFD_CLOEXEC | extra_flags);
+  if (fd == -1) {
+    ZErrno err;
+    log_debug(gc, init)("Failed to create memfd file (%s)",
+                        ((ZLargePages::is_explicit() && err == EINVAL) ? "Hugepages not supported" : err.to_string()));
+    return -1;
+  }
+
+  log_info(gc, init)("Heap backed by file: /memfd:%s", filename);
+
+  return fd;
+}
+
+int ZBackingFile::create_file_fd(const char* name) const {
+  const char* const filesystem = ZLargePages::is_explicit()
+                                 ? ZFILESYSTEM_HUGETLBFS
+                                 : ZFILESYSTEM_TMPFS;
+  const char** const preferred_mountpoints = ZLargePages::is_explicit()
+                                             ? z_preferred_hugetlbfs_mountpoints
+                                             : z_preferred_tmpfs_mountpoints;
+
+  // Find mountpoint
+  ZBackingPath path(filesystem, preferred_mountpoints);
+  if (path.get() == NULL) {
+    log_error(gc)("Use -XX:ZPath to specify the path to a %s filesystem", filesystem);
+    return -1;
+  }
+
+  // Try to create an anonymous file using the O_TMPFILE flag. Note that this
+  // flag requires kernel >= 3.11. If this fails we fall back to open/unlink.
+  const int fd_anon = os::open(path.get(), O_TMPFILE|O_EXCL|O_RDWR|O_CLOEXEC, S_IRUSR|S_IWUSR);
+  if (fd_anon == -1) {
+    ZErrno err;
+    log_debug(gc, init)("Failed to create anonymous file in %s (%s)", path.get(),
+                        (err == EINVAL ? "Not supported" : err.to_string()));
+  } else {
+    // Get inode number for anonymous file
+    struct stat stat_buf;
+    if (fstat(fd_anon, &stat_buf) == -1) {
+      ZErrno err;
+      log_error(gc)("Failed to determine inode number for anonymous file (%s)", err.to_string());
+      return -1;
+    }
+
+    log_info(gc, init)("Heap backed by file: %s/#" UINT64_FORMAT, path.get(), (uint64_t)stat_buf.st_ino);
+
+    return fd_anon;
+  }
+
+  log_debug(gc, init)("Falling back to open/unlink");
+
+  // Create file name
+  char filename[PATH_MAX];
+  snprintf(filename, sizeof(filename), "%s/%s.%d", path.get(), name, os::current_process_id());
+
+  // Create file
+  const int fd = os::open(filename, O_CREAT|O_EXCL|O_RDWR|O_CLOEXEC, S_IRUSR|S_IWUSR);
+  if (fd == -1) {
+    ZErrno err;
+    log_error(gc)("Failed to create file %s (%s)", filename, err.to_string());
+    return -1;
+  }
+
+  // Unlink file
+  if (unlink(filename) == -1) {
+    ZErrno err;
+    log_error(gc)("Failed to unlink file %s (%s)", filename, err.to_string());
+    return -1;
+  }
+
+  log_info(gc, init)("Heap backed by file: %s", filename);
+
+  return fd;
+}
+
+int ZBackingFile::create_fd(const char* name) const {
+  if (ZPath == NULL) {
+    // If the path is not explicitly specified, then we first try to create a memfd file
+    // instead of looking for a tmpfd/hugetlbfs mount point. Note that memfd_create() might
+    // not be supported at all (requires kernel >= 3.17), or it might not support large
+    // pages (requires kernel >= 4.14). If memfd_create() fails, then we try to create a
+    // file on an accessible tmpfs or hugetlbfs mount point.
+    const int fd = create_mem_fd(name);
+    if (fd != -1) {
+      return fd;
+    }
+
+    log_debug(gc, init)("Falling back to searching for an accessible mount point");
+  }
+
+  return create_file_fd(name);
+}
+
+bool ZBackingFile::is_initialized() const {
+  return _initialized;
+}
+
+int ZBackingFile::fd() const {
+  return _fd;
+}
+
+size_t ZBackingFile::size() const {
+  return _size;
+}
+
+size_t ZBackingFile::available() const {
+  return _available;
+}
+
+bool ZBackingFile::is_tmpfs() const {
+  return _filesystem == TMPFS_MAGIC;
+}
+
+bool ZBackingFile::is_hugetlbfs() const {
+  return _filesystem == HUGETLBFS_MAGIC;
+}
+
+bool ZBackingFile::tmpfs_supports_transparent_huge_pages() const {
+  // If the shmem_enabled file exists and is readable then we
+  // know the kernel supports transparent huge pages for tmpfs.
+  return access(ZFILENAME_SHMEM_ENABLED, R_OK) == 0;
+}
+
+ZErrno ZBackingFile::fallocate_compat_ftruncate(size_t size) const {
+  while (ftruncate(_fd, size) == -1) {
+    if (errno != EINTR) {
+      // Failed
+      return errno;
+    }
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::fallocate_compat_mmap(size_t offset, size_t length, bool touch) const {
+  // On hugetlbfs, mapping a file segment will fail immediately, without
+  // the need to touch the mapped pages first, if there aren't enough huge
+  // pages available to back the mapping.
+  void* const addr = mmap(0, length, PROT_READ|PROT_WRITE, MAP_SHARED, _fd, offset);
+  if (addr == MAP_FAILED) {
+    // Failed
+    return errno;
+  }
+
+  // Once mapped, the huge pages are only reserved. We need to touch them
+  // to associate them with the file segment. Note that we can not punch
+  // hole in file segments which only have reserved pages.
+  if (touch) {
+    char* const start = (char*)addr;
+    char* const end = start + length;
+    os::pretouch_memory(start, end, _block_size);
+  }
+
+  // Unmap again. From now on, the huge pages that were mapped are allocated
+  // to this file. There's no risk in getting SIGBUS when touching them.
+  if (munmap(addr, length) == -1) {
+    // Failed
+    return errno;
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::fallocate_compat_pwrite(size_t offset, size_t length) const {
+  uint8_t data = 0;
+
+  // Allocate backing memory by writing to each block
+  for (size_t pos = offset; pos < offset + length; pos += _block_size) {
+    if (pwrite(_fd, &data, sizeof(data), pos) == -1) {
+      // Failed
+      return errno;
+    }
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::fallocate_fill_hole_compat(size_t offset, size_t length) {
+  // fallocate(2) is only supported by tmpfs since Linux 3.5, and by hugetlbfs
+  // since Linux 4.3. When fallocate(2) is not supported we emulate it using
+  // ftruncate/pwrite (for tmpfs) or ftruncate/mmap/munmap (for hugetlbfs).
+
+  const size_t end = offset + length;
+  if (end > _size) {
+    // Increase file size
+    const ZErrno err = fallocate_compat_ftruncate(end);
+    if (err) {
+      // Failed
+      return err;
+    }
+  }
+
+  // Allocate backing memory
+  const ZErrno err = is_hugetlbfs() ? fallocate_compat_mmap(offset, length, false /* touch */)
+                                    : fallocate_compat_pwrite(offset, length);
+  if (err) {
+    if (end > _size) {
+      // Restore file size
+      fallocate_compat_ftruncate(_size);
+    }
+
+    // Failed
+    return err;
+  }
+
+  if (end > _size) {
+    // Record new file size
+    _size = end;
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::fallocate_fill_hole_syscall(size_t offset, size_t length) {
+  const int mode = 0; // Allocate
+  const int res = z_fallocate(_fd, mode, offset, length);
+  if (res == -1) {
+    // Failed
+    return errno;
+  }
+
+  const size_t end = offset + length;
+  if (end > _size) {
+    // Record new file size
+    _size = end;
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::fallocate_fill_hole(size_t offset, size_t length) {
+  // Using compat mode is more efficient when allocating space on hugetlbfs.
+  // Note that allocating huge pages this way will only reserve them, and not
+  // associate them with segments of the file. We must guarantee that we at
+  // some point touch these segments, otherwise we can not punch hole in them.
+  if (z_fallocate_supported && !is_hugetlbfs()) {
+     const ZErrno err = fallocate_fill_hole_syscall(offset, length);
+     if (!err) {
+       // Success
+       return 0;
+     }
+
+     if (err != ENOSYS && err != EOPNOTSUPP) {
+       // Failed
+       return err;
+     }
+
+     // Not supported
+     log_debug(gc)("Falling back to fallocate() compatibility mode");
+     z_fallocate_supported = false;
+  }
+
+  return fallocate_fill_hole_compat(offset, length);
+}
+
+ZErrno ZBackingFile::fallocate_punch_hole(size_t offset, size_t length) {
+  if (is_hugetlbfs()) {
+    // We can only punch hole in pages that have been touched. Non-touched
+    // pages are only reserved, and not associated with any specific file
+    // segment. We don't know which pages have been previously touched, so
+    // we always touch them here to guarantee that we can punch hole.
+    const ZErrno err = fallocate_compat_mmap(offset, length, true /* touch */);
+    if (err) {
+      // Failed
+      return err;
+    }
+  }
+
+  const int mode = FALLOC_FL_PUNCH_HOLE|FALLOC_FL_KEEP_SIZE;
+  if (z_fallocate(_fd, mode, offset, length) == -1) {
+    // Failed
+    return errno;
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::split_and_fallocate(bool punch_hole, size_t offset, size_t length) {
+  // Try first half
+  const size_t offset0 = offset;
+  const size_t length0 = align_up(length / 2, _block_size);
+  const ZErrno err0 = fallocate(punch_hole, offset0, length0);
+  if (err0) {
+    return err0;
+  }
+
+  // Try second half
+  const size_t offset1 = offset0 + length0;
+  const size_t length1 = length - length0;
+  const ZErrno err1 = fallocate(punch_hole, offset1, length1);
+  if (err1) {
+    return err1;
+  }
+
+  // Success
+  return 0;
+}
+
+ZErrno ZBackingFile::fallocate(bool punch_hole, size_t offset, size_t length) {
+  assert(is_aligned(offset, _block_size), "Invalid offset");
+  assert(is_aligned(length, _block_size), "Invalid length");
+
+  const ZErrno err = punch_hole ? fallocate_punch_hole(offset, length) : fallocate_fill_hole(offset, length);
+  if (err == EINTR && length > _block_size) {
+    // Calling fallocate(2) with a large length can take a long time to
+    // complete. When running profilers, such as VTune, this syscall will
+    // be constantly interrupted by signals. Expanding the file in smaller
+    // steps avoids this problem.
+    return split_and_fallocate(punch_hole, offset, length);
+  }
+
+  return err;
+}
+
+bool ZBackingFile::commit_inner(size_t offset, size_t length) {
+  log_trace(gc, heap)("Committing memory: " SIZE_FORMAT "M-" SIZE_FORMAT "M (" SIZE_FORMAT "M)",
+                      offset / M, (offset + length) / M, length / M);
+
+retry:
+  const ZErrno err = fallocate(false /* punch_hole */, offset, length);
+  if (err) {
+    if (err == ENOSPC && !is_init_completed() && is_hugetlbfs() && z_fallocate_hugetlbfs_attempts-- > 0) {
+      // If we fail to allocate during initialization, due to lack of space on
+      // the hugetlbfs filesystem, then we wait and retry a few times before
+      // giving up. Otherwise there is a risk that running JVMs back-to-back
+      // will fail, since there is a delay between process termination and the
+      // huge pages owned by that process being returned to the huge page pool
+      // and made available for new allocations.
+      log_debug(gc, init)("Failed to commit memory (%s), retrying", err.to_string());
+
+      // Wait and retry in one second, in the hope that huge pages will be
+      // available by then.
+      sleep(1);
+      goto retry;
+    }
+
+    // Failed
+    log_error(gc)("Failed to commit memory (%s)", err.to_string());
+    return false;
+  }
+
+  // Success
+  return true;
+}
+
+size_t ZBackingFile::commit(size_t offset, size_t length) {
+  // Try to commit the whole region
+  if (commit_inner(offset, length)) {
+    // Success
+    return length;
+  }
+
+  // Failed, try to commit as much as possible
+  size_t start = offset;
+  size_t end = offset + length;
+
+  for (;;) {
+    length = align_down((end - start) / 2, ZGranuleSize);
+    if (length < ZGranuleSize) {
+      // Done, don't commit more
+      return start - offset;
+    }
+
+    if (commit_inner(start, length)) {
+      // Success, try commit more
+      start += length;
+    } else {
+      // Failed, try commit less
+      end -= length;
+    }
+  }
+}
+
+size_t ZBackingFile::uncommit(size_t offset, size_t length) {
+  log_trace(gc, heap)("Uncommitting memory: " SIZE_FORMAT "M-" SIZE_FORMAT "M (" SIZE_FORMAT "M)",
+                      offset / M, (offset + length) / M, length / M);
+
+  const ZErrno err = fallocate(true /* punch_hole */, offset, length);
+  if (err) {
+    log_error(gc)("Failed to uncommit memory (%s)", err.to_string());
+    return 0;
+  }
+
+  return length;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingFile_linux_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,73 @@
+/*
+ * Copyright (c) 2015, 2019, 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.
+ */
+
+#ifndef OS_CPU_LINUX_AARCH64_GC_Z_ZBACKINGFILE_LINUX_AARCH64_HPP
+#define OS_CPU_LINUX_AARCH64_GC_Z_ZBACKINGFILE_LINUX_AARCH64_HPP
+
+#include "memory/allocation.hpp"
+
+class ZErrno;
+
+class ZBackingFile {
+private:
+  int      _fd;
+  size_t   _size;
+  uint64_t _filesystem;
+  size_t   _block_size;
+  size_t   _available;
+  bool     _initialized;
+
+  int create_mem_fd(const char* name) const;
+  int create_file_fd(const char* name) const;
+  int create_fd(const char* name) const;
+
+  bool is_tmpfs() const;
+  bool is_hugetlbfs() const;
+  bool tmpfs_supports_transparent_huge_pages() const;
+
+  ZErrno fallocate_compat_ftruncate(size_t size) const;
+  ZErrno fallocate_compat_mmap(size_t offset, size_t length, bool reserve_only) const;
+  ZErrno fallocate_compat_pwrite(size_t offset, size_t length) const;
+  ZErrno fallocate_fill_hole_compat(size_t offset, size_t length);
+  ZErrno fallocate_fill_hole_syscall(size_t offset, size_t length);
+  ZErrno fallocate_fill_hole(size_t offset, size_t length);
+  ZErrno fallocate_punch_hole(size_t offset, size_t length);
+  ZErrno split_and_fallocate(bool punch_hole, size_t offset, size_t length);
+  ZErrno fallocate(bool punch_hole, size_t offset, size_t length);
+
+  bool commit_inner(size_t offset, size_t length);
+
+public:
+  ZBackingFile();
+
+  bool is_initialized() const;
+
+  int fd() const;
+  size_t size() const;
+  size_t available() const;
+
+  size_t commit(size_t offset, size_t length);
+  size_t uncommit(size_t offset, size_t length);
+};
+
+#endif // OS_CPU_LINUX_AARCH64_GC_Z_ZBACKINGFILE_LINUX_AARCH64_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingPath_linux_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,149 @@
+/*
+ * Copyright (c) 2016, 2019, 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.
+ */
+
+#include "precompiled.hpp"
+#include "gc/z/zArray.inline.hpp"
+#include "zBackingPath_linux_aarch64.hpp"
+#include "gc/z/zErrno.hpp"
+#include "logging/log.hpp"
+
+#include <stdio.h>
+#include <unistd.h>
+
+// Mount information, see proc(5) for more details.
+#define PROC_SELF_MOUNTINFO        "/proc/self/mountinfo"
+
+ZBackingPath::ZBackingPath(const char* filesystem, const char** preferred_mountpoints) {
+  if (ZPath != NULL) {
+    // Use specified path
+    _path = strdup(ZPath);
+  } else {
+    // Find suitable path
+    _path = find_mountpoint(filesystem, preferred_mountpoints);
+  }
+}
+
+ZBackingPath::~ZBackingPath() {
+  free(_path);
+  _path = NULL;
+}
+
+char* ZBackingPath::get_mountpoint(const char* line, const char* filesystem) const {
+  char* line_mountpoint = NULL;
+  char* line_filesystem = NULL;
+
+  // Parse line and return a newly allocated string containing the mount point if
+  // the line contains a matching filesystem and the mount point is accessible by
+  // the current user.
+  if (sscanf(line, "%*u %*u %*u:%*u %*s %ms %*[^-]- %ms", &line_mountpoint, &line_filesystem) != 2 ||
+      strcmp(line_filesystem, filesystem) != 0 ||
+      access(line_mountpoint, R_OK|W_OK|X_OK) != 0) {
+    // Not a matching or accessible filesystem
+    free(line_mountpoint);
+    line_mountpoint = NULL;
+  }
+
+  free(line_filesystem);
+
+  return line_mountpoint;
+}
+
+void ZBackingPath::get_mountpoints(const char* filesystem, ZArray<char*>* mountpoints) const {
+  FILE* fd = fopen(PROC_SELF_MOUNTINFO, "r");
+  if (fd == NULL) {
+    ZErrno err;
+    log_error(gc)("Failed to open %s: %s", PROC_SELF_MOUNTINFO, err.to_string());
+    return;
+  }
+
+  char* line = NULL;
+  size_t length = 0;
+
+  while (getline(&line, &length, fd) != -1) {
+    char* const mountpoint = get_mountpoint(line, filesystem);
+    if (mountpoint != NULL) {
+      mountpoints->add(mountpoint);
+    }
+  }
+
+  free(line);
+  fclose(fd);
+}
+
+void ZBackingPath::free_mountpoints(ZArray<char*>* mountpoints) const {
+  ZArrayIterator<char*> iter(mountpoints);
+  for (char* mountpoint; iter.next(&mountpoint);) {
+    free(mountpoint);
+  }
+  mountpoints->clear();
+}
+
+char* ZBackingPath::find_preferred_mountpoint(const char* filesystem,
+                                              ZArray<char*>* mountpoints,
+                                              const char** preferred_mountpoints) const {
+  // Find preferred mount point
+  ZArrayIterator<char*> iter1(mountpoints);
+  for (char* mountpoint; iter1.next(&mountpoint);) {
+    for (const char** preferred = preferred_mountpoints; *preferred != NULL; preferred++) {
+      if (!strcmp(mountpoint, *preferred)) {
+        // Preferred mount point found
+        return strdup(mountpoint);
+      }
+    }
+  }
+
+  // Preferred mount point not found
+  log_error(gc)("More than one %s filesystem found:", filesystem);
+  ZArrayIterator<char*> iter2(mountpoints);
+  for (char* mountpoint; iter2.next(&mountpoint);) {
+    log_error(gc)("  %s", mountpoint);
+  }
+
+  return NULL;
+}
+
+char* ZBackingPath::find_mountpoint(const char* filesystem, const char** preferred_mountpoints) const {
+  char* path = NULL;
+  ZArray<char*> mountpoints;
+
+  get_mountpoints(filesystem, &mountpoints);
+
+  if (mountpoints.size() == 0) {
+    // No mount point found
+    log_error(gc)("Failed to find an accessible %s filesystem", filesystem);
+  } else if (mountpoints.size() == 1) {
+    // One mount point found
+    path = strdup(mountpoints.at(0));
+  } else {
+    // More than one mount point found
+    path = find_preferred_mountpoint(filesystem, &mountpoints, preferred_mountpoints);
+  }
+
+  free_mountpoints(&mountpoints);
+
+  return path;
+}
+
+const char* ZBackingPath::get() const {
+  return _path;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingPath_linux_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2016, 2019, 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.
+ */
+
+#ifndef OS_CPU_LINUX_AARCH64_GC_Z_ZBACKINGPATH_LINUX_AARCH64_HPP
+#define OS_CPU_LINUX_AARCH64_GC_Z_ZBACKINGPATH_LINUX_AARCH64_HPP
+
+#include "gc/z/zArray.hpp"
+#include "memory/allocation.hpp"
+
+class ZBackingPath : public StackObj {
+private:
+  char* _path;
+
+  char* get_mountpoint(const char* line,
+                       const char* filesystem) const;
+  void get_mountpoints(const char* filesystem,
+                       ZArray<char*>* mountpoints) const;
+  void free_mountpoints(ZArray<char*>* mountpoints) const;
+  char* find_preferred_mountpoint(const char* filesystem,
+                                  ZArray<char*>* mountpoints,
+                                  const char** preferred_mountpoints) const;
+  char* find_mountpoint(const char* filesystem,
+                        const char** preferred_mountpoints) const;
+
+public:
+  ZBackingPath(const char* filesystem, const char** preferred_mountpoints);
+  ~ZBackingPath();
+
+  const char* get() const;
+};
+
+#endif // OS_CPU_LINUX_AARCH64_GC_Z_ZBACKINGPATH_LINUX_AARCH64_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zGlobals_linux_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,173 @@
+/*
+ * Copyright (c) 2017, 2019, 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.
+ */
+
+#include "precompiled.hpp"
+#include "gc/z/zGlobals.hpp"
+#include "gc/z/zUtils.inline.hpp"
+#include "runtime/globals.hpp"
+#include "utilities/globalDefinitions.hpp"
+
+//
+// The heap can have three different layouts, depending on the max heap size.
+//
+// Address Space & Pointer Layout 1
+// --------------------------------
+//
+//  +--------------------------------+ 0x00007FFFFFFFFFFF (127TB)
+//  .                                .
+//  .                                .
+//  .                                .
+//  +--------------------------------+ 0x0000014000000000 (20TB)
+//  |         Remapped View          |
+//  +--------------------------------+ 0x0000010000000000 (16TB)
+//  |     (Reserved, but unused)     |
+//  +--------------------------------+ 0x00000c0000000000 (12TB)
+//  |         Marked1 View           |
+//  +--------------------------------+ 0x0000080000000000 (8TB)
+//  |         Marked0 View           |
+//  +--------------------------------+ 0x0000040000000000 (4TB)
+//  .                                .
+//  +--------------------------------+ 0x0000000000000000
+//
+//   6                  4 4  4 4
+//   3                  6 5  2 1                                             0
+//  +--------------------+----+-----------------------------------------------+
+//  |00000000 00000000 00|1111|11 11111111 11111111 11111111 11111111 11111111|
+//  +--------------------+----+-----------------------------------------------+
+//  |                    |    |
+//  |                    |    * 41-0 Object Offset (42-bits, 4TB address space)
+//  |                    |
+//  |                    * 45-42 Metadata Bits (4-bits)  0001 = Marked0      (Address view 4-8TB)
+//  |                                                    0010 = Marked1      (Address view 8-12TB)
+//  |                                                    0100 = Remapped     (Address view 16-20TB)
+//  |                                                    1000 = Finalizable  (Address view N/A)
+//  |
+//  * 63-46 Fixed (18-bits, always zero)
+//
+//
+// Address Space & Pointer Layout 2
+// --------------------------------
+//
+//  +--------------------------------+ 0x00007FFFFFFFFFFF (127TB)
+//  .                                .
+//  .                                .
+//  .                                .
+//  +--------------------------------+ 0x0000280000000000 (40TB)
+//  |         Remapped View          |
+//  +--------------------------------+ 0x0000200000000000 (32TB)
+//  |     (Reserved, but unused)     |
+//  +--------------------------------+ 0x0000180000000000 (24TB)
+//  |         Marked1 View           |
+//  +--------------------------------+ 0x0000100000000000 (16TB)
+//  |         Marked0 View           |
+//  +--------------------------------+ 0x0000080000000000 (8TB)
+//  .                                .
+//  +--------------------------------+ 0x0000000000000000
+//
+//   6                 4 4  4 4
+//   3                 7 6  3 2                                              0
+//  +------------------+-----+------------------------------------------------+
+//  |00000000 00000000 0|1111|111 11111111 11111111 11111111 11111111 11111111|
+//  +-------------------+----+------------------------------------------------+
+//  |                   |    |
+//  |                   |    * 42-0 Object Offset (43-bits, 8TB address space)
+//  |                   |
+//  |                   * 46-43 Metadata Bits (4-bits)  0001 = Marked0      (Address view 8-16TB)
+//  |                                                   0010 = Marked1      (Address view 16-24TB)
+//  |                                                   0100 = Remapped     (Address view 32-40TB)
+//  |                                                   1000 = Finalizable  (Address view N/A)
+//  |
+//  * 63-47 Fixed (17-bits, always zero)
+//
+//
+// Address Space & Pointer Layout 3
+// --------------------------------
+//
+//  +--------------------------------+ 0x00007FFFFFFFFFFF (127TB)
+//  .                                .
+//  .                                .
+//  .                                .
+//  +--------------------------------+ 0x0000500000000000 (80TB)
+//  |         Remapped View          |
+//  +--------------------------------+ 0x0000400000000000 (64TB)
+//  |     (Reserved, but unused)     |
+//  +--------------------------------+ 0x0000300000000000 (48TB)
+//  |         Marked1 View           |
+//  +--------------------------------+ 0x0000200000000000 (32TB)
+//  |         Marked0 View           |
+//  +--------------------------------+ 0x0000100000000000 (16TB)
+//  .                                .
+//  +--------------------------------+ 0x0000000000000000
+//
+//   6               4  4  4 4
+//   3               8  7  4 3                                               0
+//  +------------------+----+-------------------------------------------------+
+//  |00000000 00000000 |1111|1111 11111111 11111111 11111111 11111111 11111111|
+//  +------------------+----+-------------------------------------------------+
+//  |                  |    |
+//  |                  |    * 43-0 Object Offset (44-bits, 16TB address space)
+//  |                  |
+//  |                  * 47-44 Metadata Bits (4-bits)  0001 = Marked0      (Address view 16-32TB)
+//  |                                                  0010 = Marked1      (Address view 32-48TB)
+//  |                                                  0100 = Remapped     (Address view 64-80TB)
+//  |                                                  1000 = Finalizable  (Address view N/A)
+//  |
+//  * 63-48 Fixed (16-bits, always zero)
+//
+
+uintptr_t ZPlatformAddressSpaceStart() {
+  const uintptr_t first_heap_view_address = (uintptr_t)1 << (ZPlatformAddressMetadataShift() + 0);
+  const size_t min_address_offset = 0;
+  return first_heap_view_address + min_address_offset;
+}
+
+uintptr_t ZPlatformAddressSpaceEnd() {
+  const uintptr_t last_heap_view_address = (uintptr_t)1 << (ZPlatformAddressMetadataShift() + 2);
+  const size_t max_address_offset = (size_t)1 << ZPlatformAddressOffsetBits();
+  return last_heap_view_address + max_address_offset;
+}
+
+uintptr_t ZPlatformAddressReservedStart() {
+  return ZPlatformAddressSpaceStart();
+}
+
+uintptr_t ZPlatformAddressReservedEnd() {
+  return ZPlatformAddressSpaceEnd();
+}
+
+uintptr_t ZPlatformAddressBase() {
+  return 0;
+}
+
+size_t ZPlatformAddressOffsetBits() {
+  const size_t min_address_offset_bits = 42; // 4TB
+  const size_t max_address_offset_bits = 44; // 16TB
+  const size_t virtual_to_physical_ratio = 7; // 7:1
+  const size_t address_offset = ZUtils::round_up_power_of_2(MaxHeapSize * virtual_to_physical_ratio);
+  const size_t address_offset_bits = log2_intptr(address_offset);
+  return MIN2(MAX2(address_offset_bits, min_address_offset_bits), max_address_offset_bits);
+}
+
+size_t ZPlatformAddressMetadataShift() {
+  return ZPlatformAddressOffsetBits();
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zGlobals_linux_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2015, 2019, 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.
+ */
+
+#ifndef OS_CPU_LINUX_AARCH64_GC_Z_ZGLOBALS_LINUX_AARCH64_HPP
+#define OS_CPU_LINUX_AARCH64_GC_Z_ZGLOBALS_LINUX_AARCH64_HPP
+
+//
+// Page Allocation Tiers
+// ---------------------
+//
+//  Page Type     Page Size     Object Size Limit     Object Alignment
+//  ------------------------------------------------------------------
+//  Small         2M            <= 265K               <MinObjAlignmentInBytes>
+//  Medium        32M           <= 4M                 4K
+//  Large         X*M           > 4M                  2M
+//  ------------------------------------------------------------------
+//
+const size_t ZPlatformGranuleSizeShift      = 21; // 2MB
+const size_t ZPlatformMaxHeapSizeShift      = 46; // 16TB
+const size_t ZPlatformNMethodDisarmedOffset = 4;
+const size_t ZPlatformCacheLineSize         = 64;
+
+uintptr_t    ZPlatformAddressSpaceStart();
+uintptr_t    ZPlatformAddressSpaceEnd();
+uintptr_t    ZPlatformAddressReservedStart();
+uintptr_t    ZPlatformAddressReservedEnd();
+uintptr_t    ZPlatformAddressBase();
+size_t       ZPlatformAddressOffsetBits();
+size_t       ZPlatformAddressMetadataShift();
+
+#endif // OS_CPU_LINUX_AARCH64_GC_Z_ZGLOBALS_LINUX_AARCH64_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zPhysicalMemoryBacking_linux_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,333 @@
+/*
+ * Copyright (c) 2015, 2019, 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.
+ */
+
+#include "precompiled.hpp"
+#include "gc/z/zAddress.inline.hpp"
+#include "gc/z/zBackingFile_linux_aarch64.hpp"
+#include "gc/z/zErrno.hpp"
+#include "gc/z/zGlobals.hpp"
+#include "gc/z/zLargePages.inline.hpp"
+#include "gc/z/zMemory.hpp"
+#include "gc/z/zNUMA.hpp"
+#include "gc/z/zPhysicalMemory.inline.hpp"
+#include "gc/z/zPhysicalMemoryBacking_linux_aarch64.hpp"
+#include "logging/log.hpp"
+#include "runtime/init.hpp"
+#include "runtime/os.hpp"
+#include "utilities/align.hpp"
+#include "utilities/debug.hpp"
+
+#include <stdio.h>
+#include <sys/mman.h>
+#include <sys/types.h>
+
+//
+// Support for building on older Linux systems
+//
+
+// madvise(2) flags
+#ifndef MADV_HUGEPAGE
+#define MADV_HUGEPAGE                        14
+#endif
+
+// Proc file entry for max map mount
+#define ZFILENAME_PROC_MAX_MAP_COUNT         "/proc/sys/vm/max_map_count"
+
+bool ZPhysicalMemoryBacking::is_initialized() const {
+  return _file.is_initialized();
+}
+
+void ZPhysicalMemoryBacking::warn_available_space(size_t max) const {
+  // Note that the available space on a tmpfs or a hugetlbfs filesystem
+  // will be zero if no size limit was specified when it was mounted.
+  const size_t available = _file.available();
+  if (available == 0) {
+    // No size limit set, skip check
+    log_info(gc, init)("Available space on backing filesystem: N/A");
+    return;
+  }
+
+  log_info(gc, init)("Available space on backing filesystem: " SIZE_FORMAT "M", available / M);
+
+  // Warn if the filesystem doesn't currently have enough space available to hold
+  // the max heap size. The max heap size will be capped if we later hit this limit
+  // when trying to expand the heap.
+  if (available < max) {
+    log_warning(gc)("***** WARNING! INCORRECT SYSTEM CONFIGURATION DETECTED! *****");
+    log_warning(gc)("Not enough space available on the backing filesystem to hold the current max Java heap");
+    log_warning(gc)("size (" SIZE_FORMAT "M). Please adjust the size of the backing filesystem accordingly "
+                    "(available", max / M);
+    log_warning(gc)("space is currently " SIZE_FORMAT "M). Continuing execution with the current filesystem "
+                    "size could", available / M);
+    log_warning(gc)("lead to a premature OutOfMemoryError being thrown, due to failure to map memory.");
+  }
+}
+
+void ZPhysicalMemoryBacking::warn_max_map_count(size_t max) const {
+  const char* const filename = ZFILENAME_PROC_MAX_MAP_COUNT;
+  FILE* const file = fopen(filename, "r");
+  if (file == NULL) {
+    // Failed to open file, skip check
+    log_debug(gc, init)("Failed to open %s", filename);
+    return;
+  }
+
+  size_t actual_max_map_count = 0;
+  const int result = fscanf(file, SIZE_FORMAT, &actual_max_map_count);
+  fclose(file);
+  if (result != 1) {
+    // Failed to read file, skip check
+    log_debug(gc, init)("Failed to read %s", filename);
+    return;
+  }
+
+  // The required max map count is impossible to calculate exactly since subsystems
+  // other than ZGC are also creating memory mappings, and we have no control over that.
+  // However, ZGC tends to create the most mappings and dominate the total count.
+  // In the worst cases, ZGC will map each granule three times, i.e. once per heap view.
+  // We speculate that we need another 20% to allow for non-ZGC subsystems to map memory.
+  const size_t required_max_map_count = (max / ZGranuleSize) * 3 * 1.2;
+  if (actual_max_map_count < required_max_map_count) {
+    log_warning(gc)("***** WARNING! INCORRECT SYSTEM CONFIGURATION DETECTED! *****");
+    log_warning(gc)("The system limit on number of memory mappings per process might be too low for the given");
+    log_warning(gc)("max Java heap size (" SIZE_FORMAT "M). Please adjust %s to allow for at",
+                    max / M, filename);
+    log_warning(gc)("least " SIZE_FORMAT " mappings (current limit is " SIZE_FORMAT "). Continuing execution "
+                    "with the current", required_max_map_count, actual_max_map_count);
+    log_warning(gc)("limit could lead to a fatal error, due to failure to map memory.");
+  }
+}
+
+void ZPhysicalMemoryBacking::warn_commit_limits(size_t max) const {
+  // Warn if available space is too low
+  warn_available_space(max);
+
+  // Warn if max map count is too low
+  warn_max_map_count(max);
+}
+
+bool ZPhysicalMemoryBacking::supports_uncommit() {
+  assert(!is_init_completed(), "Invalid state");
+  assert(_file.size() >= ZGranuleSize, "Invalid size");
+
+  // Test if uncommit is supported by uncommitting and then re-committing a granule
+  return commit(uncommit(ZGranuleSize)) == ZGranuleSize;
+}
+
+size_t ZPhysicalMemoryBacking::commit(size_t size) {
+  size_t committed = 0;
+
+  // Fill holes in the backing file
+  while (committed < size) {
+    size_t allocated = 0;
+    const size_t remaining = size - committed;
+    const uintptr_t start = _uncommitted.alloc_from_front_at_most(remaining, &allocated);
+    if (start == UINTPTR_MAX) {
+      // No holes to commit
+      break;
+    }
+
+    // Try commit hole
+    const size_t filled = _file.commit(start, allocated);
+    if (filled > 0) {
+      // Successful or partialy successful
+      _committed.free(start, filled);
+      committed += filled;
+    }
+    if (filled < allocated) {
+      // Failed or partialy failed
+      _uncommitted.free(start + filled, allocated - filled);
+      return committed;
+    }
+  }
+
+  // Expand backing file
+  if (committed < size) {
+    const size_t remaining = size - committed;
+    const uintptr_t start = _file.size();
+    const size_t expanded = _file.commit(start, remaining);
+    if (expanded > 0) {
+      // Successful or partialy successful
+      _committed.free(start, expanded);
+      committed += expanded;
+    }
+  }
+
+  return committed;
+}
+
+size_t ZPhysicalMemoryBacking::uncommit(size_t size) {
+  size_t uncommitted = 0;
+
+  // Punch holes in backing file
+  while (uncommitted < size) {
+    size_t allocated = 0;
+    const size_t remaining = size - uncommitted;
+    const uintptr_t start = _committed.alloc_from_back_at_most(remaining, &allocated);
+    assert(start != UINTPTR_MAX, "Allocation should never fail");
+
+    // Try punch hole
+    const size_t punched = _file.uncommit(start, allocated);
+    if (punched > 0) {
+      // Successful or partialy successful
+      _uncommitted.free(start, punched);
+      uncommitted += punched;
+    }
+    if (punched < allocated) {
+      // Failed or partialy failed
+      _committed.free(start + punched, allocated - punched);
+      return uncommitted;
+    }
+  }
+
+  return uncommitted;
+}
+
+ZPhysicalMemory ZPhysicalMemoryBacking::alloc(size_t size) {
+  assert(is_aligned(size, ZGranuleSize), "Invalid size");
+
+  ZPhysicalMemory pmem;
+
+  // Allocate segments
+  for (size_t allocated = 0; allocated < size; allocated += ZGranuleSize) {
+    const uintptr_t start = _committed.alloc_from_front(ZGranuleSize);
+    assert(start != UINTPTR_MAX, "Allocation should never fail");
+    pmem.add_segment(ZPhysicalMemorySegment(start, ZGranuleSize));
+  }
+
+  return pmem;
+}
+
+void ZPhysicalMemoryBacking::free(const ZPhysicalMemory& pmem) {
+  const size_t nsegments = pmem.nsegments();
+
+  // Free segments
+  for (size_t i = 0; i < nsegments; i++) {
+    const ZPhysicalMemorySegment& segment = pmem.segment(i);
+    _committed.free(segment.start(), segment.size());
+  }
+}
+
+void ZPhysicalMemoryBacking::map_failed(ZErrno err) const {
+  if (err == ENOMEM) {
+    fatal("Failed to map memory. Please check the system limit on number of "
+          "memory mappings allowed per process (see %s)", ZFILENAME_PROC_MAX_MAP_COUNT);
+  } else {
+    fatal("Failed to map memory (%s)", err.to_string());
+  }
+}
+
+void ZPhysicalMemoryBacking::advise_view(uintptr_t addr, size_t size, int advice) const {
+  if (madvise((void*)addr, size, advice) == -1) {
+    ZErrno err;
+    log_error(gc)("Failed to advise on memory (advice %d, %s)", advice, err.to_string());
+  }
+}
+
+void ZPhysicalMemoryBacking::pretouch_view(uintptr_t addr, size_t size) const {
+  const size_t page_size = ZLargePages::is_explicit() ? os::large_page_size() : os::vm_page_size();
+  os::pretouch_memory((void*)addr, (void*)(addr + size), page_size);
+}
+
+void ZPhysicalMemoryBacking::map_view(const ZPhysicalMemory& pmem, uintptr_t addr, bool pretouch) const {
+  const size_t nsegments = pmem.nsegments();
+  size_t size = 0;
+
+  // Map segments
+  for (size_t i = 0; i < nsegments; i++) {
+    const ZPhysicalMemorySegment& segment = pmem.segment(i);
+    const uintptr_t segment_addr = addr + size;
+    const void* const res = mmap((void*)segment_addr, segment.size(), PROT_READ|PROT_WRITE, MAP_FIXED|MAP_SHARED, _file.fd(), segment.start());
+    if (res == MAP_FAILED) {
+      ZErrno err;
+      map_failed(err);
+    }
+
+    size += segment.size();
+  }
+
+  // Advise on use of transparent huge pages before touching it
+  if (ZLargePages::is_transparent()) {
+    advise_view(addr, size, MADV_HUGEPAGE);
+  }
+
+  // NUMA interleave memory before touching it
+  ZNUMA::memory_interleave(addr, size);
+
+  // Pre-touch memory
+  if (pretouch) {
+    pretouch_view(addr, size);
+  }
+}
+
+void ZPhysicalMemoryBacking::unmap_view(const ZPhysicalMemory& pmem, uintptr_t addr) const {
+  // Note that we must keep the address space reservation intact and just detach
+  // the backing memory. For this reason we map a new anonymous, non-accessible
+  // and non-reserved page over the mapping instead of actually unmapping.
+  const void* const res = mmap((void*)addr, pmem.size(), PROT_NONE, MAP_FIXED|MAP_ANONYMOUS|MAP_PRIVATE|MAP_NORESERVE, -1, 0);
+  if (res == MAP_FAILED) {
+    ZErrno err;
+    map_failed(err);
+  }
+}
+
+uintptr_t ZPhysicalMemoryBacking::nmt_address(uintptr_t offset) const {
+  // From an NMT point of view we treat the first heap view (marked0) as committed
+  return ZAddress::marked0(offset);
+}
+
+void ZPhysicalMemoryBacking::map(const ZPhysicalMemory& pmem, uintptr_t offset) const {
+  if (ZVerifyViews) {
+    // Map good view
+    map_view(pmem, ZAddress::good(offset), AlwaysPreTouch);
+  } else {
+    // Map all views
+    map_view(pmem, ZAddress::marked0(offset), AlwaysPreTouch);
+    map_view(pmem, ZAddress::marked1(offset), AlwaysPreTouch);
+    map_view(pmem, ZAddress::remapped(offset), AlwaysPreTouch);
+  }
+}
+
+void ZPhysicalMemoryBacking::unmap(const ZPhysicalMemory& pmem, uintptr_t offset) const {
+  if (ZVerifyViews) {
+    // Unmap good view
+    unmap_view(pmem, ZAddress::good(offset));
+  } else {
+    // Unmap all views
+    unmap_view(pmem, ZAddress::marked0(offset));
+    unmap_view(pmem, ZAddress::marked1(offset));
+    unmap_view(pmem, ZAddress::remapped(offset));
+  }
+}
+
+void ZPhysicalMemoryBacking::debug_map(const ZPhysicalMemory& pmem, uintptr_t offset) const {
+  // Map good view
+  assert(ZVerifyViews, "Should be enabled");
+  map_view(pmem, ZAddress::good(offset), false /* pretouch */);
+}
+
+void ZPhysicalMemoryBacking::debug_unmap(const ZPhysicalMemory& pmem, uintptr_t offset) const {
+  // Unmap good view
+  assert(ZVerifyViews, "Should be enabled");
+  unmap_view(pmem, ZAddress::good(offset));
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/os_cpu/linux_aarch64/gc/z/zPhysicalMemoryBacking_linux_aarch64.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2015, 2019, 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.
+ */
+
+#ifndef OS_CPU_LINUX_AARCH64_GC_Z_ZPHYSICALMEMORYBACKING_LINUX_AARCH64_HPP
+#define OS_CPU_LINUX_AARCH64_GC_Z_ZPHYSICALMEMORYBACKING_LINUX_AARCH64_HPP
+
+#include "gc/z/zBackingFile_linux_aarch64.hpp"
+#include "gc/z/zMemory.hpp"
+
+class ZErrno;
+class ZPhysicalMemory;
+
+class ZPhysicalMemoryBacking {
+private:
+  ZBackingFile   _file;
+  ZMemoryManager _committed;
+  ZMemoryManager _uncommitted;
+
+  void warn_available_space(size_t max) const;
+  void warn_max_map_count(size_t max) const;
+
+  void map_failed(ZErrno err) const;
+
+  void advise_view(uintptr_t addr, size_t size, int advice) const;
+  void pretouch_view(uintptr_t addr, size_t size) const;
+  void map_view(const ZPhysicalMemory& pmem, uintptr_t addr, bool pretouch) const;
+  void unmap_view(const ZPhysicalMemory& pmem, uintptr_t addr) const;
+
+public:
+  bool is_initialized() const;
+
+  void warn_commit_limits(size_t max) const;
+  bool supports_uncommit();
+
+  size_t commit(size_t size);
+  size_t uncommit(size_t size);
+
+  ZPhysicalMemory alloc(size_t size);
+  void free(const ZPhysicalMemory& pmem);
+
+  uintptr_t nmt_address(uintptr_t offset) const;
+
+  void map(const ZPhysicalMemory& pmem, uintptr_t offset) const;
+  void unmap(const ZPhysicalMemory& pmem, uintptr_t offset) const;
+
+  void debug_map(const ZPhysicalMemory& pmem, uintptr_t offset) const;
+  void debug_unmap(const ZPhysicalMemory& pmem, uintptr_t offset) const;
+};
+
+#endif // OS_CPU_LINUX_AARCH64_GC_Z_ZPHYSICALMEMORYBACKING_LINUX_AARCH64_HPP
--- a/src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -83,19 +83,13 @@
 #define REG_SP REG_RSP
 #define REG_PC REG_RIP
 #define REG_FP REG_RBP
-#define SPELL_REG_SP "rsp"
-#define SPELL_REG_FP "rbp"
 #else
 #define REG_FP 29
 #define REG_LR 30
-
-#define SPELL_REG_SP "sp"
-#define SPELL_REG_FP "x29"
 #endif
 
-address os::current_stack_pointer() {
-  register void *esp __asm__ (SPELL_REG_SP);
-  return (address) esp;
+NOINLINE address os::current_stack_pointer() {
+  return (address)__builtin_frame_address(0);
 }
 
 char* os::non_memory_address_word() {
@@ -230,23 +224,8 @@
 #endif
 }
 
-intptr_t* _get_previous_fp() {
-  register intptr_t **fp __asm__ (SPELL_REG_FP);
-
-  // fp is for this frame (_get_previous_fp). We want the fp for the
-  // caller of os::current_frame*(), so go up two frames. However, for
-  // optimized builds, _get_previous_fp() will be inlined, so only go
-  // up 1 frame in that case.
-  #ifdef _NMT_NOINLINE_
-    return **(intptr_t***)fp;
-  #else
-    return *fp;
-  #endif
-}
-
-
-frame os::current_frame() {
-  intptr_t* fp = _get_previous_fp();
+NOINLINE frame os::current_frame() {
+  intptr_t *fp = *(intptr_t **)__builtin_frame_address(0);
   frame myframe((intptr_t*)os::current_stack_pointer(),
                 (intptr_t*)fp,
                 CAST_FROM_FN_PTR(address, os::current_frame));
@@ -259,12 +238,6 @@
 }
 
 // Utility functions
-
-// From IA32 System Programming Guide
-enum {
-  trap_page_fault = 0xE
-};
-
 #ifdef BUILTIN_SIM
 extern "C" void Fetch32PFI () ;
 extern "C" void Fetch32Resume () ;
@@ -667,42 +640,42 @@
     return 0;
   }
 
-  void _Copy_conjoint_jshorts_atomic(jshort* from, jshort* to, size_t count) {
+  void _Copy_conjoint_jshorts_atomic(const jshort* from, jshort* to, size_t count) {
     if (from > to) {
-      jshort *end = from + count;
+      const jshort *end = from + count;
       while (from < end)
         *(to++) = *(from++);
     }
     else if (from < to) {
-      jshort *end = from;
+      const jshort *end = from;
       from += count - 1;
       to   += count - 1;
       while (from >= end)
         *(to--) = *(from--);
     }
   }
-  void _Copy_conjoint_jints_atomic(jint* from, jint* to, size_t count) {
+  void _Copy_conjoint_jints_atomic(const jint* from, jint* to, size_t count) {
     if (from > to) {
-      jint *end = from + count;
+      const jint *end = from + count;
       while (from < end)
         *(to++) = *(from++);
     }
     else if (from < to) {
-      jint *end = from;
+      const jint *end = from;
       from += count - 1;
       to   += count - 1;
       while (from >= end)
         *(to--) = *(from--);
     }
   }
-  void _Copy_conjoint_jlongs_atomic(jlong* from, jlong* to, size_t count) {
+  void _Copy_conjoint_jlongs_atomic(const jlong* from, jlong* to, size_t count) {
     if (from > to) {
-      jlong *end = from + count;
+      const jlong *end = from + count;
       while (from < end)
         os::atomic_copy64(from++, to++);
     }
     else if (from < to) {
-      jlong *end = from;
+      const jlong *end = from;
       from += count - 1;
       to   += count - 1;
       while (from >= end)
@@ -710,22 +683,22 @@
     }
   }
 
-  void _Copy_arrayof_conjoint_bytes(HeapWord* from,
+  void _Copy_arrayof_conjoint_bytes(const HeapWord* from,
                                     HeapWord* to,
                                     size_t    count) {
     memmove(to, from, count);
   }
-  void _Copy_arrayof_conjoint_jshorts(HeapWord* from,
+  void _Copy_arrayof_conjoint_jshorts(const HeapWord* from,
                                       HeapWord* to,
                                       size_t    count) {
     memmove(to, from, count * 2);
   }
-  void _Copy_arrayof_conjoint_jints(HeapWord* from,
+  void _Copy_arrayof_conjoint_jints(const HeapWord* from,
                                     HeapWord* to,
                                     size_t    count) {
     memmove(to, from, count * 4);
   }
-  void _Copy_arrayof_conjoint_jlongs(HeapWord* from,
+  void _Copy_arrayof_conjoint_jlongs(const HeapWord* from,
                                      HeapWord* to,
                                      size_t    count) {
     memmove(to, from, count * 8);
--- a/src/hotspot/share/asm/assembler.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/asm/assembler.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -313,25 +313,22 @@
 bool MacroAssembler::uses_implicit_null_check(void* address) {
   // Exception handler checks the nmethod's implicit null checks table
   // only when this method returns false.
-  intptr_t int_address = reinterpret_cast<intptr_t>(address);
-  intptr_t cell_header_size = Universe::heap()->cell_header_size();
-  size_t region_size = os::vm_page_size() + cell_header_size;
+  uintptr_t addr = reinterpret_cast<uintptr_t>(address);
+  uintptr_t page_size = (uintptr_t)os::vm_page_size();
 #ifdef _LP64
   if (UseCompressedOops && CompressedOops::base() != NULL) {
     // A SEGV can legitimately happen in C2 code at address
     // (heap_base + offset) if  Matcher::narrow_oop_use_complex_address
     // is configured to allow narrow oops field loads to be implicitly
     // null checked
-    intptr_t start = ((intptr_t)CompressedOops::base()) - cell_header_size;
-    intptr_t end = start + region_size;
-    if (int_address >= start && int_address < end) {
+    uintptr_t start = (uintptr_t)CompressedOops::base();
+    uintptr_t end = start + page_size;
+    if (addr >= start && addr < end) {
       return true;
     }
   }
 #endif
-  intptr_t start = -cell_header_size;
-  intptr_t end = start + region_size;
-  return int_address >= start && int_address < end;
+  return addr < page_size;
 }
 
 bool MacroAssembler::needs_explicit_null_check(intptr_t offset) {
@@ -341,12 +338,8 @@
   // with -1. Another example is GraphBuilder::access_field(...) which uses -1 as placeholder
   // for offsets to be patched in later. The -1 there means the offset is not yet known
   // and may lie outside of the zero-trapping page, and thus we need to ensure we're forcing
-  // an explicit null check for -1, even if it may otherwise be in the range
-  // [-cell_header_size, os::vm_page_size).
-  // TODO: Find and replace all relevant uses of -1 with a reasonably named constant.
-  if (offset == -1) return true;
+  // an explicit null check for -1.
 
-  // Check if offset is outside of [-cell_header_size, os::vm_page_size)
-  return offset < -Universe::heap()->cell_header_size() ||
-         offset >= os::vm_page_size();
+  // Check if offset is outside of [0, os::vm_page_size()]
+  return offset < 0 || offset >= os::vm_page_size();
 }
--- a/src/hotspot/share/classfile/classFileParser.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/classfile/classFileParser.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -125,6 +125,8 @@
 
 #define JAVA_13_VERSION                   57
 
+#define JAVA_14_VERSION                   58
+
 void ClassFileParser::set_class_bad_constant_seen(short bad_constant) {
   assert((bad_constant == JVM_CONSTANT_Module ||
           bad_constant == JVM_CONSTANT_Package) && _major_version >= JAVA_9_VERSION,
@@ -4956,6 +4958,7 @@
 bool ClassFileParser::verify_unqualified_name(const char* name,
                                               unsigned int length,
                                               int type) {
+  if (length == 0) return false;  // Must have at least one char.
   for (const char* p = name; p != name + length; p++) {
     switch(*p) {
       case '.':
@@ -5105,7 +5108,7 @@
           int newlen = c - (char*) signature;
           bool legal = verify_unqualified_name(signature, newlen, LegalClass);
           if (!legal) {
-            classfile_parse_error("Class name contains illegal character "
+            classfile_parse_error("Class name is empty or contains illegal character "
                                   "in descriptor in class file %s",
                                   CHECK_0);
             return NULL;
--- a/src/hotspot/share/classfile/systemDictionary.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/classfile/systemDictionary.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -2861,14 +2861,17 @@
 }
 
 TableStatistics SystemDictionary::placeholders_statistics() {
+  MutexLocker ml(SystemDictionary_lock);
   return placeholders()->statistics_calculate();
 }
 
 TableStatistics SystemDictionary::loader_constraints_statistics() {
+  MutexLocker ml(SystemDictionary_lock);
   return constraints()->statistics_calculate();
 }
 
 TableStatistics SystemDictionary::protection_domain_cache_statistics() {
+  MutexLocker ml(SystemDictionary_lock);
   return pd_cache_table()->statistics_calculate();
 }
 
--- a/src/hotspot/share/classfile/verifier.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/classfile/verifier.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -165,22 +165,28 @@
                            PerfClassTraceTime::CLASS_VERIFY);
 
   // If the class should be verified, first see if we can use the split
-  // verifier.  If not, or if verification fails and FailOverToOldVerifier
-  // is set, then call the inference verifier.
+  // verifier.  If not, or if verification fails and can failover, then
+  // call the inference verifier.
   Symbol* exception_name = NULL;
   const size_t message_buffer_len = klass->name()->utf8_length() + 1024;
   char* message_buffer = NULL;
   char* exception_message = NULL;
 
-  bool can_failover = FailOverToOldVerifier &&
-     klass->major_version() < NOFAILOVER_MAJOR_VERSION;
-
   log_info(class, init)("Start class verification for: %s", klass->external_name());
   if (klass->major_version() >= STACKMAP_ATTRIBUTE_MAJOR_VERSION) {
     ClassVerifier split_verifier(klass, THREAD);
     split_verifier.verify_class(THREAD);
     exception_name = split_verifier.result();
-    if (can_failover && !HAS_PENDING_EXCEPTION &&
+
+    // If DumpSharedSpaces is set then don't fall back to the old verifier on
+    // verification failure. If a class fails verification with the split verifier,
+    // it might fail the CDS runtime verifier constraint check. In that case, we
+    // don't want to share the class. We only archive classes that pass the split
+    // verifier.
+    bool can_failover = !DumpSharedSpaces &&
+      klass->major_version() < NOFAILOVER_MAJOR_VERSION;
+
+    if (can_failover && !HAS_PENDING_EXCEPTION &&  // Split verifier doesn't set PENDING_EXCEPTION for failure
         (exception_name == vmSymbols::java_lang_VerifyError() ||
          exception_name == vmSymbols::java_lang_ClassFormatError())) {
       log_info(verification)("Fail over class verification to old verifier for: %s", klass->external_name());
--- a/src/hotspot/share/code/nmethod.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/code/nmethod.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -1473,6 +1473,13 @@
   return NativeAccess<AS_NO_KEEPALIVE>::oop_load(oop_addr_at(index));
 }
 
+oop nmethod::oop_at_phantom(int index) const {
+  if (index == 0) {
+    return NULL;
+  }
+  return NativeAccess<ON_PHANTOM_OOP_REF>::oop_load(oop_addr_at(index));
+}
+
 //
 // Notify all classes this nmethod is dependent on that it is no
 // longer dependent. This should only be called in two situations.
--- a/src/hotspot/share/code/nmethod.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/code/nmethod.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -392,6 +392,7 @@
   // Support for oops in scopes and relocs:
   // Note: index 0 is reserved for null.
   oop   oop_at(int index) const;
+  oop   oop_at_phantom(int index) const; // phantom reference
   oop*  oop_addr_at(int index) const {  // for GC
     // relocation indexes are biased by 1 (because 0 is reserved)
     assert(index > 0 && index <= oops_count(), "must be a valid non-zero index");
--- a/src/hotspot/share/gc/g1/g1BlockOffsetTable.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1BlockOffsetTable.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -391,8 +391,6 @@
 #endif // !PRODUCT
 
 HeapWord* G1BlockOffsetTablePart::initialize_threshold_raw() {
-  assert(!G1CollectedHeap::heap()->is_in_reserved(_bot->_offset_array),
-         "just checking");
   _next_offset_index = _bot->index_for_raw(_space->bottom());
   _next_offset_index++;
   _next_offset_threshold =
@@ -401,8 +399,6 @@
 }
 
 void G1BlockOffsetTablePart::zero_bottom_entry_raw() {
-  assert(!G1CollectedHeap::heap()->is_in_reserved(_bot->_offset_array),
-         "just checking");
   size_t bottom_index = _bot->index_for_raw(_space->bottom());
   assert(_bot->address_for_index_raw(bottom_index) == _space->bottom(),
          "Precondition of call");
@@ -410,8 +406,6 @@
 }
 
 HeapWord* G1BlockOffsetTablePart::initialize_threshold() {
-  assert(!G1CollectedHeap::heap()->is_in_reserved(_bot->_offset_array),
-         "just checking");
   _next_offset_index = _bot->index_for(_space->bottom());
   _next_offset_index++;
   _next_offset_threshold =
--- a/src/hotspot/share/gc/g1/g1BlockOffsetTable.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1BlockOffsetTable.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -52,7 +52,7 @@
 
   // Array for keeping offsets for retrieving object start fast given an
   // address.
-  u_char* _offset_array;          // byte array keeping backwards offsets
+  volatile u_char* _offset_array;  // byte array keeping backwards offsets
 
   void check_offset(size_t offset, const char* msg) const {
     assert(offset <= BOTConstants::N_words,
@@ -64,10 +64,7 @@
   // For performance these have to devolve to array accesses in product builds.
   inline u_char offset_array(size_t index) const;
 
-  void set_offset_array_raw(size_t index, u_char offset) {
-    _offset_array[index] = offset;
-  }
-
+  inline void set_offset_array_raw(size_t index, u_char offset);
   inline void set_offset_array(size_t index, u_char offset);
 
   inline void set_offset_array(size_t index, HeapWord* high, HeapWord* low);
--- a/src/hotspot/share/gc/g1/g1BlockOffsetTable.inline.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1BlockOffsetTable.inline.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -29,6 +29,7 @@
 #include "gc/g1/heapRegion.hpp"
 #include "gc/shared/memset_with_concurrent_readers.hpp"
 #include "gc/shared/space.hpp"
+#include "runtime/atomic.hpp"
 
 inline HeapWord* G1BlockOffsetTablePart::block_start(const void* addr) {
   if (addr >= _space->bottom() && addr < _space->end()) {
@@ -51,7 +52,11 @@
 
 u_char G1BlockOffsetTable::offset_array(size_t index) const {
   check_index(index, "index out of range");
-  return _offset_array[index];
+  return Atomic::load(&_offset_array[index]);
+}
+
+void G1BlockOffsetTable::set_offset_array_raw(size_t index, u_char offset) {
+  Atomic::store(offset, &_offset_array[index]);
 }
 
 void G1BlockOffsetTable::set_offset_array(size_t index, u_char offset) {
@@ -71,7 +76,8 @@
   check_index(right, "right index out of range");
   assert(left <= right, "indexes out of order");
   size_t num_cards = right - left + 1;
-  memset_with_concurrent_readers(&_offset_array[left], offset, num_cards);
+  memset_with_concurrent_readers
+    (const_cast<u_char*> (&_offset_array[left]), offset, num_cards);
 }
 
 // Variant of index_for that does not check the index for validity.
--- a/src/hotspot/share/gc/g1/g1CollectedHeap.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1CollectedHeap.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -2780,6 +2780,23 @@
   cl.flush_rem_set_entries();
 }
 
+#ifndef PRODUCT
+void G1CollectedHeap::verify_region_attr_remset_update() {
+  class VerifyRegionAttrRemSet : public HeapRegionClosure {
+  public:
+    virtual bool do_heap_region(HeapRegion* r) {
+      G1CollectedHeap* g1h = G1CollectedHeap::heap();
+      bool const needs_remset_update = g1h->region_attr(r->bottom()).needs_remset_update();
+      assert(r->rem_set()->is_tracked() == needs_remset_update,
+             "Region %u remset tracking status (%s) different to region attribute (%s)",
+             r->hrm_index(), BOOL_TO_STR(r->rem_set()->is_tracked()), BOOL_TO_STR(needs_remset_update));
+      return false;
+    }
+  } cl;
+  heap_region_iterate(&cl);
+}
+#endif
+
 class VerifyRegionRemSetClosure : public HeapRegionClosure {
   public:
     bool do_heap_region(HeapRegion* hr) {
@@ -3059,6 +3076,7 @@
 
         // Actually do the work...
         evacuate_initial_collection_set(&per_thread_states);
+
         if (_collection_set.optional_region_length() != 0) {
           evacuate_optional_collection_set(&per_thread_states);
         }
--- a/src/hotspot/share/gc/g1/g1CollectedHeap.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1CollectedHeap.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -593,6 +593,10 @@
     _region_attr.clear();
   }
 
+  // Verify that the G1RegionAttr remset tracking corresponds to actual remset tracking
+  // for all regions.
+  void verify_region_attr_remset_update() PRODUCT_RETURN;
+
   bool is_user_requested_concurrent_full_gc(GCCause::Cause cause);
 
   // This is called at the start of either a concurrent cycle or a Full
--- a/src/hotspot/share/gc/g1/g1CollectionSet.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1CollectionSet.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -519,6 +519,9 @@
   _num_optional_regions -= num_selected_regions;
 
   stop_incremental_building();
+
+  _g1h->verify_region_attr_remset_update();
+
   return num_selected_regions > 0;
 }
 
@@ -526,10 +529,15 @@
   for (uint i = 0; i < _num_optional_regions; i++) {
     HeapRegion* r = candidates()->at(candidates()->cur_idx() + i);
     pss->record_unused_optional_region(r);
+    // Clear collection set marker and make sure that the remembered set information
+    // is correct as we still need it later.
     _g1h->clear_region_attr(r);
+    _g1h->register_region_with_region_attr(r);
     r->clear_index_in_opt_cset();
   }
   free_optional_regions();
+
+  _g1h->verify_region_attr_remset_update();
 }
 
 #ifdef ASSERT
--- a/src/hotspot/share/gc/shared/c2/barrierSetC2.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shared/c2/barrierSetC2.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -308,7 +308,6 @@
   virtual bool escape_add_to_con_graph(ConnectionGraph* conn_graph, PhaseGVN* gvn, Unique_Node_List* delayed_worklist, Node* n, uint opcode) const { return false; }
   virtual bool escape_add_final_edges(ConnectionGraph* conn_graph, PhaseGVN* gvn, Node* n, uint opcode) const { return false; }
   virtual bool escape_has_out_with_unsafe_object(Node* n) const { return false; }
-  virtual bool escape_is_barrier_node(Node* n) const { return false; }
 
   virtual bool matcher_find_shared_visit(Matcher* matcher, Matcher::MStack& mstack, Node* n, uint opcode, bool& mem_op, int& mem_addr_idx) const { return false; };
   virtual bool matcher_find_shared_post_visit(Matcher* matcher, Node* n, uint opcode) const { return false; };
--- a/src/hotspot/share/gc/shared/collectedHeap.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shared/collectedHeap.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -534,11 +534,6 @@
 
   virtual size_t obj_size(oop obj) const;
 
-  // Cells are memory slices allocated by the allocator. Objects are initialized
-  // in cells. The cell itself may have a header, found at a negative offset of
-  // oops. Usually, the size of the cell header is 0, but it may be larger.
-  virtual ptrdiff_t cell_header_size() const { return 0; }
-
   // Non product verification and debugging.
 #ifndef PRODUCT
   // Support for PromotionFailureALot.  Return true if it's time to cause a
--- a/src/hotspot/share/gc/shared/gcLocker.inline.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shared/gcLocker.inline.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -26,7 +26,7 @@
 #define SHARE_GC_SHARED_GCLOCKER_INLINE_HPP
 
 #include "gc/shared/gcLocker.hpp"
-#include "runtime/thread.hpp"
+#include "runtime/thread.inline.hpp"
 
 void GCLocker::lock_critical(JavaThread* thread) {
   if (!thread->in_critical()) {
--- a/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -1194,10 +1194,6 @@
 
 }
 
-bool ShenandoahBarrierSetC2::escape_is_barrier_node(Node* n) const {
-  return n->Opcode() == Op_ShenandoahLoadReferenceBarrier;
-}
-
 bool ShenandoahBarrierSetC2::matcher_find_shared_post_visit(Matcher* matcher, Node* n, uint opcode) const {
   switch (opcode) {
     case Op_ShenandoahCompareAndExchangeP:
--- a/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -144,7 +144,6 @@
   virtual bool escape_add_to_con_graph(ConnectionGraph* conn_graph, PhaseGVN* gvn, Unique_Node_List* delayed_worklist, Node* n, uint opcode) const;
   virtual bool escape_add_final_edges(ConnectionGraph* conn_graph, PhaseGVN* gvn, Node* n, uint opcode) const;
   virtual bool escape_has_out_with_unsafe_object(Node* n) const;
-  virtual bool escape_is_barrier_node(Node* n) const;
 
   virtual bool matcher_find_shared_post_visit(Matcher* matcher, Node* n, uint opcode) const;
   virtual bool matcher_is_store_load_barrier(Node* x, uint xop) const;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/share/gc/shenandoah/shenandoahConcurrentRoots.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2019, Red Hat, Inc. All rights reserved.
+ *
+ * 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.
+ *
+ */
+
+#include "precompiled.hpp"
+
+#include "gc/shenandoah/shenandoahConcurrentRoots.hpp"
+#include "gc/shenandoah/shenandoahHeap.inline.hpp"
+
+bool ShenandoahConcurrentRoots::can_do_concurrent_roots() {
+  // Don't support traversal GC at this moment
+  return !ShenandoahHeap::heap()->is_concurrent_traversal_in_progress();
+}
+
+bool ShenandoahConcurrentRoots::should_do_concurrent_roots() {
+  ShenandoahHeap* const heap = ShenandoahHeap::heap();
+  bool stw_gc_in_progress = heap->is_full_gc_in_progress() ||
+                            heap->is_degenerated_gc_in_progress();
+  return can_do_concurrent_roots() &&
+         !stw_gc_in_progress;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/hotspot/share/gc/shenandoah/shenandoahConcurrentRoots.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2019, Red Hat, Inc. All rights reserved.
+ *
+ * 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.
+ *
+ */
+
+#ifndef SHARE_GC_SHENANDOAH_SHENANDOAHCONCURRENTROOTS_HPP
+#define SHARE_GC_SHENANDOAH_SHENANDOAHCONCURRENTROOTS_HPP
+
+#include "memory/allocation.hpp"
+
+class ShenandoahConcurrentRoots : public AllStatic {
+public:
+  // Can GC settings allow concurrent root processing
+  static bool can_do_concurrent_roots();
+  // If current GC cycle can process roots concurrently
+  static bool should_do_concurrent_roots();
+};
+
+
+#endif // SHARE_GC_SHENANDOAH_SHENANDOAHCONCURRENTROOTS_HPP
--- a/src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -377,6 +377,9 @@
   // Complete marking under STW, and start evacuation
   heap->vmop_entry_final_mark();
 
+  // Evacuate concurrent roots
+  heap->entry_roots();
+
   // Final mark might have reclaimed some immediate garbage, kick cleanup to reclaim
   // the space. This would be the last action if there is nothing to evacuate.
   heap->entry_cleanup();
--- a/src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp	Fri Jun 21 09:05:45 2019 -0700
@@ -38,6 +38,7 @@
 #include "gc/shenandoah/shenandoahCollectionSet.hpp"
 #include "gc/shenandoah/shenandoahCollectorPolicy.hpp"
 #include "gc/shenandoah/shenandoahConcurrentMark.inline.hpp"
+#include "gc/shenandoah/shenandoahConcurrentRoots.hpp"
 #include "gc/shenandoah/shenandoahControlThread.hpp"
 #include "gc/shenandoah/shenandoahFreeSet.hpp"
 #include "gc/shenandoah/shenandoahPhaseTimings.hpp"
@@ -1071,9 +1072,11 @@
   DerivedPointerTable::clear();
 #endif
   assert(ShenandoahSafepoint::is_at_shenandoah_safepoint(), "Only iterate roots while world is stopped");
-
   {
-    ShenandoahRootEvacuator rp(workers()->active_workers(), ShenandoahPhaseTimings::init_evac);
+    // Include concurrent roots if current cycle can not process those roots concurrently
+    ShenandoahRootEvacuator rp(workers()->active_workers(),
+                               ShenandoahPhaseTimings::init_evac,
+                               !ShenandoahConcurrentRoots::should_do_concurrent_roots());
     ShenandoahEvacuateUpdateRootsTask roots_task(&rp);
     workers()->run_task(&roots_task);
   }
@@ -1276,10 +1279,15 @@
 
   Stack<oop,mtGC> oop_stack;
 
-  // First, we process all GC roots. This populates the work stack with initial objects.
-  ShenandoahAllRootScanner rp(1, ShenandoahPhaseTimings::_num_phases);
+  // First, we process GC roots according to current GC cycle. This populates the work stack with initial objects.
+  ShenandoahHeapIterationRootScanner rp;
   ObjectIterateScanRootClosure oops(&_aux_bit_map, &oop_stack);
-  rp.roots_do_unchecked(&oops);
+
+  if (unload_classes()) {
+    rp.strong_roots_do(&oops);
+  } else {
+    rp.roots_do(&oops);
+  }
 
   // Work through the oop stack to traverse heap.
   while (! oop_stack.is_empty()) {
@@ -1512,7 +1520,11 @@
       }
 
       if (ShenandoahVerify) {
-        verifier()->verify_roots_no_forwarded();
+        if (ShenandoahConcurrentRoots::should_do_concurrent_roots()) {
+          verifier()->verify_roots_no_forwarded_except(ShenandoahRootVerifier::JNIHandleRoots);
+        } else {
+          verifier()->verify_roots_no_forwarded();
+        }
         verifier()->verify_during_evacuation();
       }
     } else {
@@ -1573,6 +1585,30 @@
   free_set()->recycle_trash();
 }
 
+class ShenandoahConcurrentRootsEvacUpdateTask : public AbstractGangTask {
+private:
+  ShenandoahJNIHandleRoots<true /*concurrent*/> _jni_roots;
+
+public:
+  ShenandoahConcurrentRootsEvacUpdateTask() :
+    AbstractGangTask("Shenandoah Evacuate/Update Concurrent Roots Task") {
+  }
+
+  void work(uint worker_id) {
+    ShenandoahEvacOOMScope oom;
+    ShenandoahEvacuateUpdateRootsClosure cl;
+    _jni_roots.oops_do<ShenandoahEvacuateUpdateRootsClosure>(&cl);
+  }
+};
+
+void ShenandoahHeap::op_roots() {
+  if (is_evacuation_in_progress() &&
+      ShenandoahConcurrentRoots::should_do_concurrent_roots()) {
+    ShenandoahConcurrentRootsEvacUpdateTask task;
+    workers()->run_task(&task);
+  }
+}
+
 void ShenandoahHeap::op_reset() {
   reset_mark_bitmap();
 }
@@ -1694,7 +1730,28 @@
         // it would be a simple check, which is supposed to be fast. This is also
         // safe to do even without degeneration, as CSet iterator is at beginning
         // in preparation for evacuation anyway.
-        collection_set()->clear_current_index();
+        //
+        // Before doing that, we need to make sure we never had any cset-pinned
+        // regions. This may happen if allocation failure happened when evacuating
+        // the about-to-be-pinned object, oom-evac protocol left the object in
+        // the collection set, and then the pin reached the cset region. If we continue
+        // the cycle here, we would trash the cset and alive objects in it. To avoid
+        // it, we fail degeneration right away and slide into Full GC to recover.
+
+        {
+          collection_set()->clear_current_index();
+
+          ShenandoahHeapRegion* r;
+          while ((r = collection_set()->next()) != NULL) {
+            if (r->is_pinned()) {
+              cancel_gc(GCCause::_shenandoah_upgrade_to_full_gc);
+              op_degenerated_fail();
+              return;
+            }
+          }
+
+          collection_set()->clear_current_index();
+        }
 
         op_stw_evac();
         if (cancelled_gc()) {
@@ -2152,6 +2209,11 @@
     concurrent_mark()->update_thread_roots(ShenandoahPhaseTimings::final_update_refs_roots);
   }
 
+  // Has to be done before cset is clear
+  if (ShenandoahVerify) {
+    verifier()->verify_roots_in_to_space();
+  }
+
   ShenandoahGCPhase final_update_refs(ShenandoahPhaseTimings::final_update_refs_recycle);
 
   trash_cset_regions();
@@ -2159,7 +2221,6 @@
   set_update_refs_in_progress(false);
 
   if (ShenandoahVerify) {
-    verifier()->verify_roots_no_forwarded();
     verifier()->verify_after_updaterefs();
   }
 
@@ -2529,6 +2590,22 @@
   try_inject_alloc_failure();
   op_updaterefs();
 }
+
+void ShenandoahHeap::entry_roots() {
+  ShenandoahGCPhase phase(ShenandoahPhaseTimings::conc_roots);
+
+  static const char* msg = "Concurrent roots processing";
+  GCTraceTime(Info, gc) time(msg, NULL, GCCause::_no_gc, true);
+  EventMark em("%s", msg);
+
+  ShenandoahWorkerScope scope(workers(),
+                              ShenandoahWorkerPolicy::calc_workers_for_conc_root_processing(),
+                              "concurrent root processing");
+
+  try_inject_alloc_failure();
+  op_roots();
+}
+
 void ShenandoahHeap::entry_cleanup() {
   ShenandoahGCPhase phase(ShenandoahPhaseTimings::conc_cleanup);
 
--- a/src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -391,6 +391,7 @@
   void entry_reset();
   void entry_mark();
   void entry_preclean();
+  void entry_roots();
   void entry_cleanup();
   void entry_evac();
   void entry_updaterefs();
@@ -414,6 +415,7 @@
   void op_reset();
   void op_mark();
   void op_preclean();
+  void op_roots();
   void op_cleanup();
   void op_conc_evac();
   void op_stw_evac();
--- a/src/hotspot/share/gc/shenandoah/shenandoahPhaseTimings.hpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenandoah/shenandoahPhaseTimings.hpp	Fri Jun 21 09:05:45 2019 -0700
@@ -306,6 +306,7 @@
   f(conc_mark,                                       "Concurrent Marking")              \
   f(conc_termination,                                "  Termination")                   \
   f(conc_preclean,                                   "Concurrent Precleaning")          \
+  f(conc_roots,                                      "Concurrent Roots")                \
   f(conc_evac,                                       "Concurrent Evacuation")           \
   f(conc_update_refs,                                "Concurrent Update Refs")          \
   f(conc_cleanup,                                    "Concurrent Cleanup")              \
--- a/src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp	Tue Jun 18 21:40:50 2019 -0700
+++ b/src/hotspot/share/gc/shenan